Currently, +CIEV indicator after AT+CHLD=0 command for one active call, one held call, one incoming call scenario is incorrect. callheld=2 according to HFP 1.5 spec., p.70, means 'Call on hold, no active call'. Hence, value 2 cannot be provided in +CIEV if there is an active call. --- audio/telephony-maemo6.c | 10 +++++++--- 1 files changed, 7 insertions(+), 3 deletions(-) diff --git a/audio/telephony-maemo6.c b/audio/telephony-maemo6.c index 10967fb..dd75422 100644 --- a/audio/telephony-maemo6.c +++ b/audio/telephony-maemo6.c @@ -1354,12 +1354,16 @@ static void call_set_status(struct csd_call *call, dbus_uint32_t status) break; case CSD_CALL_STATUS_TERMINATED: if (call->on_hold && - !find_call_with_status(CSD_CALL_STATUS_HOLD)) + !find_call_with_status(CSD_CALL_STATUS_HOLD)) { telephony_update_indicator(maemo_indicators, "callheld", EV_CALLHELD_NONE); - else if (callheld == EV_CALLHELD_MULTIPLE && - find_call_with_status(CSD_CALL_STATUS_HOLD)) + return; + } + + if (callheld == EV_CALLHELD_MULTIPLE && + find_call_with_status(CSD_CALL_STATUS_HOLD) && + !find_call_with_status(CSD_CALL_STATUS_ACTIVE)) telephony_update_indicator(maemo_indicators, "callheld", EV_CALLHELD_ON_HOLD); -- 1.7.4.1 -- To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html