[Python-3000-checkins] r57844 - python/branches/py3k/Lib/plat-mac/plistlib.py

guido.van.rossum python-3000-checkins at python.org
Fri Aug 31 16:18:21 CEST 2007


Author: guido.van.rossum
Date: Fri Aug 31 16:18:20 2007
New Revision: 57844

Modified:
   python/branches/py3k/Lib/plat-mac/plistlib.py
Log:
Got test_plistlib working.  Don't ask how.


Modified: python/branches/py3k/Lib/plat-mac/plistlib.py
==============================================================================
--- python/branches/py3k/Lib/plat-mac/plistlib.py	(original)
+++ python/branches/py3k/Lib/plat-mac/plistlib.py	Fri Aug 31 16:18:20 2007
@@ -260,9 +260,9 @@
     def writeData(self, data):
         self.beginElement("data")
         self.indentLevel -= 1
-        maxlinelength = 76 - len(self.indent.replace("\t", " " * 8) *
+        maxlinelength = 76 - len(self.indent.replace(b"\t", b" " * 8) *
                                  self.indentLevel)
-        for line in data.asBase64(maxlinelength).split("\n"):
+        for line in data.asBase64(maxlinelength).split(b"\n"):
             if line:
                 self.writeln(line)
         self.indentLevel += 1
@@ -368,11 +368,11 @@
             raise TypeError("data must be as bytes")
         self.data = data
 
+    @classmethod
     def fromBase64(cls, data):
         # base64.decodestring just calls binascii.a2b_base64;
         # it seems overkill to use both base64 and binascii.
         return cls(binascii.a2b_base64(data))
-    fromBase64 = classmethod(fromBase64)
 
     def asBase64(self, maxlinelength=76):
         return _encodeBase64(self.data, maxlinelength)
@@ -464,6 +464,6 @@
     def end_string(self):
         self.addObject(self.getData())
     def end_data(self):
-        self.addObject(Data.fromBase64(self.getData()))
+        self.addObject(Data.fromBase64(self.getData().encode("utf-8")))
     def end_date(self):
         self.addObject(_dateFromString(self.getData()))


More information about the Python-3000-checkins mailing list