Fixed build error on gcc62
[platform/core/connectivity/net-config.git] / src / wifi-config.c
index 28facba..41297d5 100755 (executable)
@@ -432,6 +432,7 @@ static gboolean _set_field(const gchar *config_id, const gchar *key, const gchar
        keyfile = __get_configuration_keyfile(group_name);
        if (keyfile == NULL) {
                ERR("Fail to __get_configuration_keyfile");
+               g_free(group_name);
                return FALSE;
        }
 
@@ -491,6 +492,7 @@ static gboolean _get_field(const gchar *config_id, const gchar *key, gchar **val
        keyfile = __get_configuration_keyfile(group_name);
        if (keyfile == NULL) {
                ERR("Fail to __get_configuration_keyfile");
+               g_free(group_name);
                return FALSE;
        }
 
@@ -550,7 +552,7 @@ static GSList *_get_list(void)
                return NULL;
        }
 
-       while ((dp = readdir(dir)) != NULL) {
+       while ((readdir(dir) == 0) && (dp != NULL)) {
                if (g_strcmp0(dp->d_name, ".") == 0 || g_strcmp0(dp->d_name, "..") == 0 ||
                                strncmp(dp->d_name, WIFI_CONFIG_PREFIX, strlen(WIFI_CONFIG_PREFIX)) != 0) {
                        continue;
@@ -738,6 +740,12 @@ gboolean handle_save_configuration(Wifi *wifi, GDBusMethodInvocation *context,
 
        ret = __get_group_name(WIFI_CONFIG_PREFIX, config_id, &group_name);
        if (ret != TRUE) {
+               g_free(conf->name);
+               g_free(conf->ssid);
+               g_free(conf->passphrase);
+               g_free(conf->is_hidden);
+               g_free(conf->proxy_address);
+               g_free(conf);
                ERR("Fail to get_wifi_config_group_name");
                return FALSE;
        }