Revert "Fix memory leaks" 32/115332/2
authorjusung son <jusung07.son@samsung.com>
Fri, 17 Feb 2017 10:12:57 +0000 (02:12 -0800)
committerjusung son <jusung07.son@samsung.com>
Fri, 17 Feb 2017 10:13:03 +0000 (02:13 -0800)
This reverts commit 4a3981a2a18cb64bd460223ee570b832297c8c52.

Change-Id: I9b04590e92f58eefbc9f683da6fc2ec377071e73

src/data-control-map.c
src/data-control-noti.c
src/data-control-sql.c

index 82d4fb33458555c729919a20477f549bd7b4710d..7431686199df325a0ae51d65a56a9ef258b5162f 100755 (executable)
@@ -767,8 +767,7 @@ int datacontrol_map_unregister_response_cb(datacontrol_h provider)
 {
        int ret = DATACONTROL_ERROR_NONE;
        map_response_cb_s *map_dc_temp = (map_response_cb_s *)calloc(1, sizeof(map_response_cb_s));
-       map_response_cb_s *map_dc_returned = NULL;
-       char *tmp_provider_id;
+       void *map_dc_returned = NULL;
 
        g_hash_table_remove(__socket_pair_hash, provider->provider_id);
 
@@ -785,26 +784,13 @@ int datacontrol_map_unregister_response_cb(datacontrol_h provider)
                goto EXCEPTION;
        }
 
-       map_dc_returned = (map_response_cb_s *)tfind(map_dc_temp, &datacontrol_map_tree_root, __map_instance_compare);
+       map_dc_returned = tdelete(map_dc_temp, &datacontrol_map_tree_root, __map_instance_compare);
        if (map_dc_returned == NULL) {
                LOGE("invalid parameter");
                ret = DATACONTROL_ERROR_INVALID_PARAMETER;
                goto EXCEPTION;
        }
 
-       if (map_dc_returned->app_id)
-               free(map_dc_returned->app_id);
-       if (map_dc_returned->data_id)
-               free(map_dc_returned->data_id);
-       if (map_dc_returned->access_info)
-               free(map_dc_returned->access_info);
-       if (map_dc_returned->request_info_list)
-               g_list_free_full(map_dc_returned->request_info_list, free);
-
-       tmp_provider_id = map_dc_returned->provider_id;
-       tdelete(map_dc_temp, &datacontrol_map_tree_root, __map_instance_compare);
-       free(tmp_provider_id);
-
        /* LCOV_EXCL_START */
 EXCEPTION:
         if (map_dc_temp) {
index 53541d97afe92a604d890aa7947b921aa591a542..7068b07c13647ed76e493d53441dd272b3741167 100755 (executable)
@@ -414,6 +414,7 @@ int datacontrol_add_data_change_cb(datacontrol_h provider,
        __add_callback_result_cb_list = g_list_append(__add_callback_result_cb_list, result_cb_info);
        LOGI("datacontrol_add_data_change_cb done");
 
+       return ret;
        /* LCOV_EXCL_START */
 err:
        if (access)
@@ -422,10 +423,8 @@ err:
                free(provider_app_id);
        if (path)
                free(path);
-       if (ret != DATACONTROL_ERROR_NONE) {
-               if (monitor_id > 0)
-                       g_dbus_connection_signal_unsubscribe(_get_dbus_connection(), monitor_id);
-       }
+       if (monitor_id > 0)
+               g_dbus_connection_signal_unsubscribe(_get_dbus_connection(), monitor_id);
 
        return ret;
        /* LCOV_EXCL_STOP */
index 6cd378823b06a8067b267a028b826eaf4bebdf97..68e40ddc81505453bc3ad8fe48479e1891bdba2c 100755 (executable)
@@ -1143,8 +1143,7 @@ EXCEPTION:
 int datacontrol_sql_unregister_response_cb(datacontrol_h provider)
 {
        int ret = DATACONTROL_ERROR_NONE;
-       sql_response_cb_s *sql_dc_returned = NULL;
-       char *tmp_provider_id;
+       void *sql_dc_returned = NULL;
 
        LOGE("g_hash_table_remove");
 
@@ -1165,26 +1164,13 @@ int datacontrol_sql_unregister_response_cb(datacontrol_h provider)
                goto EXCEPTION;
        }
 
-       sql_dc_returned = (sql_response_cb_s *)tfind(sql_dc_temp, &datacontrol_sql_tree_root, __sql_instance_compare);
+       sql_dc_returned = tdelete(sql_dc_temp, &datacontrol_sql_tree_root, __sql_instance_compare);
        if (sql_dc_returned == NULL) {
                LOGE("invalid parameter");
                ret = DATACONTROL_ERROR_INVALID_PARAMETER;
                goto EXCEPTION;
        }
 
-       if (sql_dc_returned->app_id)
-               free(sql_dc_returned->app_id);
-       if (sql_dc_returned->data_id)
-               free(sql_dc_returned->data_id);
-       if (sql_dc_returned->access_info)
-               free(sql_dc_returned->access_info);
-       if (sql_dc_returned->request_info_list)
-               g_list_free_full(sql_dc_returned->request_info_list, free);
-
-       tmp_provider_id = sql_dc_returned->provider_id;
-       tdelete(sql_dc_temp, &datacontrol_sql_tree_root, __sql_instance_compare);
-       free(tmp_provider_id);
-
 EXCEPTION:
        if (sql_dc_temp) {
                if (sql_dc_temp->provider_id)