diff options
-rw-r--r-- | src/voicecall.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/voicecall.c b/src/voicecall.c index 02ec484c..fea7a73e 100644 --- a/src/voicecall.c +++ b/src/voicecall.c @@ -296,6 +296,14 @@ static DBusMessage *voicecall_hangup(DBusConnection *conn, return NULL; } + if (num_calls == 1 && vc->driver->release_all_held && + call->status == CALL_STATUS_HELD) { + vc->pending = dbus_message_ref(msg); + vc->driver->release_all_held(vc, generic_callback, vc); + + return NULL; + } + if (vc->driver->release_specific == NULL) return __ofono_error_not_implemented(msg); |