int ret;
int idx;
int support_type = 0;
- int result = -1;
xmlNode* tmp;
xmlNode* tmpdata;
ret = sqlite3_prepare_v2(db, query, strlen(query), &stmt, NULL);
if (ret != SQLITE_OK) {
- LOGE("prepare error: %s", sqlite3_errmsg(db));
+ LOGE("prepare error: %d(%s)", ret, sqlite3_errmsg(db));
goto out;
}
ret = bundle_encode(default_data, &raw, &len);
if (ret != BUNDLE_ERROR_NONE) {
- LOGE("bundle encode error");
+ LOGE("bundle encode error %d", ret);
goto out;
}
idx = 1;
- sqlite3_bind_text(stmt, idx++, pkgid, -1, SQLITE_TRANSIENT);
- sqlite3_bind_text(stmt, idx++, appid, -1, SQLITE_TRANSIENT);
- sqlite3_bind_text(stmt, idx++, providerid, -1, SQLITE_TRANSIENT);
- sqlite3_bind_int(stmt, idx++, trusted ? 1 : 0);
- sqlite3_bind_int(stmt, idx++, period);
- sqlite3_bind_int(stmt, idx++, support_type);
- sqlite3_bind_text(stmt, idx, (char*)raw, -1, SQLITE_TRANSIENT);
+ ret = sqlite3_bind_text(stmt, idx++, pkgid, -1, SQLITE_TRANSIENT);
+ if (ret != SQLITE_OK) {
+ LOGE("sqlite3_bind_text() error: %d(%s)", ret, sqlite3_errmsg(db));
+ goto out;
+ }
+
+ ret = sqlite3_bind_text(stmt, idx++, appid, -1, SQLITE_TRANSIENT);
+ if (ret != SQLITE_OK) {
+ LOGE("sqlite3_bind_text() error: %d(%s)", ret, sqlite3_errmsg(db));
+ goto out;
+ }
+
+ ret = sqlite3_bind_text(stmt, idx++, providerid, -1, SQLITE_TRANSIENT);
+ if (ret != SQLITE_OK) {
+ LOGE("sqlite3_bind_text() error: %d(%s)", ret, sqlite3_errmsg(db));
+ goto out;
+ }
+
+ ret = sqlite3_bind_int(stmt, idx++, trusted ? 1 : 0);
+ if (ret != SQLITE_OK) {
+ LOGE("sqlite3_bind_int() error: %d(%s)", ret, sqlite3_errmsg(db));
+ goto out;
+ }
+
+ ret = sqlite3_bind_int(stmt, idx++, period);
+ if (ret != SQLITE_OK) {
+ LOGE("sqlite3_bind_int() error: %d(%s)", ret, sqlite3_errmsg(db));
+ goto out;
+ }
+
+ ret = sqlite3_bind_int(stmt, idx++, support_type);
+ if (ret != SQLITE_OK) {
+ LOGE("sqlite3_bind_int() error: %d(%s)", ret, sqlite3_errmsg(db));
+ goto out;
+ }
+
+ ret = sqlite3_bind_text(stmt, idx, (char*)raw, -1, SQLITE_TRANSIENT);
+ if (ret != SQLITE_OK) {
+ LOGE("sqlite3_bind_text() error: %d(%s)", ret, sqlite3_errmsg(db));
+ goto out;
+ }
ret = sqlite3_step(stmt);
if (ret != SQLITE_DONE) {
- LOGE("step error: %s", sqlite3_errmsg(db));
+ LOGE("step error: %d(%s)", ret, sqlite3_errmsg(db));
+ goto out;
+ }
+
+ ret = sqlite3_reset(stmt);
+ if (ret != SQLITE_OK) {
+ LOGE("sqlite3_reset() error: %d", ret);
goto out;
}
- sqlite3_reset(stmt);
sqlite3_clear_bindings(stmt);
if (raw) {
}
}
- result = 0;
+ ret = 0;
out:
if (default_data)
bundle_free(default_data);
if (stmt)
sqlite3_finalize(stmt);
- return result;
+ return ret;
}
static int _parse_label(xmlNode* node, sqlite3* db, const char* providerid) {
ret = sqlite3_prepare_v2(db, query, strlen(query), &stmt, NULL);
if (ret != SQLITE_OK) {
- LOGE("prepare error: %s", sqlite3_errmsg(db));
+ LOGE("prepare error: %d(%s)", ret, sqlite3_errmsg(db));
goto out;
}
idx = 1;
- sqlite3_bind_text(stmt, idx++, providerid, -1, SQLITE_TRANSIENT);
+ ret = sqlite3_bind_text(stmt, idx++, providerid, -1, SQLITE_TRANSIENT);
+ if (ret != SQLITE_OK) {
+ LOGE("sqlite3_bind_text() error: %d(%s)", ret, sqlite3_errmsg(db));
+ goto out;
+ }
if (lang)
- sqlite3_bind_text(stmt, idx++, reinterpret_cast<char*>(lang), -1,
+ ret = sqlite3_bind_text(stmt, idx++, reinterpret_cast<char*>(lang), -1,
SQLITE_TRANSIENT);
else
- sqlite3_bind_text(stmt, idx++, "No Locale", -1, SQLITE_TRANSIENT);
+ ret = sqlite3_bind_text(stmt, idx++, "No Locale", -1, SQLITE_TRANSIENT);
+ if (ret != SQLITE_OK) {
+ LOGE("sqlite3_bind_text() error: %d(%s)", ret, sqlite3_errmsg(db));
+ goto out;
+ }
- sqlite3_bind_text(stmt, idx, reinterpret_cast<char*>(node->children->content),
+ ret = sqlite3_bind_text(stmt, idx, reinterpret_cast<char*>(node->children->content),
-1, SQLITE_TRANSIENT);
+ if (ret != SQLITE_OK) {
+ LOGE("sqlite3_bind_text() error: %d(%s)", ret, sqlite3_errmsg(db));
+ goto out;
+ }
ret = sqlite3_step(stmt);
if (ret != SQLITE_DONE) {
- LOGE("step error: %s", sqlite3_errmsg(db));
+ LOGE("step error: %d(%s)", ret, sqlite3_errmsg(db));
goto out;
}
ret = sqlite3_prepare_v2(db, query, strlen(query), &stmt, NULL);
if (ret != SQLITE_OK) {
- LOGE("prepare error: %s", sqlite3_errmsg(db));
+ LOGE("prepare error: %d(%s)", ret, sqlite3_errmsg(db));
goto out;
}
for (tmp = node->children; tmp; tmp = tmp->next) {
if (!xmlStrcasecmp(tmp->name, (const xmlChar*)"privilege")) {
- sqlite3_bind_text(stmt, 1, providerid, -1, SQLITE_TRANSIENT);
- sqlite3_bind_text(stmt, 2, (char*)tmp->children->content, -1,
+ ret = sqlite3_bind_text(stmt, 1, providerid, -1, SQLITE_TRANSIENT);
+ if (ret != SQLITE_OK) {
+ LOGE("sqlite3_bind_text() error: %d(%s)", ret, sqlite3_errmsg(db));
+ goto out;
+ }
+
+ ret = sqlite3_bind_text(stmt, 2, (char*)tmp->children->content, -1,
SQLITE_TRANSIENT);
+ if (ret != SQLITE_OK) {
+ LOGE("sqlite3_bind_text() error: %d(%s)", ret, sqlite3_errmsg(db));
+ goto out;
+ }
ret = sqlite3_step(stmt);
if (ret != SQLITE_DONE) {
- LOGE("step error: %s", sqlite3_errmsg(db));
+ LOGE("step error: %d(%s)", ret, sqlite3_errmsg(db));
+ goto out;
+ }
+
+ ret = sqlite3_reset(stmt);
+ if (ret != SQLITE_OK) {
+ LOGE("sqlite3_reset() error: %d", ret);
goto out;
}
- sqlite3_reset(stmt);
sqlite3_clear_bindings(stmt);
}
}
if (support_events != 0) {
ret = sqlite3_prepare_v2(db, query, strlen(query), &stmt, NULL);
if (ret != SQLITE_OK) {
- LOGE("prepare error: %s", sqlite3_errmsg(db));
+ LOGE("prepare error: %d(%s)", ret, sqlite3_errmsg(db));
+ goto out;
+ }
+
+ ret = sqlite3_bind_text(stmt, 1, providerid, -1, SQLITE_TRANSIENT);
+ if (ret != SQLITE_OK) {
+ LOGE("sqlite3_bind_text() error: %d(%s)", ret, sqlite3_errmsg(db));
+ goto out;
+ }
+
+ ret = sqlite3_bind_int(stmt, 2, support_events);
+ if (ret != SQLITE_OK) {
+ LOGE("sqlite3_bind_int() error: %d(%s)", ret, sqlite3_errmsg(db));
goto out;
}
- sqlite3_bind_text(stmt, 1, providerid, -1, SQLITE_TRANSIENT);
- sqlite3_bind_int(stmt, 2, support_events);
ret = sqlite3_step(stmt);
if (ret != SQLITE_DONE) {
- LOGE("step error: %s", sqlite3_errmsg(db));
+ LOGE("step error: %d(%s)", ret, sqlite3_errmsg(db));
+ goto out;
+ }
+
+ ret = sqlite3_reset(stmt);
+ if (ret != SQLITE_OK) {
+ LOGE("sqlite3_reset() error: %d", ret);
goto out;
}
- sqlite3_reset(stmt);
sqlite3_clear_bindings(stmt);
}
ret = sqlite3_prepare_v2(db, query, strlen(query), &stmt, NULL);
if (ret != SQLITE_OK) {
- LOGE("prepare error: %s", sqlite3_errmsg(db));
+ LOGE("prepare error: %d(%s)", ret, sqlite3_errmsg(db));
goto out;
}
- sqlite3_bind_text(stmt, 1, providerid, -1, SQLITE_TRANSIENT);
- sqlite3_bind_text(stmt, 2, setup_appid, -1, SQLITE_TRANSIENT);
+ ret = sqlite3_bind_text(stmt, 1, providerid, -1, SQLITE_TRANSIENT);
+ if (ret != SQLITE_OK) {
+ LOGE("sqlite3_bind_text() error: %d(%s)", ret, sqlite3_errmsg(db));
+ goto out;
+ }
+ ret = sqlite3_bind_text(stmt, 2, setup_appid, -1, SQLITE_TRANSIENT);
+ if (ret != SQLITE_OK) {
+ LOGE("sqlite3_bind_text() error: %d(%s)", ret, sqlite3_errmsg(db));
+ goto out;
+ }
ret = sqlite3_step(stmt);
if (ret != SQLITE_DONE) {
if (providerid == NULL) {
LOGE("provider-id error");
- sqlite3_exec(db, "ROLLBACK TRANSACTION", NULL, NULL, NULL);
+ if (sqlite3_exec(db, "ROLLBACK TRANSACTION", NULL, NULL, NULL))
+ LOGE("rollback transaction error");
+
goto out;
}
else
trusted = false;
- if (_parse_complication(tmp, db, pkgid, appid,
- providerid, setup_appid, trusted)) {
+ if (_parse_complication(tmp, db, pkgid, appid, providerid, setup_appid,
+ trusted)) {
LOGE("parse complication error");
- sqlite3_exec(db, "ROLLBACK TRANSACTION", NULL, NULL, NULL);
+ if (sqlite3_exec(db, "ROLLBACK TRANSACTION", NULL, NULL, NULL))
+ LOGE("rollback transaction error");
free(providerid);
for (i = 0; i < (sizeof(query) / sizeof(*query)); i++) {
ret = sqlite3_prepare_v2(db, query[i], strlen(query[i]), &stmt, NULL);
if (ret != SQLITE_OK) {
- LOGE("prepare error: %s", sqlite3_errmsg(db));
- return -1;
+ LOGE("prepare error: %d(%s)", ret, sqlite3_errmsg(db));
+ goto out;
}
- sqlite3_bind_text(stmt, 1, pkgid, -1, SQLITE_TRANSIENT);
+ ret = sqlite3_bind_text(stmt, 1, pkgid, -1, SQLITE_TRANSIENT);
+ if (ret != SQLITE_OK) {
+ LOGE("sqlite3_bind_text() error: %d(%s)", ret, sqlite3_errmsg(db));
+ goto out;
+ }
ret = sqlite3_step(stmt);
if (ret != SQLITE_DONE) {
LOGE("step error: %s", sqlite3_errmsg(db));
- sqlite3_finalize(stmt);
- return -1;
+ goto out;
}
sqlite3_finalize(stmt);
}
- return 0;
+ ret = 0;
+
+out:
+ if (stmt)
+ sqlite3_finalize(stmt);
+
+ return ret;
}
int complication_parser_db_remove_complication(const char* pkgid) {
- int result = -1;
+ int ret;
sqlite3* db;
db = open_db(_get_target_uid());
if (db == NULL)
return -1;
- if (sqlite3_exec(db, "BEGIN TRANSACTION", NULL, NULL, NULL)) {
- LOGE("begin transaction error");
+ ret = sqlite3_exec(db, "BEGIN TRANSACTION", NULL, NULL, NULL);
+ if (ret != SQLITE_OK) {
+ LOGE("begin transaction error %d", ret);
goto out;
}
if (_remove_complication(db, pkgid)) {
LOGE("failed to remove complication provider");
- sqlite3_exec(db, "ROLLBACK TRANSACTION", NULL, NULL, NULL);
+ ret = sqlite3_exec(db, "ROLLBACK TRANSACTION", NULL, NULL, NULL);
+ if (ret != SQLITE_OK) {
+ LOGE("rollback transaction error %d", ret);
+ }
goto out;
}
- if (sqlite3_exec(db, "END TRANSACTION", NULL, NULL, NULL)) {
- LOGE("begin transaction error");
+ ret = sqlite3_exec(db, "END TRANSACTION", NULL, NULL, NULL);
+ if (ret != SQLITE_OK) {
+ LOGE("begin transaction error %d", ret);
goto out;
}
- result = 0;
+ ret = 0;
out:
if (db)
sqlite3_close_v2(db);
- return result;
+ return ret;
}
sqlite3* db;
int trusted;
std::string provider_app_id;
+ int ret;
static const char query[] =
"SELECT trusted, appid, default_data FROM complication_provider "
return nullptr;
}
- sqlite3_bind_text(stmt, 1, provider_id, -1, SQLITE_TRANSIENT);
- sqlite3_bind_int(stmt, 2, support_type);
+ ret = sqlite3_bind_text(stmt, 1, provider_id, -1, SQLITE_TRANSIENT);
+ if (ret != SQLITE_OK) {
+ LOGE("bind error: %s", sqlite3_errmsg(db));
+ goto out;
+ }
+
+ ret = sqlite3_bind_int(stmt, 2, support_type);
+ if (ret != SQLITE_OK) {
+ LOGE("bind error: %s", sqlite3_errmsg(db));
+ goto out;
+ }
if (sqlite3_step(stmt) == SQLITE_ROW) {
trusted = sqlite3_column_int(stmt, 0);
provider_app_id = std::string((char*)sqlite3_column_text(stmt, 1));
if (trusted &&
util::CheckCertificate(provider_app_id) == false) {
- sqlite3_finalize(stmt);
- CloseDB(db);
- return nullptr;
+ goto out;
}
raw_data = reinterpret_cast<const char*>(sqlite3_column_text(stmt, 2));
default_data = std::unique_ptr<Bundle>(new Bundle(std::string(raw_data)));
}
+ out:
+
sqlite3_finalize(stmt);
CloseDB(db);
int DBManager::GetProviderPeriod(std::string& provider_id, int* period) {
sqlite3_stmt* stmt = NULL;
sqlite3* db;
+ int ret;
static const char query[] =
"SELECT period FROM complication_provider WHERE provider_id=?";
return WATCHFACE_COMPLICATION_ERROR_DB;
}
- sqlite3_bind_text(stmt, 1, provider_id.c_str(), -1, SQLITE_TRANSIENT);
+ ret = sqlite3_bind_text(stmt, 1, provider_id.c_str(), -1, SQLITE_TRANSIENT);
+ if (ret != SQLITE_OK) {
+ LOGE("bind error: %s", sqlite3_errmsg(db));
+ sqlite3_finalize(stmt);
+ CloseDB(db);
+ return WATCHFACE_COMPLICATION_ERROR_DB;
+ }
/* complication_provider table's default value of period is -1.
* So, if nothing specified in period, it will return -1
bool is_exist = false;
int trusted;
std::string provider_app_id;
+ int ret;
static const char query[] =
"SELECT trusted, appid FROM complication_provider "
return false;
}
- sqlite3_bind_text(stmt, 1, provider_id.c_str(), -1, SQLITE_TRANSIENT);
- sqlite3_bind_int(stmt, 2, support_type);
+ ret = sqlite3_bind_text(stmt, 1, provider_id.c_str(), -1, SQLITE_TRANSIENT);
+ if (ret != SQLITE_OK) {
+ LOGE("bind error: %s", sqlite3_errmsg(db));
+ sqlite3_finalize(stmt);
+ CloseDB(db);
+ return false;
+ }
+
+ ret = sqlite3_bind_int(stmt, 2, support_type);
+ if (ret != SQLITE_OK) {
+ LOGE("bind error: %s", sqlite3_errmsg(db));
+ sqlite3_finalize(stmt);
+ CloseDB(db);
+ return false;
+ }
if (sqlite3_step(stmt) == SQLITE_ROW) {
trusted = sqlite3_column_int(stmt, 0);
sqlite3* db;
int trusted;
std::string provider_app_id;
+ int ret;
static const char query[] =
"SELECT trusted, appid FROM complication_provider WHERE provider_id=?";
return std::string();
}
- sqlite3_bind_text(stmt, 1, provider_id, -1, SQLITE_TRANSIENT);
+ ret = sqlite3_bind_text(stmt, 1, provider_id, -1, SQLITE_TRANSIENT);
+ if (ret != SQLITE_OK) {
+ LOGE("bind error: %s", sqlite3_errmsg(db));
+ sqlite3_finalize(stmt);
+ CloseDB(db);
+ return std::string();
+ }
if (sqlite3_step(stmt) == SQLITE_ROW) {
trusted = sqlite3_column_int(stmt, 0);
std::list<std::unique_ptr<DBManager::ProviderInfo>> provider_list;
int trusted;
std::string provider_app_id;
+ int ret;
static const char query[] =
"SELECT trusted, appid, provider_id, support_type FROM complication_provider "
return provider_list;
}
- sqlite3_bind_int(stmt, 1, supported_types);
+ ret = sqlite3_bind_int(stmt, 1, supported_types);
+ if (ret != SQLITE_OK) {
+ LOGE("bind error: %s", sqlite3_errmsg(db));
+ sqlite3_finalize(stmt);
+ CloseDB(db);
+ return provider_list;
+ }
+
while (sqlite3_step(stmt) == SQLITE_ROW) {
trusted = sqlite3_column_int(stmt, 0);
provider_app_id = std::string((char*)sqlite3_column_text(stmt, 1));
std::unique_ptr<ProviderInfo>(new ProviderInfo(provider_id, type)));
}
- if (stmt)
- sqlite3_finalize(stmt);
-
+ sqlite3_finalize(stmt);
CloseDB(db);
return std::move(provider_list);
sqlite3_stmt* stmt;
sqlite3* db;
std::list<std::string> provider_list;
+ int ret;
static const char query[] =
"SELECT DISTINCT provider_id FROM complication_provider WHERE appid=?";
return provider_list;
}
- sqlite3_bind_text(stmt, 1, provider_app_id, -1, SQLITE_TRANSIENT);
+ ret = sqlite3_bind_text(stmt, 1, provider_app_id, -1, SQLITE_TRANSIENT);
+ if (ret != SQLITE_OK) {
+ LOGE("bind error: %s", sqlite3_errmsg(db));
+ sqlite3_finalize(stmt);
+ CloseDB(db);
+ return provider_list;
+ }
while (sqlite3_step(stmt) == SQLITE_ROW) {
provider = (char*)sqlite3_column_text(stmt, 0);
sqlite3* db;
int trusted;
std::string provider_app_id;
+ int ret;
static const char query[] =
"SELECT trusted, appid, SUM(support_type) FROM complication_provider "
return WATCHFACE_COMPLICATION_ERROR_DB;
}
- sqlite3_bind_text(stmt, 1, provider_id.c_str(), -1, SQLITE_TRANSIENT);
+ ret = sqlite3_bind_text(stmt, 1, provider_id.c_str(), -1, SQLITE_TRANSIENT);
+ if (ret != SQLITE_OK) {
+ LOGE("bind error: %s", sqlite3_errmsg(db));
+ sqlite3_finalize(stmt);
+ CloseDB(db);
+ return WATCHFACE_COMPLICATION_ERROR_DB;
+ }
if (sqlite3_step(stmt) == SQLITE_ROW) {
trusted = sqlite3_column_int(stmt, 0);
sqlite3_stmt* stmt;
sqlite3* db;
std::list<std::string> privlege_list;
+ int ret;
static const char query[] =
"SELECT DISTINCT privilege FROM provider_privilege WHERE provider_id=?";
return privlege_list;
}
- sqlite3_bind_text(stmt, 1, provider_id.c_str(), -1, SQLITE_TRANSIENT);
+ ret = sqlite3_bind_text(stmt, 1, provider_id.c_str(), -1, SQLITE_TRANSIENT);
+ if (ret != SQLITE_OK) {
+ LOGE("bind error: %s", sqlite3_errmsg(db));
+ sqlite3_finalize(stmt);
+ CloseDB(db);
+ return privlege_list;
+ }
while (sqlite3_step(stmt) == SQLITE_ROW) {
privlege = (char*)sqlite3_column_text(stmt, 0);
sqlite3_stmt* stmt;
sqlite3* db;
std::list<std::string> privlege_list;
+ int ret;
static const char query[] =
"SELECT support_events FROM provider_support_events WHERE provider_id=?";
return -1;
}
- sqlite3_bind_text(stmt, 1, provider_id.c_str(), -1, SQLITE_TRANSIENT);
+ ret = sqlite3_bind_text(stmt, 1, provider_id.c_str(), -1, SQLITE_TRANSIENT);
+ if (ret != SQLITE_OK) {
+ LOGE("bind error: %s", sqlite3_errmsg(db));
+ sqlite3_finalize(stmt);
+ CloseDB(db);
+ return -1;
+ }
if (sqlite3_step(stmt) == SQLITE_ROW)
support_events = sqlite3_column_int(stmt, 0);
sqlite3_stmt *stmt;
sqlite3* db;
char* locale = NULL;
+ int ret;
static const char query[] =
"SELECT provider_label FROM provider_localized_info "
return std::string();
}
- sqlite3_bind_text(stmt, 1, provider_id, -1, SQLITE_TRANSIENT);
- sqlite3_bind_text(stmt, 2, locale, -1, SQLITE_TRANSIENT);
+ ret = sqlite3_bind_text(stmt, 1, provider_id, -1, SQLITE_TRANSIENT);
+ if (ret != SQLITE_OK) {
+ LOGE("bind error: %s", sqlite3_errmsg(db));
+ sqlite3_finalize(stmt);
+ CloseDB(db);
+ free(locale);
+ return std::string();
+ }
+
+ ret = sqlite3_bind_text(stmt, 2, locale, -1, SQLITE_TRANSIENT);
+ if (ret != SQLITE_OK) {
+ LOGE("bind error: %s", sqlite3_errmsg(db));
+ sqlite3_finalize(stmt);
+ CloseDB(db);
+ free(locale);
+ return std::string();
+ }
if (sqlite3_step(stmt) == SQLITE_ROW)
label = std::string(reinterpret_cast<const char*>(
std::string setup_appid;
sqlite3_stmt* stmt;
sqlite3* db;
+ int ret;
static const char query[] =
"SELECT DISTINCT setup_appid FROM provider_setup_appid WHERE provider_id=?";
return std::string();
}
- sqlite3_bind_text(stmt, 1, provider_id, -1, SQLITE_TRANSIENT);
+ ret = sqlite3_bind_text(stmt, 1, provider_id, -1, SQLITE_TRANSIENT);
+ if (ret != SQLITE_OK) {
+ LOGE("bind error: %s", sqlite3_errmsg(db));
+ sqlite3_finalize(stmt);
+ CloseDB(db);
+ return std::string();
+ }
if (sqlite3_step(stmt) == SQLITE_ROW)
setup_appid = std::string(reinterpret_cast<const char*>(
return WATCHFACE_COMPLICATION_ERROR_DB;
}
- sqlite3_bind_text(stmt, 1, provider_id.c_str(), -1, SQLITE_TRANSIENT);
+ ret = sqlite3_bind_text(stmt, 1, provider_id.c_str(), -1, SQLITE_TRANSIENT);
+ if (ret != SQLITE_OK) {
+ LOGE("bind error: %s", sqlite3_errmsg(db));
+ sqlite3_finalize(stmt);
+ CloseDB(db);
+ return WATCHFACE_COMPLICATION_ERROR_DB;
+ }
if (sqlite3_step(stmt) == SQLITE_ROW) {
trusted_info = sqlite3_column_int(stmt, 0);