aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksander Morgado <aleksander@aleksander.es>2019-10-31 15:14:27 +0100
committerAleksander Morgado <aleksander@aleksander.es>2019-10-31 15:14:27 +0100
commite0f0d62369d0998e5f587cc8e27a8bf5eed98626 (patch)
tree1882a9ec2e624be377c18c518bfcf3ffe99cbdba
parent5def58d32717de8b47990dbbf66e6fca3f076a8f (diff)
telit: fix crash if AT$GPSP=? is supported but no GPS data port
We would have been de-referencing a NULL GError.
-rw-r--r--plugins/telit/mm-broadband-modem-telit.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/plugins/telit/mm-broadband-modem-telit.c b/plugins/telit/mm-broadband-modem-telit.c
index 487e8260..da240ac4 100644
--- a/plugins/telit/mm-broadband-modem-telit.c
+++ b/plugins/telit/mm-broadband-modem-telit.c
@@ -342,14 +342,14 @@ gpsp_test_ready (MMIfaceModemLocation *self,
sources = GPOINTER_TO_UINT (g_task_get_task_data (task));
mm_base_modem_at_command_finish (MM_BASE_MODEM (self), res, &error);
- if (!error && mm_base_modem_get_port_gps (MM_BASE_MODEM (self)))
+ if (error) {
+ mm_dbg ("telit: GPS controller not supported: %s", error->message);
+ g_clear_error (&error);
+ } else if (mm_base_modem_get_port_gps (MM_BASE_MODEM (self)))
sources |= (MM_MODEM_LOCATION_SOURCE_GPS_NMEA |
MM_MODEM_LOCATION_SOURCE_GPS_RAW |
MM_MODEM_LOCATION_SOURCE_GPS_UNMANAGED);
- else
- mm_dbg ("telit: GPS controller not supported: %s", error->message);
- g_clear_error (&error);
g_task_return_int (task, sources);
g_object_unref (task);
}