aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksander Morgado <aleksander@aleksander.es>2021-05-23 12:23:59 +0200
committerAleksander Morgado <aleksander@aleksander.es>2021-05-26 13:14:52 +0000
commiteb5ae16ac4f3f65d698bdc378ce903ed60952689 (patch)
tree371285dddcd89d7f655372bf86febf48a8b17ec5
parent728e6cd39810a75af4907e19fb2bd5ca6b211b00 (diff)
base-modem: don't fail if sync() isn't implemented
-rw-r--r--src/mm-base-modem.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/mm-base-modem.c b/src/mm-base-modem.c
index a2065a42..b981daeb 100644
--- a/src/mm-base-modem.c
+++ b/src/mm-base-modem.c
@@ -651,8 +651,13 @@ mm_base_modem_sync (MMBaseModem *self,
task = g_task_new (self, NULL, callback, user_data);
- g_assert (MM_BASE_MODEM_GET_CLASS (self)->sync != NULL);
- g_assert (MM_BASE_MODEM_GET_CLASS (self)->sync_finish != NULL);
+ if (!MM_BASE_MODEM_GET_CLASS (self)->sync ||
+ !MM_BASE_MODEM_GET_CLASS (self)->sync_finish) {
+ g_task_return_new_error (task, MM_CORE_ERROR, MM_CORE_ERROR_UNSUPPORTED,
+ "Suspend/resume quick synchronization unsupported");
+ g_object_unref (task);
+ return;
+ }
MM_BASE_MODEM_GET_CLASS (self)->sync (self,
(GAsyncReadyCallback) sync_ready,