diff options
| author | Johan Hedberg <johan.hedberg@nokia.com> | 2009-01-08 15:26:44 +0200 | 
|---|---|---|
| committer | Johan Hedberg <johan.hedberg@nokia.com> | 2009-01-08 15:26:44 +0200 | 
| commit | 5ea0f5e65c4307aadb797851388f5f5a2583717c (patch) | |
| tree | edab13cc951f8b7a2e16cdb47c6460e4ba41aea2 | |
| parent | 2e258fc221e00fe5ceb0f57646d578db829e3b75 (diff) | |
Fix AT+CHLD=3 as well
AT+CHLD=3 should use the special Conference() D-Bus method instead of
Unhold().
| -rw-r--r-- | audio/telephony-maemo.c | 19 | 
1 files changed, 18 insertions, 1 deletions
| diff --git a/audio/telephony-maemo.c b/audio/telephony-maemo.c index 64e0e409..7daed665 100644 --- a/audio/telephony-maemo.c +++ b/audio/telephony-maemo.c @@ -408,6 +408,23 @@ static int swap_calls(void)  	return 0;  } +static int create_conference(void) +{ +	DBusMessage *msg; + +	msg = dbus_message_new_method_call(CSD_CALL_BUS_NAME, CSD_CALL_PATH, +						CSD_CALL_INTERFACE, +						"Conference"); +	if (!msg) { +		error("Unable to allocate new D-Bus message"); +		return -ENOMEM; +	} + +	g_dbus_send_message(connection, msg); + +	return 0; +} +  static int call_transfer(void)  {  	DBusMessage *msg; @@ -777,7 +794,7 @@ void telephony_call_hold_req(void *telephony_device, const char *cmd)  	case '3':  		call = find_call_with_status(CSD_CALL_STATUS_HOLD);  		if (call) -			err = unhold_call(call); +			create_conference();  		break;  	case '4':  		err = call_transfer(); | 
