provider_info->monitor_id = monitor_id;
__changed_provider_list =
g_list_append(__changed_provider_list, provider_info);
+
} else {
provider_info = (provider_info_s *)find_list->data;
}
if (path)
free(path);
if (ret != DATA_CONTROL_ERROR_NONE) {
- if (provider_info != NULL && new_provider == true)
+ if (provider_info != NULL && new_provider) {
+ __changed_provider_list =
+ g_list_remove(__changed_provider_list,
+ provider_info);
__free_provider_info(provider_info);
+ }
if (result_cb_info != NULL)
__free_result_cb_info(result_cb_info);
}