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:33:39 -0500 |
commit | a1800dc508ce7bc6262f2f4f1bb9fd4118ca0816 (patch) | |
tree | 07b12ba6ebae839550e42c86a7e685df0cb5a44d | |
parent | 8b5985a99e1f5a05e1a194d54515bc3421035a6e (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 4ed81241..293b2ec4 100644 --- a/src/mm-generic-gsm.c +++ b/src/mm-generic-gsm.c @@ -2099,8 +2099,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); } |