From: Sangyoon Jang Date: Wed, 30 Nov 2016 02:17:46 +0000 (+0900) Subject: Fix memory leak X-Git-Tag: accepted/tizen/3.0/common/20161130.133606^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=6ee931da58f9ff220fe53a7469e1126721a8ccb3;p=platform%2Fcore%2Fapi%2Fpackage-manager.git Fix memory leak Change-Id: If0f6c432d561cfab357b3a2ced571a98cd04500c Signed-off-by: Sangyoon Jang --- diff --git a/src/package_info.c b/src/package_info.c index 5861c29..f75618d 100644 --- a/src/package_info.c +++ b/src/package_info.c @@ -483,17 +483,19 @@ int package_info_create_with_pkginfo(pkgmgrinfo_pkginfo_h pkg_handle, package_in package_info_h pkg_info = NULL; char *pkg_name = NULL; - pkg_info = calloc(1, sizeof(struct package_info_s)); - if (pkg_info == NULL) - return PACKAGE_MANAGER_ERROR_OUT_OF_MEMORY; - pkgmgrinfo_pkginfo_get_pkgid(pkg_handle, &pkg_name); if (pkg_name == NULL) return PACKAGE_MANAGER_ERROR_SYSTEM_ERROR; + pkg_info = calloc(1, sizeof(struct package_info_s)); + if (pkg_info == NULL) + return PACKAGE_MANAGER_ERROR_OUT_OF_MEMORY; + pkg_info->package = strdup(pkg_name); - if (pkg_info->package == NULL) + if (pkg_info->package == NULL) { + free(pkg_info); return PACKAGE_MANAGER_ERROR_OUT_OF_MEMORY; + } pkg_info->pkgmgr_pkginfo = pkg_handle; *package_info = pkg_info;