[issue41909] Segfault on __getattr__ infinite recursion on certain attribute accesses

2020-10-04 Thread Serhiy Storchaka
Change by Serhiy Storchaka : -- resolution: -> fixed stage: patch review -> resolved status: open -> closed ___ Python tracker ___

[issue41909] Segfault on __getattr__ infinite recursion on certain attribute accesses

2020-10-04 Thread Serhiy Storchaka
Serhiy Storchaka added the comment: New changeset 7aa22ba923509af1dbf115c090964f503c84ca8d by Serhiy Storchaka in branch '3.9': [3.9] bpo-41909: Enable previously disabled recursion checks. (GH-22536) (GH-22550) https://github.com/python/cpython/commit/7aa22ba923509af1dbf115c090964f503c84ca8

[issue41909] Segfault on __getattr__ infinite recursion on certain attribute accesses

2020-10-04 Thread Serhiy Storchaka
Serhiy Storchaka added the comment: New changeset 09a7b3b618cd02694a0bc8abfa24c75f0e659407 by Serhiy Storchaka in branch '3.8': [3.8] bpo-41909: Enable previously disabled recursion checks. (GH-22536) (GH-22551) https://github.com/python/cpython/commit/09a7b3b618cd02694a0bc8abfa24c75f0e65940

[issue41909] Segfault on __getattr__ infinite recursion on certain attribute accesses

2020-10-04 Thread Serhiy Storchaka
Change by Serhiy Storchaka : -- pull_requests: +21549 pull_request: https://github.com/python/cpython/pull/22551 ___ Python tracker ___

[issue41909] Segfault on __getattr__ infinite recursion on certain attribute accesses

2020-10-04 Thread Serhiy Storchaka
Change by Serhiy Storchaka : -- pull_requests: +21548 pull_request: https://github.com/python/cpython/pull/22550 ___ Python tracker ___

[issue41909] Segfault on __getattr__ infinite recursion on certain attribute accesses

2020-10-04 Thread Serhiy Storchaka
Serhiy Storchaka added the comment: New changeset 9ece9cd65cdeb0a1f6e60475bbd0219161c348ac by Serhiy Storchaka in branch 'master': bpo-41909: Enable previously disabled recursion checks. (GH-22536) https://github.com/python/cpython/commit/9ece9cd65cdeb0a1f6e60475bbd0219161c348ac --

[issue41909] Segfault on __getattr__ infinite recursion on certain attribute accesses

2020-10-04 Thread Serhiy Storchaka
Change by Serhiy Storchaka : -- keywords: +patch pull_requests: +21539 stage: -> patch review pull_request: https://github.com/python/cpython/pull/22536 ___ Python tracker ___

[issue41909] Segfault on __getattr__ infinite recursion on certain attribute accesses

2020-10-04 Thread Serhiy Storchaka
Serhiy Storchaka added the comment: Antoine give me a hint. The problem seems related to using PyDict_GetItem() when look up an attribute in the instance dict. It silences all exceptions (including RecursionError) and this results in silent "no such key in a dict". But since 3.8 it was repla

[issue41909] Segfault on __getattr__ infinite recursion on certain attribute accesses

2020-10-03 Thread Debojyoti Chakraborty
Debojyoti Chakraborty added the comment: Is it open Then give the process to reproduce the issue. -- nosy: +sparkingdark ___ Python tracker ___ __

[issue41909] Segfault on __getattr__ infinite recursion on certain attribute accesses

2020-10-03 Thread Guido van Rossum
Guido van Rossum added the comment: I don't think I remember what's so special about abstract_get_bases() to disable the recursion check. Maybe this macro is always just a micro-optimization? Then again it's hard to be sure, the behavior may depend on the platform. Pulling in Antoine, who s

[issue41909] Segfault on __getattr__ infinite recursion on certain attribute accesses

2020-10-03 Thread Serhiy Storchaka
Serhiy Storchaka added the comment: Interesting, when lookup any attribute you will get a RecursionError, but this is one of only two places where the recursion check is disabled (the other one is in interning strings). You get a crash also when call isinstance(1, instance) or issubclass(int

[issue41909] Segfault on __getattr__ infinite recursion on certain attribute accesses

2020-10-02 Thread Florian Bruhin
Change by Florian Bruhin : -- nosy: +The Compiler ___ Python tracker ___ ___ Python-bugs-list mailing list Unsubscribe: https://mai

[issue41909] Segfault on __getattr__ infinite recursion on certain attribute accesses

2020-10-02 Thread Ran Benita
Change by Ran Benita : -- type: -> crash ___ Python tracker ___ ___ Python-bugs-list mailing list Unsubscribe: https://mail.python

[issue41909] Segfault on __getattr__ infinite recursion on certain attribute accesses

2020-10-02 Thread Ran Benita
New submission from Ran Benita : The following program crashes with a segfault: class Segfault: def __getattr__(self, name): self.unknown_attribute instance = Segfault() issubclass(instance, int) # int doesn't matter Tested with Python 3.7, 3.8, 3.9rc2, and master in debug mode (