]> granicus.if.org Git - python/commit
bpo-25532: Protect against infinite loops in inspect.unwrap() (#1717)
authorThomas Kluyver <takowl@gmail.com>
Tue, 23 May 2017 03:27:52 +0000 (04:27 +0100)
committerNick Coghlan <ncoghlan@gmail.com>
Tue, 23 May 2017 03:27:52 +0000 (13:27 +1000)
commitf9169ce6b48c7cc7cc62d9eb5e4ee1ac7066d14b
tree956e51ea17f03913fed3f61be6bb0cf9bc96e9c6
parente377416c10eb0bf055b0728cdcdc4488fdfd3b5f
bpo-25532: Protect against infinite loops in inspect.unwrap() (#1717)

Some objects (like test mocks) auto-generate new objects on
attribute access, which can lead to an infinite loop in
inspect.unwrap().

Ensuring references are retained to otherwise temporary objects
and capping the size of the memo dict turns this case into a
conventional exception instead.
Lib/inspect.py
Lib/test/test_inspect.py
Misc/NEWS