aboutsummaryrefslogtreecommitdiff
path: root/plugins/mm-modem-huawei-cdma.c
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/mm-modem-huawei-cdma.c')
-rw-r--r--plugins/mm-modem-huawei-cdma.c19
1 files changed, 5 insertions, 14 deletions
diff --git a/plugins/mm-modem-huawei-cdma.c b/plugins/mm-modem-huawei-cdma.c
index b164e675..7200f061 100644
--- a/plugins/mm-modem-huawei-cdma.c
+++ b/plugins/mm-modem-huawei-cdma.c
@@ -239,23 +239,14 @@ query_registration_state (MMGenericCdma *cdma,
gpointer user_data)
{
MMCallbackInfo *info;
- MMAtSerialPort *primary, *secondary, *port;
-
- port = primary = mm_generic_cdma_get_at_port (cdma, MM_PORT_TYPE_PRIMARY);
- secondary = mm_generic_cdma_get_at_port (cdma, MM_PORT_TYPE_SECONDARY);
+ MMAtSerialPort *port;
info = mm_generic_cdma_query_reg_state_callback_info_new (cdma, callback, user_data);
- if (mm_port_get_connected (MM_PORT (primary))) {
- if (!secondary) {
- info->error = g_error_new_literal (MM_MODEM_ERROR, MM_MODEM_ERROR_CONNECTED,
- "Cannot get query registration state while connected");
- mm_callback_info_schedule (info);
- return;
- }
-
- /* Use secondary port if primary is connected */
- port = secondary;
+ port = mm_generic_cdma_get_best_at_port (cdma, &info->error);
+ if (!port) {
+ mm_callback_info_schedule (info);
+ return;
}
mm_at_serial_port_queue_command (port, "^SYSINFO", 3, sysinfo_done, info);