Fix memory leak 12/112112/1 tizen_3.0_tv accepted/tizen/3.0/common/20170202.150417 accepted/tizen/3.0/ivi/20170202.010426 accepted/tizen/3.0/mobile/20170202.010134 accepted/tizen/3.0/tv/20170202.010204 accepted/tizen/3.0/wearable/20170202.010300 accepted/tizen/common/20170201.171837 accepted/tizen/ivi/20170201.090847 accepted/tizen/mobile/20170201.090802 accepted/tizen/tv/20170201.090817 accepted/tizen/wearable/20170201.090831 submit/tizen/20170201.064034 submit/tizen_3.0/20170201.064013
authorYunjin Lee <yunjin-.lee@samsung.com>
Thu, 26 Jan 2017 05:03:58 +0000 (14:03 +0900)
committerYunjin Lee <yunjin-.lee@samsung.com>
Thu, 26 Jan 2017 05:03:58 +0000 (14:03 +0900)
Change-Id: I936ac1ba5194c8bb0cba991dd860456c02b73d6d
Signed-off-by: Yunjin Lee <yunjin-.lee@samsung.com>
src/privilege_info.c

index b95f573..c98c9e8 100755 (executable)
@@ -241,14 +241,14 @@ int privilege_info_get_privacy_display_name(const char *privilege, char **privac
        char* privacy_id = NULL;
        char* privacy_display_string_id = NULL;
 
-       TryReturn(privilege_db_manager_get_privacy_by_privilege(privilege, &privacy_id) == PRIVILEGE_DB_MANAGER_ERR_NONE, , PRVINFO_ERROR_INTERNAL_ERROR, "[PRVINFO_ERROR_INTERNAL_ERROR] privilege_db_manager_get_privacy_by_privilege failed");
-       TryReturn(privacy_id != NULL, , PRVINFO_ERROR_INTERNAL_ERROR, "[PRVINFO_ERROR_INTERNAL_ERROR] privilege_db_manager_get_privacy_by_privilege failed");
+       TryReturn(privilege_db_manager_get_privacy_by_privilege(privilege, &privacy_id) == PRIVILEGE_DB_MANAGER_ERR_NONE && privacy_id != NULL, , PRVINFO_ERROR_INTERNAL_ERROR, "[PRVINFO_ERROR_INTERNAL_ERROR] privilege_db_manager_get_privacy_by_privilege failed");
 
-       TryReturn(privilege_db_manager_get_privacy_display(privacy_id, &privacy_display_string_id) == PRIVILEGE_DB_MANAGER_ERR_NONE, free(privacy_id), PRVINFO_ERROR_INTERNAL_ERROR, "[PRVINFO_ERROR_INTERNAL_ERROR] privilege_db_manager_get_privacy_display failed");
-       TryReturn(privilege_info_get_string_by_string_id(privacy_display_string_id, privacy_display_name) == PRVINFO_ERROR_NONE, free(privacy_id); free(privacy_display_string_id), PRVINFO_ERROR_OUT_OF_MEMORY, "[PRVINFO_ERROR_OUT_OF_MEMORY] Memory allocation failed.");
-       TryReturn(*privacy_display_name != NULL, free(privacy_id), PRVINFO_ERROR_INTERNAL_ERROR, "[PRVINFO_ERROR_INTERNAL_ERROR] privilege_db_manager_get_privacy_display failed");
+       TryReturn(privilege_db_manager_get_privacy_display(privacy_id, &privacy_display_string_id) == PRIVILEGE_DB_MANAGER_ERR_NONE && privacy_display_string_id != NULL, free(privacy_id), PRVINFO_ERROR_INTERNAL_ERROR, "[PRVINFO_ERROR_INTERNAL_ERROR] privilege_db_manager_get_privacy_display failed");
+
+       TryReturn(privilege_info_get_string_by_string_id(privacy_display_string_id, privacy_display_name) == PRVINFO_ERROR_NONE && *privacy_display_name != NULL, free(privacy_id); free(privacy_display_string_id), PRVINFO_ERROR_OUT_OF_MEMORY, "[PRVINFO_ERROR_OUT_OF_MEMORY] Memory allocation failed.");
 
        free(privacy_id);
+       free(privacy_display_string_id);
        return PRVINFO_ERROR_NONE;
 }