cpython: e0c0bcd60033 (original) (raw)

Mercurial > cpython

changeset 83507:e0c0bcd60033

(3.3->default) Ensure that plistlib doesn't corrupt deeply nested datastructures Without this changeset plistlib would write empty tags for plistlib.Data objects in deeply nested datastructures. Fixes #17353 [#17353]

Ronald Oussoren ronaldoussoren@mac.com
date Tue, 23 Apr 2013 13:48:29 +0200
parents ceb1ee4bc214(current diff)6a8cb4875ac6(diff)
children eafa0a802444
files Misc/NEWS
diffstat 3 files changed, 16 insertions(+), 2 deletions(-)[+] [-] Lib/plistlib.py 4 Lib/test/test_plistlib.py 12 Misc/NEWS 2

line wrap: on

line diff

--- a/Lib/plistlib.py +++ b/Lib/plistlib.py @@ -228,8 +228,8 @@ class PlistWriter(DumbXMLWriter): def writeData(self, data): self.beginElement("data") self.indentLevel -= 1

--- a/Lib/test/test_plistlib.py +++ b/Lib/test/test_plistlib.py @@ -141,6 +141,18 @@ class TestPlistlib(unittest.TestCase): data2 = plistlib.writePlistToBytes(pl2) self.assertEqual(data, data2)

+

+

+ def test_appleformatting(self): pl = plistlib.readPlistFromBytes(TESTDATA) data = plistlib.writePlistToBytes(pl)

--- a/Misc/NEWS +++ b/Misc/NEWS @@ -49,6 +49,8 @@ Core and Builtins Library ------- +- Issue #17353: Plistlib emitted empty data tags with deeply nested datastructures +