diff options
author | Jack Song <jinjian.song@fibocom.com> | 2022-05-07 16:20:08 +0800 |
---|---|---|
committer | Aleksander Morgado <aleksander@aleksander.es> | 2022-05-20 11:35:52 +0200 |
commit | 0c67d93eddd897eab7b8b4eee3fa244d83cde9ee (patch) | |
tree | a759e274392dacf0dfb0ce30f0925c44ed6d1888 | |
parent | 82b574a6e7917bd37eb9a3467bb628ce7271b04b (diff) |
mm-bearer-mbim: fix connect_set_ready always parse result for needing to check NwError on failure
Issue and bugfix suggestion by Aleksander Morgado.
Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/549
-rw-r--r-- | src/mm-bearer-mbim.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/mm-bearer-mbim.c b/src/mm-bearer-mbim.c index 4f5bba26..26769c9e 100644 --- a/src/mm-bearer-mbim.c +++ b/src/mm-bearer-mbim.c @@ -614,14 +614,15 @@ connect_set_ready (MbimDevice *device, ctx = g_task_get_task_data (task); response = mbim_device_command_finish (device, res, &error); - if (!response || - (!mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error) && - (error->code != MBIM_STATUS_ERROR_FAILURE))) { + if (!response) { g_task_return_error (task, error); g_object_unref (task); return; } + /* always parse, because on failure we also check the NwError */ + mbim_message_response_get_result (response, MBIM_MESSAGE_TYPE_COMMAND_DONE, &error); + if (mbim_device_check_ms_mbimex_version (device, 3, 0)) { if (!mbim_message_ms_basic_connect_v3_connect_response_parse ( response, |