Call out restricted DB access when we acquire the reader.

git-svn-id: https://www.unprompted.com/svn/projects/tildefriends/trunk@4429 ed5197a5-7fde-0310-b194-c3ffbd925b24
This commit is contained in:
2023-08-25 19:41:54 +00:00
parent 172826bf13
commit b252b921f8
4 changed files with 11 additions and 6 deletions

View File

@ -428,8 +428,7 @@ static void _tf_ssb_sqlAsync_work(uv_work_t* work)
tf_ssb_record_thread_busy(sql_work->ssb, true);
tf_trace_t* trace = tf_ssb_get_trace(sql_work->ssb);
tf_trace_begin(trace, "sql_async_work");
sqlite3* db = tf_ssb_acquire_db_reader(sql_work->ssb);
sqlite3_set_authorizer(db, tf_ssb_sqlite_authorizer, sql_work->ssb);
sqlite3* db = tf_ssb_acquire_db_reader_restricted(sql_work->ssb);
sqlite3_stmt* statement = NULL;
sql_work->result = sqlite3_prepare(db, sql_work->query, -1, &statement, NULL);
if (sql_work->result == SQLITE_OK)
@ -523,7 +522,6 @@ static void _tf_ssb_sqlAsync_work(uv_work_t* work)
{
sql_work->error = tf_strdup(sqlite3_errmsg(db));
}
sqlite3_set_authorizer(db, NULL, NULL);
tf_ssb_release_db_reader(sql_work->ssb, db);
tf_ssb_record_thread_busy(sql_work->ssb, false);
tf_trace_end(trace);