diff options
-rw-r--r-- | alot/db/manager.py | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/alot/db/manager.py b/alot/db/manager.py index b3d31694..4cc216c6 100644 --- a/alot/db/manager.py +++ b/alot/db/manager.py @@ -21,6 +21,8 @@ from errors import DatabaseLockedError from errors import DatabaseROError from errors import NonexistantObjectError from alot.db import DB_ENC +from alot.db.utils import is_subdir_of + class FillPipeProcess(multiprocessing.Process): @@ -135,6 +137,12 @@ class DBManager(object): if cmd == 'add': logging.debug('add') path, tags = current_item[2:] + if not is_subdir_of(path,self.path): + msg = 'cannot add message in %s ' % path + msg += 'as it\'s not below notmuchs ' + msg += 'root path (%s)' % self.path + raise DatabaseError(msg) + msg, status = db.add_message(path, sync_maildir_flags=sync) logging.debug('added msg') |