[CalendarServer-changes] [3677] CalendarServer/branches/users/wsanchez/deployment/lib-patches/ vobject/src.vobject.icalendar.patch
source_changes at macosforge.org
source_changes at macosforge.org
Tue Feb 17 09:02:38 PST 2009
Revision: 3677
http://trac.macosforge.org/projects/calendarserver/changeset/3677
Author: cdaboo at apple.com
Date: 2009-02-17 09:02:38 -0800 (Tue, 17 Feb 2009)
Log Message:
-----------
Merged vobject patch - addresses parsing performance issue.
Modified Paths:
--------------
CalendarServer/branches/users/wsanchez/deployment/lib-patches/vobject/src.vobject.icalendar.patch
Modified: CalendarServer/branches/users/wsanchez/deployment/lib-patches/vobject/src.vobject.icalendar.patch
===================================================================
--- CalendarServer/branches/users/wsanchez/deployment/lib-patches/vobject/src.vobject.icalendar.patch 2009-02-17 16:20:38 UTC (rev 3676)
+++ CalendarServer/branches/users/wsanchez/deployment/lib-patches/vobject/src.vobject.icalendar.patch 2009-02-17 17:02:38 UTC (rev 3677)
@@ -2,16 +2,51 @@
===================================================================
--- src/vobject/icalendar.py (revision 193)
+++ src/vobject/icalendar.py (working copy)
-@@ -1631,9 +1631,10 @@
+@@ -1601,7 +1601,7 @@
+ charIterator = enumerate(s)
+ state = "read normal"
+
+- current = ""
++ current = []
+ results = []
+
+ while True:
+@@ -1615,28 +1615,31 @@
+ state = "read escaped char"
+ elif char == listSeparator:
+ state = "read normal"
++ current = "".join(current)
+ results.append(current)
+- current = ""
++ current = []
+ elif char == "eof":
+ state = "end"
+ else:
+ state = "read normal"
+- current = current + char
++ current.append(char)
+
+ elif state == "read escaped char":
+ if escapableChar(char):
+ state = "read normal"
+ if char in 'nN':
+- current = current + '\n'
++ current.append('\n')
else:
- current = current + char
+- current = current + char
++ current.append(char)
else:
- state = "read normal"
+ #state = "read normal"
# leave unrecognized escaped characters for later passes
- current = current + '\\' + char
-+ #current = current + '\\' + char
++ #current.append('\\' + char)
+ raise ParseError("error: illegal escape sequence: '\\%s'" % (char,))
elif state == "end": #an end state
- if current != "" or len(results) == 0:
+- if current != "" or len(results) == 0:
++ if len(current) or len(results) == 0:
++ current = "".join(current)
+ results.append(current)
+ return results
+
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20090217/78480c29/attachment.html>
More information about the calendarserver-changes
mailing list