Fixed incorrect comparision and memory leaks 46/189546/2 accepted/tizen/unified/20180919.061656 submit/tizen/20180919.023413
authorSaurav Babu <saurav.babu@samsung.com>
Tue, 18 Sep 2018 11:14:04 +0000 (16:44 +0530)
committerSaurav Babu <saurav.babu@samsung.com>
Tue, 18 Sep 2018 11:37:59 +0000 (11:37 +0000)
This patch fixes incorrect comparion for GVariantType and also fixes
memory leak reported by valgrind
==9934== 20 bytes in 2 blocks are definitely lost in loss record 1,388 of 2,620
==9934==    at 0x48458A4: malloc (vg_replace_malloc.c:299)
==9934==    by 0x4AB21B3: g_malloc (in /usr/lib/libglib-2.0.so.0.5200.2)
==9934==    by 0x4ACCF03: g_strdup (in /usr/lib/libglib-2.0.so.0.5200.2)
==9934==    by 0x123CEB: __netconfig_get_default_connection_info (network-state.c:409)
==9934==    by 0x124933: netconfig_update_default_profile (network-state.c:1210)
==9934==    by 0x1290AD: _service_signal_cb (signal-handler.c:358)
==9934==    by 0x4957997: ??? (in /usr/lib/libgio-2.0.so.0.5200.2)
==9934==    by 0x4AAC8E7: g_main_context_dispatch (in /usr/lib/libglib-2.0.so.0.5200.2)
==9934==    by 0x4AACC77: ??? (in /usr/lib/libglib-2.0.so.0.5200.2)
==9934==    by 0x4AACFD7: g_main_loop_run (in /usr/lib/libglib-2.0.so.0.5200.2)
==9934==    by 0x10F649: main (main.c:152)

Change-Id: I4e9791440ce4bc28968add19816d9e664cea9e62
Signed-off-by: Saurav Babu <saurav.babu@samsung.com>
src/network-state.c
src/signal-handler.c

index f2862de..e668dd5 100755 (executable)
@@ -1177,10 +1177,8 @@ void netconfig_update_default_profile(const char *profile)
                netconfig_default_connection_info.freq = 0;
                netconfig_default_connection_info.is_metered = FALSE;
 
-               if (wifi_state_get_service_state() != NETCONFIG_WIFI_CONNECTED) {
-                       g_free(netconfig_default_connection_info.essid);
-                       netconfig_default_connection_info.essid = NULL;
-               }
+               g_free(netconfig_default_connection_info.essid);
+               netconfig_default_connection_info.essid = NULL;
        }
 
        /* default profile is NULL and new connected profile is NULL */
index cfbf83a..0552b46 100755 (executable)
@@ -458,7 +458,7 @@ static void _service_signal_cb(GDBusConnection *conn,
                if (netconfig_is_wifi_profile(path) != TRUE || g_strcmp0(path, netconfig_get_default_profile()) != 0)
                        goto done;
 
-               if (!g_variant_type_equal(variant, G_VARIANT_TYPE_ARRAY))
+               if (!g_variant_is_of_type(variant, G_VARIANT_TYPE_ARRAY))
                        goto done;
 
                g_variant_get(variant, "a{sv}", &iter);