48ae1a36c8
This patch fixes the situation when "localfolders" specifies path that is more that one level deep and top directory does not exists. Example would be "localfolders = ~/Mail/a". This especially relevant on the first run. In that case we would end up with unhandled exception causing unexpected termination of the program. Thread 'Account sync test' terminated with exception: Traceback (most recent call last): File "/offlineimap/offlineimap/threadutil.py", line 172, in run Thread.run(self) File "/usr/lib/python2.7/threading.py", line 754, in run self.__target(*self.__args, **self.__kwargs) File "/offlineimap/offlineimap/accounts.py", line 258, in syncrunner self.localrepos = Repository(self, 'local') File "/offlineimap/offlineimap/repository/__init__.py", line 82, in __new__ return repo(name, account) File "/offlineimap/offlineimap/repository/Maildir.py", line 40, in __init__ os.mkdir(self.root, 0o700) OSError: [Errno 2] No such file or directory: '/Mail/a' By replacing call to "mkdir" with "makedirs" we can simply create directories recursively. Signed-off-by: Łukasz Żarnowiecki <dolohow@outlook.com> Signed-off-by: Nicolas Sebrecht <nicolas.s-dev@laposte.net> |
||
---|---|---|
.. | ||
__init__.py | ||
Base.py | ||
Gmail.py | ||
GmailMaildir.py | ||
IMAP.py | ||
LocalStatus.py | ||
Maildir.py |