/offlineimap/head: changeset 293

Now properly handles folder names that contain parenthesis. Used patch
from Kyler Laird in http://bugs.debian.org/cgi-
bin/bugreport.cgi?bug=173895. Closes: #173895.
This commit is contained in:
jgoerzen 2003-01-03 03:05:14 +01:00
parent bbbb13f52a
commit 09828a9d4f
2 changed files with 12 additions and 2 deletions

View File

@ -1,6 +1,10 @@
offlineimap (3.99.6) unstable; urgency=low offlineimap (3.99.6) unstable; urgency=low
* Beginnings of work to make it work with a threaded Tcl/Tk Tkinter. * Beginnings of work to make it work with a threaded Tcl/Tk Tkinter.
* Now properly handles folder names that contain parenthesis. Used
patch from Kyler Laird in
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=173895.
Closes: #173895.
-- John Goerzen <jgoerzen@complete.org> Thu, 2 Jan 2003 13:59:44 -0600 -- John Goerzen <jgoerzen@complete.org> Thu, 2 Jan 2003 13:59:44 -0600

View File

@ -112,8 +112,14 @@ def imapsplit(imapstring):
retval = [] retval = []
while len(workstr): while len(workstr):
if workstr[0] == '(': if workstr[0] == '(':
# Needs rindex to properly process eg (FLAGS () UID 123) rparenc = 1 # count of right parenthesis to match
rpareni = workstr.rindex(')') + 1 rpareni = 1 # position to examine
while rparenc: # Find the end of the group.
if workstr[rpareni] == ')': # end of a group
rparenc -= 1
elif workstr[rpareni] == '(': # start of a group
rparenc += 1
rpareni += 1 # Move to next character.
parenlist = workstr[0:rpareni] parenlist = workstr[0:rpareni]
workstr = workstr[rpareni:].lstrip() workstr = workstr[rpareni:].lstrip()
retval.append(parenlist) retval.append(parenlist)