Add checking code to app_manager_get_app_id() API. 10/212710/2 accepted/tizen/unified/20190904.011500 submit/tizen/20190827.060921 submit/tizen/20190830.011939 submit/tizen/20190902.040808
authorjinwang.an <jinwang.an@samsung.com>
Mon, 26 Aug 2019 07:53:39 +0000 (16:53 +0900)
committerjinwang.an <jinwang.an@samsung.com>
Tue, 27 Aug 2019 01:48:15 +0000 (10:48 +0900)
Change-Id: I5da33877a6e6fba80fbe79de369f7bc1a79ec8d6
Signed-off-by: jinwang.an <jinwang.an@samsung.com>
src/system_setting_platform.c

index b7e76e2..a7c92c9 100644 (file)
@@ -2302,15 +2302,19 @@ int system_setting_get_uds_state(system_settings_key_e key, void **value)
                                char *app_id = NULL;
                                char *package_id = NULL;
                                pid_t pid = getpid();
-                               app_manager_get_app_id(pid, &app_id);
+
+                               int ret = app_manager_get_app_id(pid, &app_id);
+                               if (ret != APP_MANAGER_ERROR_NONE) {
+                                       free(vconf_string_value);
+                                       return SYSTEM_SETTINGS_ERROR_IO_ERROR;
+                               }
 
                                if (app_id) {
                                        int result = 0;
                                        result = package_manager_get_package_id_by_app_id(app_id, &package_id);
                                        if (result != PACKAGE_MANAGER_ERROR_NONE) {
                                                SETTING_TRACE("package_manager_get_package_id_by_app_id returned error! %d", result);
-                                               if (vconf_string_value)
-                                                       free(vconf_string_value);
+                                               free(vconf_string_value);
                                                return SYSTEM_SETTINGS_ERROR_IO_ERROR;
                                        }
 
@@ -2325,8 +2329,7 @@ int system_setting_get_uds_state(system_settings_key_e key, void **value)
                                }
 
                        }
-                       if (vconf_string_value)
-                               free(vconf_string_value);
+                       free(vconf_string_value);
                }
        }