* @brief API return values
*/
enum {
+ PMINFO_R_ENOENT = -3, /**< No result */
PMINFO_R_EINVAL = -2, /**< Invalid argument */
PMINFO_R_ERROR = -1, /**< General error */
PMINFO_R_OK = 0 /**< General success */
pkgmgr_pkginfo_x *tmp;
char *locale;
int stop = 0;
+ int ret;
if (__open_manifest_db(uid) < 0)
return PMINFO_R_ERROR;
return PMINFO_R_ERROR;
}
- if (_pkginfo_get_pkg(locale, filter, &pkginfo)) {
+ ret = _pkginfo_get_pkg(locale, filter, &pkginfo);
+ if (ret != PMINFO_R_OK) {
free(locale);
__close_manifest_db();
- return PMINFO_R_ERROR;
+ return (ret == PMINFO_R_ENOENT) ? PMINFO_R_OK : PMINFO_R_ERROR;
}
tmp = pkginfo;
sqlite3_finalize(stmt);
- if (*pkginfo) {
- LISTHEAD(*pkginfo, info);
- *pkginfo = info;
- } else {
+ if (*pkginfo == NULL) {
LOGE("no result");
- return PMINFO_R_ERROR;
+ return PMINFO_R_ENOENT;
}
+ LISTHEAD(*pkginfo, info);
+ *pkginfo = info;
+
return PMINFO_R_OK;
}
void *user_data)
{
pkgmgr_appinfo_x *appinfo = NULL;
- pkgmgr_appinfo_x *next;
pkgmgr_appinfo_x *tmp;
char *locale;
+ int ret;
if (__open_manifest_db(uid) < 0)
return PMINFO_R_ERROR;
return PMINFO_R_ERROR;
}
- if (_appinfo_get_app(locale, filter, &appinfo)) {
+ ret = _appinfo_get_app(locale, filter, &appinfo);
+ if (ret != PMINFO_R_OK) {
free(locale);
__close_manifest_db();
- return PMINFO_R_ERROR;
+ return (ret == PMINFO_R_ENOENT) ? PMINFO_R_OK : PMINFO_R_ERROR;
}
for (tmp = appinfo; tmp; tmp = tmp->next) {
sqlite3_finalize(stmt);
- if (*appinfo) {
- LISTHEAD(*appinfo, info);
- *appinfo = info;
- } else {
+ if (*appinfo == NULL) {
LOGE("no result");
- return PMINFO_R_ERROR;
+ return PMINFO_R_ENOENT;
}
+ LISTHEAD(*appinfo, info);
+ *appinfo = info;
+
return PMINFO_R_OK;
}
if (list == NULL) {
LOGE("no result");
__close_manifest_db();
- return PMINFO_R_ERROR;
+ return PMINFO_R_OK;
}
for (tmp = list; tmp; tmp = tmp->next) {