From 9a703cd378f35b6efe2f9afe1f7095d6297fbe1c Mon Sep 17 00:00:00 2001 From: Denis Kenzior Date: Thu, 12 Nov 2009 17:54:49 -0600 Subject: Use release_all_held to release a single held call --- src/voicecall.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/voicecall.c') 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); -- cgit v1.2.3