summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksander Morgado <aleksander@aleksander.es>2020-05-15 15:09:33 +0200
committerAleksander Morgado <aleksander@aleksander.es>2020-06-03 16:59:54 +0200
commitc5bab9f514fc40bf6c37dee39f4cb2dbcd9c4891 (patch)
treed2b5b45cda6007a46829f72e1b853c8c670c74e7
parent3211c742ffca5e8ef3c73f114cf3eff8ef3fac57 (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.c13
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++;