summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhyunuktak <hyunuk.tak@samsung.com>2017-09-28 10:07:35 +0900
committerchleun.moon <chleun.moon@samsung.com>2017-09-28 13:37:41 +0900
commit1b719d8392446690142fd005e5c9de3eb5b19f04 (patch)
tree00f88a06c58409c417f488c80db0537342a4cc72
parent5739f84fc89b70cd3349254005b7a1886c5f6dd3 (diff)
downloadconnman-1b719d8392446690142fd005e5c9de3eb5b19f04.tar.gz
connman-1b719d8392446690142fd005e5c9de3eb5b19f04.tar.bz2
connman-1b719d8392446690142fd005e5c9de3eb5b19f04.zip
Fixed a resource leak
Change-Id: I70b15db8ba90fc18410072f0017f04413662cde6 Signed-off-by: hyunuktak <hyunuk.tak@samsung.com>
-rwxr-xr-xsrc/technology.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/technology.c b/src/technology.c
index a8da19b2..2c2df831 100755
--- a/src/technology.c
+++ b/src/technology.c
@@ -1231,14 +1231,18 @@ static DBusMessage *specific_scan(DBusConnection *conn, DBusMessage *msg, void *
int type;
dbus_message_iter_recurse(&dict, &entry);
- if (dbus_message_iter_get_arg_type(&entry) != DBUS_TYPE_STRING)
+ if (dbus_message_iter_get_arg_type(&entry) != DBUS_TYPE_STRING) {
+ g_slist_free_full(specific_scan_list, g_free);
return __connman_error_invalid_arguments(msg);
+ }
dbus_message_iter_get_basic(&entry, &key);
dbus_message_iter_next(&entry);
- if (dbus_message_iter_get_arg_type(&entry) != DBUS_TYPE_VARIANT)
+ if (dbus_message_iter_get_arg_type(&entry) != DBUS_TYPE_VARIANT) {
+ g_slist_free_full(specific_scan_list, g_free);
return __connman_error_invalid_arguments(msg);
+ }
dbus_message_iter_recurse(&entry, &value2);
type = dbus_message_iter_get_arg_type(&value2);