From: Junghyun Yeon Date: Mon, 8 May 2017 03:50:28 +0000 (+0900) Subject: Add missing codes for pkg update info X-Git-Tag: accepted/tizen/unified/20170512.170329~2 X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fappfw%2Fpkgmgr-info.git;a=commitdiff_plain;h=bcfff5baea0852ca288a8269f83347b5099c6703 Add missing codes for pkg update info - Add query for package_update_info table into query list to create it automatically - Add functions to insert update info while install pkg Change-Id: I5fc247999a75f9aa3dcd41e79981efe230b3d3c5 Signed-off-by: Junghyun Yeon --- diff --git a/parser/src/pkgmgr_parser_db.c b/parser/src/pkgmgr_parser_db.c index 1b94e74..9394c87 100644 --- a/parser/src/pkgmgr_parser_db.c +++ b/parser/src/pkgmgr_parser_db.c @@ -301,6 +301,7 @@ static const char *parser_init_queries[] = { QUERY_CREATE_TABLE_PACKAGE_INFO, QUERY_CREATE_TABLE_PACKAGE_LOCALIZED_INFO, QUERY_CREATE_TABLE_PACKAGE_PRIVILEGE_INFO, + QUERY_CREATE_TABLE_PACKAGE_UPDATE_INFO, QUERY_CREATE_TABLE_PACKAGE_APP_INFO, QUERY_CREATE_TABLE_PACKAGE_APP_LOCALIZED_INFO, QUERY_CREATE_TABLE_PACKAGE_APP_ICON_SECTION_INFO, /* ? */ @@ -1608,6 +1609,35 @@ static int __insert_application_info(sqlite3 *db, manifest_x *mfx) return 0; } +static int __insert_package_update_info(sqlite3 *db, manifest_x *mfx) +{ + static const char query[] = + "INSERT INTO package_update_info (package, update_version) " + "VALUES (?, ?)"; + int ret; + int idx; + sqlite3_stmt *stmt; + + ret = sqlite3_prepare_v2(db, query, strlen(query), &stmt, NULL); + if (ret != SQLITE_OK) { + _LOGE("prepare failed: %s", sqlite3_errmsg(db)); + return -1; + } + + idx = 1; + __BIND_TEXT(db, stmt, idx++, mfx->package); + __BIND_TEXT(db, stmt, idx, mfx->version); + ret = sqlite3_step(stmt); + if (ret != SQLITE_DONE) { + _LOGE("step failed: %s", sqlite3_errmsg(db)); + sqlite3_finalize(stmt); + return -1; + } + sqlite3_finalize(stmt); + + return 0; +} + static int __insert_package_localized_info(sqlite3 *db, manifest_x *mfx) { static const char query[] = @@ -1752,6 +1782,8 @@ static int __insert_package_info(sqlite3 *db, manifest_x *mfx) sqlite3_finalize(stmt); + if (__insert_package_update_info(db, mfx)) + return -1; if (__insert_package_localized_info(db, mfx)) return -1; if (__insert_application_info(db, mfx))