diff options
author | Aleksander Morgado <aleksander@aleksander.es> | 2019-09-24 13:09:05 +0200 |
---|---|---|
committer | Aleksander Morgado <aleksander@aleksander.es> | 2019-10-17 08:31:46 +0000 |
commit | 6347a7d783d51ac1ff619bba90eed0675d583c9e (patch) | |
tree | 7648f7b880147294bbbefa1cf83057703189fac3 /src/mm-base-call.h | |
parent | eaf665475014878772cec24e042130ae207c7ef7 (diff) |
base-call: catch terminated errors before ATD replies
If we get one of the in-call termination errors before ATD replies OK,
we need to cancel the start() operation right away and return an
error to the caller.
Otherwise, the Call will be reported as "terminated" right away, but
the caller would not get an error back until 90s later:
$ sudo mmcli --call 0 --start
error: couldn't start the call: 'GDBus.Error:org.freedesktop.ModemManager1.Error.Serial.ResponseTimeout: Serial command timed out'
Diffstat (limited to 'src/mm-base-call.h')
-rw-r--r-- | src/mm-base-call.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/mm-base-call.h b/src/mm-base-call.h index 973bcafa..8d6944f5 100644 --- a/src/mm-base-call.h +++ b/src/mm-base-call.h @@ -54,6 +54,7 @@ struct _MMBaseCallClass { /* Start the call */ void (* start) (MMBaseCall *self, + GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); gboolean (* start_finish) (MMBaseCall *self, |