diff options
Diffstat (limited to 'alot/db/manager.py')
-rw-r--r-- | alot/db/manager.py | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/alot/db/manager.py b/alot/db/manager.py index e57af181..aa67ed40 100644 --- a/alot/db/manager.py +++ b/alot/db/manager.py @@ -11,9 +11,8 @@ import os from notmuch2 import Database, NotmuchError -from .errors import DatabaseError -from .errors import DatabaseROError -from .errors import NonexistantObjectError +from .errors import (DatabaseError, DatabaseROError, NonexistantObjectError, + QueryError) from .sort import ORDER from .thread import Thread from ..settings.const import settings @@ -214,8 +213,12 @@ class DBManager: with self._db_ro() as db: exclude_tags = self._exclude_tags | exclude_tags - for t in db.threads(querystring, sort = sort, exclude_tags = exclude_tags): - yield t.threadid + try: + for t in db.threads(querystring, sort = sort, + exclude_tags = exclude_tags): + yield t.threadid + except NotmuchError as e: + raise QueryError from e async def startup(self): self._write_queue = asyncio.Queue() |