]> git.ipfire.org Git - thirdparty/Python/cpython.git/commit
Critical fix: if cPickle on a sizeof(long)==8 box is used to read a
authorTim Peters <tim.peters@gmail.com>
Tue, 10 Apr 2001 01:54:42 +0000 (01:54 +0000)
committerTim Peters <tim.peters@gmail.com>
Tue, 10 Apr 2001 01:54:42 +0000 (01:54 +0000)
commitbfa18f711f01477b143aab37921eafabc0cb38fb
tree49824803bd8fe4e92cec93e59b74061feef1f000
parent4e6a7a626de58887c270461a546cde5f435e6178
Critical fix:  if cPickle on a sizeof(long)==8 box is used to read a
binary pickle, and the latter contains a pickle of a negative Python
int i written on a sizeof(long)==4 box (and whether by cPickle or
pickle.py), it's read incorrectly as i + 2**32.  The patch repairs that,
and allows test_cpickle.py (to which I added a relevant test case earlier
today) to work again on sizeof(long)==8 boxes.
There's another (at least one) sizeof(long)==8 binary pickle bug, but in
pickle.py instead.  That bug is still there, and test_pickle.py doesn't
catch it yet (try pickling and unpickling, e.g., 1 << 46).
Modules/cPickle.c