Rev 4366: (jam) Some optimizations for RIO. in file:///home/pqm/archives/thelove/bzr/%2Btrunk/

Canonical.com Patch Queue Manager pqm at pqm.ubuntu.com
Thu May 14 19:29:49 BST 2009


At file:///home/pqm/archives/thelove/bzr/%2Btrunk/

------------------------------------------------------------
revno: 4366
revision-id: pqm at pqm.ubuntu.com-20090514182944-yz4v4ggktei02wo0
parent: pqm at pqm.ubuntu.com-20090514172156-9knbb9wx9u1q1u1a
parent: jelmer at samba.org-20090514104144-t6sb7o0vz4veq7cz
committer: Canonical.com Patch Queue Manager <pqm at pqm.ubuntu.com>
branch nick: +trunk
timestamp: Thu 2009-05-14 19:29:44 +0100
message:
  (jam) Some optimizations for RIO.
modified:
  bzrlib/rio.py                  rio.py-20051128032247-770b120b34dfff60
    ------------------------------------------------------------
    revno: 4361.1.1
    revision-id: jelmer at samba.org-20090514104144-t6sb7o0vz4veq7cz
    parent: pqm at pqm.ubuntu.com-20090514031159-va38ehp3ttmrf21l
    committer: Jelmer Vernooij <jelmer at samba.org>
    branch nick: rio-optimized
    timestamp: Thu 2009-05-14 12:41:44 +0200
    message:
      Some optimizations for RIO.
    modified:
      bzrlib/rio.py                  rio.py-20051128032247-770b120b34dfff60
=== modified file 'bzrlib/rio.py'
--- a/bzrlib/rio.py	2009-03-23 14:59:43 +0000
+++ b/bzrlib/rio.py	2009-05-14 10:41:44 +0000
@@ -284,30 +284,30 @@
     #       rather than a more specific error.
 
     for line in unicode_iter:
-        if line is None or line == '':
+        if line is None or line == u'':
             break       # end of file
-        if line == '\n':
+        if line == u'\n':
             break       # end of stanza
         real_l = line
-        if line[0] == '\t': # continues previous value
+        if line[0] == u'\t': # continues previous value
             if tag is None:
                 raise ValueError('invalid continuation line %r' % real_l)
-            accum_value += '\n' + line[1:-1]
+            accum_value.append(u'\n' + line[1:-1])
         else: # new tag:value line
             if tag is not None:
-                stanza.add(tag, accum_value)
+                stanza.add(tag, u''.join(accum_value))
             try:
-                colon_index = line.index(': ')
+                colon_index = line.index(u': ')
             except ValueError:
                 raise ValueError('tag/value separator not found in line %r'
                                  % real_l)
             tag = str(line[:colon_index])
             if not valid_tag(tag):
                 raise ValueError("invalid rio tag %r" % (tag,))
-            accum_value = line[colon_index+2:-1]
+            accum_value = [line[colon_index+2:-1]]
 
     if tag is not None: # add last tag-value
-        stanza.add(tag, accum_value)
+        stanza.add(tag, u''.join(accum_value))
         return stanza
     else:     # didn't see any content
         return None




More information about the bazaar-commits mailing list