diff options
author | Dan Williams <dcbw@redhat.com> | 2010-01-19 11:53:45 -0800 |
---|---|---|
committer | Dan Williams <dcbw@redhat.com> | 2010-01-19 11:53:45 -0800 |
commit | 82eecfca923a3b4dec6c363e756516f6aaa47486 (patch) | |
tree | 90f7e826ddd28c827013cd5664c8b81ffe572051 | |
parent | 28eca600f7f1a0387a99c51d35179d81dc3fec59 (diff) |
sierra: prefer primary port for status
-rw-r--r-- | plugins/mm-modem-sierra-cdma.c | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/plugins/mm-modem-sierra-cdma.c b/plugins/mm-modem-sierra-cdma.c index eec2a83c..4f3140b7 100644 --- a/plugins/mm-modem-sierra-cdma.c +++ b/plugins/mm-modem-sierra-cdma.c @@ -294,22 +294,26 @@ query_registration_state (MMGenericCdma *cdma, { MMCallbackInfo *info; MMSerialPort *primary, *secondary; + MMSerialPort *port; - primary = mm_generic_cdma_get_port (cdma, MM_PORT_TYPE_PRIMARY); + port = primary = mm_generic_cdma_get_port (cdma, MM_PORT_TYPE_PRIMARY); secondary = mm_generic_cdma_get_port (cdma, MM_PORT_TYPE_SECONDARY); info = mm_generic_cdma_query_reg_state_callback_info_new (cdma, callback, user_data); - if (mm_port_get_connected (MM_PORT (primary)) && !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; + 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; } - mm_serial_port_queue_command (secondary ? secondary : primary, - "!STATUS", 3, - status_done, info); + mm_serial_port_queue_command (port, "!STATUS", 3, status_done, info); } static void |