GList *list = NULL;
splashscreen_x *ss;
+ if (splashscreens == NULL)
+ return NULL;
+
g_list_foreach(splashscreens,
__find_appcontrol_splashscreen_with_dpi, &list);
g_list_foreach(splashscreens,
return list;
}
-static int __insert_splashscreen_info(sqlite3 *db, application_x *app)
+static int __insert_splashscreen_info(sqlite3 *db, application_x *app,
+ GList *ss_list)
{
static const char query[] =
"INSERT INTO package_app_splash_screen (app_id, src, type,"
int idx;
GList *tmp;
splashscreen_x *ss;
- GList *ss_list;
if (app->splashscreens == NULL)
return 0;
- ss_list = __find_splashscreens(app->splashscreens);
if (ss_list == NULL)
return 0;
ret = sqlite3_prepare_v2(db, query, strlen(query), &stmt, NULL);
if (ret != SQLITE_OK) {
_LOGE("prepare failed: %s", sqlite3_errmsg(db));
- g_list_free(ss_list);
return -1;
}
if (ret != SQLITE_DONE) {
_LOGE("step failed: %s", sqlite3_errmsg(db));
sqlite3_finalize(stmt);
- g_list_free(ss_list);
return -1;
}
}
sqlite3_finalize(stmt);
- g_list_free(ss_list);
return 0;
}
application_x *app;
int bg_category;
const char *effective_appid;
+ GList *ss_list;
ret = sqlite3_prepare_v2(db, query, strlen(query), &stmt, NULL);
if (ret != SQLITE_OK) {
sqlite3_finalize(stmt);
return -1;
}
- if (__insert_splashscreen_info(db, app)) {
+ ss_list = __find_splashscreens(app->splashscreens);
+ if (__insert_splashscreen_info(db, app, ss_list)) {
+ g_list_free(ss_list);
sqlite3_finalize(stmt);
return -1;
}
+ g_list_free(ss_list);
if (__insert_app_localized_info(db, app)) {
sqlite3_finalize(stmt);
return -1;