[PATCH] Folder: Force top-level folder visiblename to ''
Sebastian at SSpaeth.de
Fri Sep 23 13:36:49 BST 2011
nametrans rules can lead to different visiblename names for the
top-level directory, specifically both '.' and '' (the latter was
recently introduced). However, we need to be able to compare folder
names to see if we need to create a new directory or whether a directory
already exists, so we need to be able to compare a repositories
visiblename (=transposed via nametrans rule) with another folder.
To make the top-level directory comparison happen, we enforce a
top-level name of '', so that comparisons work.
Signed-off-by: Sebastian Spaeth <Sebastian at SSpaeth.de>
This patch is now in my next branch. Let me know if it fixes the problem.
offlineimap/folder/Base.py | 5 +++++
1 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/offlineimap/folder/Base.py b/offlineimap/folder/Base.py
index d9fed70..909db30 100644
@@ -39,6 +39,11 @@ class BaseFolder(object):
self.name = name
self.repository = repository
self.visiblename = repository.nametrans(name)
+ # In case the visiblename becomes '.' (top-level) we use '' as
+ # that is the name that e.g. the Maildir scanning will return
+ # for the top-level dir.
+ if self.visiblename == '.':
+ self.visiblename = ''
self.config = repository.getconfig()
More information about the OfflineIMAP-project