From d627ed49e22ba9c57e50cd6de748a9f26fc03720 Mon Sep 17 00:00:00 2001 From: jesopo Date: Mon, 25 Feb 2019 10:36:17 +0000 Subject: Pull "is main thread" logic out to utils, force Database to be accessed on main thread --- src/Database.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src/Database.py') diff --git a/src/Database.py b/src/Database.py index 1ba9bac3..c498b4a8 100644 --- a/src/Database.py +++ b/src/Database.py @@ -1,5 +1,5 @@ import json, os, sqlite3, threading, time, typing -from src import Logging +from src import Logging, utils sqlite3.register_converter("BOOLEAN", lambda v: bool(int(v))) @@ -309,6 +309,9 @@ class Database(object): def _execute_fetch(self, query: str, fetch_func: typing.Callable[[sqlite3.Cursor], typing.Any], params: typing.List=[]): + if not utils.is_main_thread(): + raise RuntimeError("Can't access Database outside of main thread") + printable_query = " ".join(query.split()) start = time.monotonic() -- cgit v1.3.1-10-gc9f91