Issue #14455: fix handling of unsigned long long values for binary plist files

Values in the range of an unsigned long long, but outside of the range
of a signed long long were serialized as a negative value.

Due to a bug in PyObjC my test scripts indicated that the previous behavior
matched Apple's plist code, instead the handle large unsigned values correctly.

The change to plistlib.py is from a patch by Serhiy.
This commit is contained in:
Ronald Oussoren 2014-02-06 11:19:18 +01:00
parent 3dcb0cf9b1
commit 94e44a935b
5 changed files with 79 additions and 78 deletions

View file

@ -107,13 +107,6 @@ This module defines the following functions:
An :exc:`OverflowError` will be raised for integer values that cannot
be represented in (binary) plist files.
.. warning::
For compatibility with Apple's libraries it is possible to write
an integer in the range from 2 ** 63 upto (and including) 2 ** 64
to binary plists, even though these will be read back as negative
values.
.. versionadded: 3.4