[PATCH] mbimcli: use g_strfreev instead of g_free to free g_strsplit results
Ben Chan
benchan at chromium.org
Mon Feb 24 09:12:57 PST 2014
This patch modifies set_pin_input_parse and set_connect_activate_parse
in mbimcli-basic-connect.c to duplicate the strings in a string array,
before returning them to the caller, so that the string array can be
properly freed with g_strfreev.
---
src/mbimcli/mbimcli-basic-connect.c | 15 +++++++--------
1 file changed, 7 insertions(+), 8 deletions(-)
diff --git a/src/mbimcli/mbimcli-basic-connect.c b/src/mbimcli/mbimcli-basic-connect.c
index 97368aa..b97154c 100644
--- a/src/mbimcli/mbimcli-basic-connect.c
+++ b/src/mbimcli/mbimcli-basic-connect.c
@@ -639,10 +639,10 @@ set_pin_input_parse (guint n_expected,
return FALSE;
}
- *pin = split[0];
- *new_pin = split[1] ? split[1] : NULL;
+ *pin = g_strdup (split[0]);
+ *new_pin = g_strdup (split[1]);
- g_free (split);
+ g_strfreev (split);
return TRUE;
}
@@ -756,7 +756,7 @@ set_connect_activate_parse (const gchar *str,
}
/* APN */
- *apn = split[0];
+ *apn = g_strdup (split[0]);
/* Some defaults */
*auth_protocol = MBIM_AUTH_PROTOCOL_NONE;
@@ -776,15 +776,14 @@ set_connect_activate_parse (const gchar *str,
/* Username */
if (split[2]) {
- *username = split[2];
+ *username = g_strdup (split[2]);
/* Password */
- if (split[3])
- *password = split[3];
+ *password = g_strdup (split[3]);
}
}
- g_free (split);
+ g_strfreev (split);
return TRUE;
}
--
1.9.0.rc1.175.g0b1dcb5
More information about the libmbim-devel
mailing list