]> git.ipfire.org Git - thirdparty/Python/cpython.git/commit
bpo-38876: Raise pickle.UnpicklingError when loading an item from memo for invalid...
authorClaudiu Popa <pcmanticore@gmail.com>
Sun, 24 Nov 2019 19:15:08 +0000 (20:15 +0100)
committerMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>
Sun, 24 Nov 2019 19:15:08 +0000 (11:15 -0800)
commit6f03b236c17c96bc9f8a004ffa7e7ae0542e9cac
treea3c37873c66b49cfe26b7b7183b75adead85b37b
parente407646b741db6851789963e525a1f5daad0a336
bpo-38876: Raise pickle.UnpicklingError when loading an item from memo for invalid input (GH-17335)

The previous code was raising a `KeyError` for both the Python and C implementation.
This was caused by the specified index of an invalid input which did not exist
in the memo structure, where the pickle stores what objects it has seen.
The malformed input would have caused either a `BINGET` or `LONG_BINGET` load
from the memo, leading to a `KeyError` as the determined index was bogus.

https://bugs.python.org/issue38876

https://bugs.python.org/issue38876
Lib/pickle.py
Lib/test/pickletester.py
Misc/NEWS.d/next/Library/2019-11-22-10-58-58.bpo-38876.qqy1Vp.rst [new file with mode: 0644]
Modules/_pickle.c