iface-modem-voice: report calls only if +CLCC was successful
The BroadMobi BM818 can time out with +CLCC calls. When this happens, active calls are terminated due to reporting an empty list. To fix this, we only report the call list if the +CLCC didn't result in an error.
This commit is contained in:
@@ -2408,12 +2408,12 @@ load_call_list_ready (MMIfaceModemVoice *self,
|
||||
if (!MM_IFACE_MODEM_VOICE_GET_INTERFACE (self)->load_call_list_finish (self, res, &call_info_list, &error)) {
|
||||
mm_warn ("couldn't load call list: %s", error->message);
|
||||
g_error_free (error);
|
||||
} else {
|
||||
/* Always report the list even if NULL (it would mean no ongoing calls) */
|
||||
mm_iface_modem_voice_report_all_calls (self, call_info_list);
|
||||
mm_3gpp_call_info_list_free (call_info_list);
|
||||
}
|
||||
|
||||
/* Always report the list even if NULL (it would mean no ongoing calls) */
|
||||
mm_iface_modem_voice_report_all_calls (self, call_info_list);
|
||||
mm_3gpp_call_info_list_free (call_info_list);
|
||||
|
||||
/* setup the polling again */
|
||||
g_assert (!ctx->polling_id);
|
||||
ctx->polling_id = g_timeout_add_seconds (CALL_LIST_POLLING_TIMEOUT_SECS,
|
||||
|
Reference in New Issue
Block a user