diff --git a/services/bundlemgr_lite/src/gt_bundle_parser.cpp b/services/bundlemgr_lite/src/gt_bundle_parser.cpp index 5c82938f975b8c2b3c7c16ed629f80851d4a3bda..14da2fa4d79703512fe68fb780c737ac4c43f318 100644 --- a/services/bundlemgr_lite/src/gt_bundle_parser.cpp +++ b/services/bundlemgr_lite/src/gt_bundle_parser.cpp @@ -550,13 +550,17 @@ bool GtBundleParser::ConvertIconResToBundleInfo(const char *resPath, uint32_t ic AdapterFree(bundleInfo->smallIconPath); if (isBigIconExisted) { bundleInfo->bigIconPath = bigIconPath; + AdapterFree(bigIconPngPath); } else { bundleInfo->bigIconPath = bigIconPngPath; + AdapterFree(bigIconPath); } if (isSmallIconExisted) { bundleInfo->smallIconPath = smallIconPath; + AdapterFree(smallIconPngPath); } else { bundleInfo->smallIconPath = smallIconPngPath; + AdapterFree(smallIconPath); } return true; }