From 1fc58d4749bdc3f01625ac0092ee93512a628ee2 Mon Sep 17 00:00:00 2001 From: Aleksander Morgado Date: Mon, 11 Sep 2023 22:37:46 +0000 Subject: [PATCH] broadband-modem: don't assert if no AT port in QMI modem enabling unsolicited messages 2023-09-11T20:23:49.294555Z mm_port_get_device: assertion 'self != NULL' failed 2023-09-11T20:23:49.294691Z [modem0] enabling messaging unsolicited events on primary port (null) 2023-09-11T20:23:49.294865Z [modem0] enabling parent messaging unsolicited events failed: Cannot run sequence: port not given --- src/mm-broadband-modem.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/mm-broadband-modem.c b/src/mm-broadband-modem.c index d3892456..01a73ba6 100644 --- a/src/mm-broadband-modem.c +++ b/src/mm-broadband-modem.c @@ -7412,6 +7412,15 @@ modem_messaging_enable_unsolicited_events (MMIfaceModemMessaging *self, task = g_task_new (self, NULL, callback, user_data); primary = mm_base_modem_peek_port_primary (MM_BASE_MODEM (self)); + /* Do nothing if the modem doesn't have any AT port (e.g. it could be + * a QMI modem trying to enable the parent unsolicited messages) */ + if (!primary) { + g_task_return_new_error (task, MM_CORE_ERROR, MM_CORE_ERROR_FAILED, + "No AT port to enable messaging unsolicited events"); + g_object_unref (task); + return; + } + /* Enable unsolicited events for primary port */ mm_obj_dbg (self, "enabling messaging unsolicited events on primary port %s", mm_port_get_device (MM_PORT (primary)));