return ret;
}
+int _account_info_delete_from_db(const char* app_id, uid_t uid)
+{
+ ENTER();
+ _D("appid : %s uid : %d", app_id, uid);
+
+ int ret = ACCOUNT_ERROR_NONE;
+
+ if (OWNER_ROOT == uid || GLOBAL_USER == uid)
+ ret = account_delete_from_db_by_package_name_offline((char*)app_id);
+ else
+ ret = account_delete_from_db_by_package_name((char*)app_id);
+
+ if ((ret != ACCOUNT_ERROR_NONE) && (ret != ACCOUNT_ERROR_RECORD_NOT_FOUND)) {
+ _E("Failed to perform account_delete_from_db_by_package_name_offline().");
+ goto CATCH;
+ }
+
+ if (OWNER_ROOT == uid || GLOBAL_USER == uid)
+ ret = account_type_delete_by_app_id_offline((char*)app_id);
+ else
+ ret = account_type_delete_by_app_id((char*)app_id);
+
+ if (ret != ACCOUNT_ERROR_NONE) {
+ _E("Failed to perform account_type_delete_by_app_id().");
+ goto CATCH;
+ }
+
+CATCH:
+ return ret;
+}
+
+
int _on_package_app_list_received_cb(pkgmgrinfo_appinfo_h handle, void *user_data)
{
ENTER();
ret = pkgmgrinfo_pkginfo_get_usr_pkginfo(package_id, uid, &package_info_handle);
if (ret != PMINFO_R_OK) {
+ /*if pkgmgrinfo fails, delete account information assuming appId == package_id*/
+ if (ACCOUNT_ERROR_NONE != _account_info_delete_from_db(package_id, uid))
+ _E("account info deletion failed");
+
_E("[%d]Failed to pkgmgrinfo_pkginfo_get_pkginfo().", ret);
ret = -1;
goto FINISH;