Change the timing of adding sqlite busy handler
[platform/core/appfw/pkgmgr-info.git] / parser / src / pkgmgr_parser_db.c
index 68d972d..74a8f47 100644 (file)
@@ -474,6 +474,14 @@ static int __open_db(uid_t uid, const char *path, sqlite3 **db, int flags)
        if (ret != SQLITE_OK)
                return ret;
 
+       ret = sqlite3_busy_handler(*db, __db_busy_handler, NULL);
+       if (ret != SQLITE_OK) {
+               _LOGE("failed to register busy handler: %s",
+                               sqlite3_errmsg(*db));
+               sqlite3_close_v2(*db);
+               return ret;
+       }
+
        if (flags & SQLITE_OPEN_CREATE) {
                ret = __initialize_db(*db, path, uid);
                if (ret) {
@@ -491,14 +499,6 @@ static int __open_db(uid_t uid, const char *path, sqlite3 **db, int flags)
                return ret;
        }
 
-       ret = sqlite3_busy_handler(*db, __db_busy_handler, NULL);
-       if (ret != SQLITE_OK) {
-               _LOGE("failed to register busy handler: %s",
-                               sqlite3_errmsg(*db));
-               sqlite3_close_v2(*db);
-               return ret;
-       }
-
        return ret;
 }
 
@@ -1970,9 +1970,9 @@ API int pkgmgr_parser_update_global_app_disable_for_uid_info_in_db(
                return PM_PARSER_R_EINVAL;
        }
 
-       dbpath = __get_parser_db_path(uid);
+       dbpath = __get_parser_db_path(GLOBAL_USER);
 
-       ret = __open_db(uid, dbpath, &db, SQLITE_OPEN_READWRITE);
+       ret = __open_db(GLOBAL_USER, dbpath, &db, SQLITE_OPEN_READWRITE);
        if (ret != SQLITE_OK) {
                _LOGE("open db failed: %d", ret);
                return PM_PARSER_R_ERROR;
@@ -2169,9 +2169,9 @@ API int pkgmgr_parser_update_global_app_splash_screen_display_info_in_usr_db(
                return PM_PARSER_R_EINVAL;
        }
 
-       dbpath = __get_parser_db_path(uid);
+       dbpath = __get_parser_db_path(GLOBAL_USER);
 
-       ret = __open_db(uid, dbpath, &db, SQLITE_OPEN_READWRITE);
+       ret = __open_db(GLOBAL_USER, dbpath, &db, SQLITE_OPEN_READWRITE);
        if (ret != SQLITE_OK) {
                _LOGE("open db failed: %d", ret);
                return PM_PARSER_R_ERROR;