diff options
author | Dan Williams <dcbw@redhat.com> | 2012-07-17 10:30:57 -0500 |
---|---|---|
committer | Dan Williams <dcbw@redhat.com> | 2012-07-17 10:30:57 -0500 |
commit | 965b1ba5720f1fab30774885c671f4c6a2e6a966 (patch) | |
tree | 39be8d3c4bd800abb61aba210b27e0d91c236e3b | |
parent | d09375e08e4234ae87c5a1af5e5cbcdc84771742 (diff) |
gsm: ensure cleanup commands are sent when disabling
If there's no modem-specific power-down command, the port would be
closed prematurely, perhaps leaving unsolicited messages enabled.
Make sure that doesn't happen by ensuring that cleanup commands
complete.
-rw-r--r-- | src/mm-generic-gsm.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/mm-generic-gsm.c b/src/mm-generic-gsm.c index 9c1f780f..a6f3e0df 100644 --- a/src/mm-generic-gsm.c +++ b/src/mm-generic-gsm.c @@ -2206,8 +2206,10 @@ disable_flash_done (MMSerialPort *port, g_object_get (G_OBJECT (info->modem), MM_GENERIC_GSM_POWER_DOWN_CMD, &cmd, NULL); if (cmd && strlen (cmd)) mm_at_serial_port_queue_command (MM_AT_SERIAL_PORT (port), cmd, 5, disable_done, user_data); - else - disable_done (MM_AT_SERIAL_PORT (port), NULL, NULL, user_data); + else { + /* Send a plain AT to ensure the previous commands complete */ + mm_at_serial_port_queue_command (MM_AT_SERIAL_PORT (port), "AT", 3, disable_done, user_data); + } g_free (cmd); } |