diff options
author | Aleksander Morgado <aleksander@lanedo.com> | 2012-03-28 15:14:04 +0200 |
---|---|---|
committer | Aleksander Morgado <aleksander@lanedo.com> | 2012-03-28 15:50:43 +0200 |
commit | b8157228eb0e7196e32d1f4b7c64afd028a5542e (patch) | |
tree | dbd38257f10b3905448c23c7fc132ae462f63d6d | |
parent | 029cb2abe9ada012838e960c382d2fae232fbb5e (diff) |
broadband-modem: plug memleak when uppercasing storage names
-rw-r--r-- | src/mm-broadband-modem.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/mm-broadband-modem.c b/src/mm-broadband-modem.c index bc958a92..2577cbd4 100644 --- a/src/mm-broadband-modem.c +++ b/src/mm-broadband-modem.c @@ -3869,22 +3869,28 @@ modem_messaging_set_preferred_storages (MMIfaceModemMessaging *self, { gchar *cmd; GSimpleAsyncResult *result; + gchar *mem1_str; + gchar *mem2_str; + gchar *mem3_str; result = g_simple_async_result_new (G_OBJECT (self), callback, user_data, modem_messaging_set_preferred_storages); - cmd = g_strdup_printf ("+CPMS=\"%s\",\"%s\",\"%s\"", - g_ascii_strup (mm_sms_storage_get_string (mem1), -1), - g_ascii_strup (mm_sms_storage_get_string (mem2), -1), - g_ascii_strup (mm_sms_storage_get_string (mem3), -1)); + mem1_str = g_ascii_strup (mm_sms_storage_get_string (mem1), -1); + mem2_str = g_ascii_strup (mm_sms_storage_get_string (mem2), -1); + mem3_str = g_ascii_strup (mm_sms_storage_get_string (mem3), -1); + cmd = g_strdup_printf ("+CPMS=\"%s\",\"%s\",\"%s\"", mem1_str, mem2_str, mem3_str); mm_base_modem_at_command (MM_BASE_MODEM (self), cmd, 3, FALSE, (GAsyncReadyCallback)cpms_set_ready, result); + g_free (mem1_str); + g_free (mem2_str); + g_free (mem3_str); g_free (cmd); } |