Fix a memory leak 37/125537/1
authorSangyoon Jang <s89.jang@samsung.com>
Tue, 18 Apr 2017 02:25:22 +0000 (11:25 +0900)
committerSangyoon Jang <s89.jang@samsung.com>
Tue, 18 Apr 2017 02:25:22 +0000 (11:25 +0900)
Change-Id: I0c6e5cc33442159cbf1630459db4120c203b0420
Signed-off-by: Sangyoon Jang <s89.jang@samsung.com>
plugin/app2sd/server/app2sd_interface.c

index 1a50f19..4495a6c 100644 (file)
@@ -1418,6 +1418,7 @@ int app2sd_pre_migrate_legacy(const char *pkgid, uid_t uid)
        char mmc_path[FILENAME_MAX] = { 0, };
        char file_path[FILENAME_MAX] = { 0, };
        uid_t default_uid = tzplatform_getuid(TZ_SYS_DEFAULT_USER);
+       char *filename;
 
        /* check whether MMC is present or not */
        ret = _app2sd_check_mmc_status(&sdpath);
@@ -1439,7 +1440,8 @@ int app2sd_pre_migrate_legacy(const char *pkgid, uid_t uid)
         * of legacy image are filled with default user-id,
         * pkgid(from old db), passwd(from old db) and
         * empty filename in app2sd db. */
-       if (!_app2sd_get_filename_from_db(pkgid, default_uid)) {
+       filename = _app2sd_get_filename_from_db(pkgid, default_uid);
+       if (filename == NULL) {
                passwd = _app2sd_get_password_from_db(pkgid, default_uid);
                if (passwd) {
                        ret = _app2sd_migrate_legacy_image(pkgid, passwd,
@@ -1451,6 +1453,7 @@ int app2sd_pre_migrate_legacy(const char *pkgid, uid_t uid)
                        return APP2EXT_ERROR_INVALID_PACKAGE;
                }
        } else {
+               free(filename);
                _W("same pkg exists, remove legacy file (%s)", file_path);
                ret = remove(file_path);
                if (ret < 0)