From 7023f9ad7258759c11ff66d03515058f56355374 Mon Sep 17 00:00:00 2001 From: Junghyun Yeon Date: Tue, 29 Nov 2016 10:37:00 +0900 Subject: [PATCH] Using different pkgmgr-info API while getting pkgtype - Change API which is used while retrieving pkginfo to retrieve disabled and external-installed pkg properly (externally installed pkg but external storage has removed) Change-Id: I374ccc1c7e73734729aafcdf68a7c38a3d06ffb4 Signed-off-by: Junghyun Yeon --- src/pkgmgr-server.c | 23 +++++++---------------- src/util.c | 10 +++------- 2 files changed, 10 insertions(+), 23 deletions(-) diff --git a/src/pkgmgr-server.c b/src/pkgmgr-server.c index e4c312f..268a1ad 100644 --- a/src/pkgmgr-server.c +++ b/src/pkgmgr-server.c @@ -572,24 +572,15 @@ static int __change_job_info(struct backend_job *job, uid_t uid, int ret = 0; char *pkgid = NULL; pkgmgrinfo_appinfo_h handle = NULL; - - switch (job->req_type) { - case REQUEST_TYPE_DISABLE_APP: - case REQUEST_TYPE_DISABLE_GLOBAL_APP_FOR_UID: - case REQUEST_TYPE_ENABLE_APP_SPLASH_SCREEN: - case REQUEST_TYPE_DISABLE_APP_SPLASH_SCREEN: - ret = pkgmgrinfo_appinfo_get_usr_appinfo(job->pkgid, uid, - &handle); - break; - case REQUEST_TYPE_ENABLE_APP: - case REQUEST_TYPE_ENABLE_GLOBAL_APP_FOR_UID: - ret = pkgmgrinfo_appinfo_get_usr_disabled_appinfo(job->pkgid, - uid, &handle); - break; - default: + if (job->req_type != REQUEST_TYPE_DISABLE_APP && + job->req_type != REQUEST_TYPE_DISABLE_GLOBAL_APP_FOR_UID && + job->req_type != REQUEST_TYPE_ENABLE_APP_SPLASH_SCREEN && + job->req_type != REQUEST_TYPE_DISABLE_APP_SPLASH_SCREEN && + job->req_type != REQUEST_TYPE_ENABLE_APP && + job->req_type != REQUEST_TYPE_ENABLE_GLOBAL_APP_FOR_UID) return PMINFO_R_ERROR; - } + ret = pkgmgrinfo_appinfo_get_usr_all_appinfo(job->pkgid, uid, &handle); if (ret != PMINFO_R_OK) return PMINFO_R_ERROR; diff --git a/src/util.c b/src/util.c index 6b683fd..6a1b7b9 100644 --- a/src/util.c +++ b/src/util.c @@ -51,13 +51,9 @@ char *_get_pkgtype_from_pkgid(const char *pkgid, uid_t uid) pkgmgrinfo_pkginfo_h info; int ret; - ret = pkgmgrinfo_pkginfo_get_usr_pkginfo(pkgid, uid, &info); - if (ret != PMINFO_R_OK) { - ret = pkgmgrinfo_pkginfo_get_usr_disabled_pkginfo(pkgid, uid, - &info); - if (ret != PMINFO_R_OK) - return NULL; - } + ret = pkgmgrinfo_pkginfo_get_usr_all_pkginfo(pkgid, uid, &info); + if (ret != PMINFO_R_OK) + return NULL; ret = pkgmgrinfo_pkginfo_get_type(info, &pkgtype); if (ret != PMINFO_R_OK) { -- 2.7.4