diff options
author | Aleksander Morgado <aleksander@aleksander.es> | 2020-05-15 15:09:33 +0200 |
---|---|---|
committer | Aleksander Morgado <aleksander@aleksander.es> | 2020-06-03 16:59:54 +0200 |
commit | c5bab9f514fc40bf6c37dee39f4cb2dbcd9c4891 (patch) | |
tree | d2b5b45cda6007a46829f72e1b853c8c670c74e7 | |
parent | 3211c742ffca5e8ef3c73f114cf3eff8ef3fac57 (diff) |
huawei: ignore NDISDUP disconnection errors
Running NDISDUP=1,0 on an already disconnected bearer/context will
report ERROR, so we can really ignore the result of the command,
because we're anyway going to get the correct bearer/context status
later on with the NDISSTATQRY checks.
(cherry picked from commit d8b70602c51b77356eb439d63c4cac311d867310)
-rw-r--r-- | plugins/huawei/mm-broadband-bearer-huawei.c | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/plugins/huawei/mm-broadband-bearer-huawei.c b/plugins/huawei/mm-broadband-bearer-huawei.c index 01a46c61..35819fe3 100644 --- a/plugins/huawei/mm-broadband-bearer-huawei.c +++ b/plugins/huawei/mm-broadband-bearer-huawei.c @@ -654,7 +654,6 @@ disconnect_ndisdup_ready (MMBaseModem *modem, { GTask *task; Disconnect3gppContext *ctx; - GError *error = NULL; task = self->priv->disconnect_pending; g_assert (task != NULL); @@ -664,13 +663,11 @@ disconnect_ndisdup_ready (MMBaseModem *modem, /* Balance refcount */ g_object_unref (self); - if (!mm_base_modem_at_command_full_finish (modem, res, &error)) { - /* Clear task */ - self->priv->disconnect_pending = NULL; - g_task_return_error (task, error); - g_object_unref (task); - return; - } + /* Running NDISDUP=1,0 on an already disconnected bearer/context will + * return ERROR! Ignore errors in the NDISDUP disconnection command, + * because we're anyway going to check the bearer/context status + * afterwards. */ + mm_base_modem_at_command_full_finish (modem, res, NULL); /* Go to next step */ ctx->step++; |