Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.
Sign upbpo-38588: Fix possible crashes in dict and list when calling PyObject_RichCompareBool #17734
Conversation
This comment has been minimized.
This comment has been minimized.
|
Could you include the rest of the cases that LCatro was mentioning? He mentioned another 2 for lists. |
This comment has been minimized.
This comment has been minimized.
|
poc3 is not reproducible on my local mac machine and Linux machine with the master branch. Line 452 in 3c87a66 However poc2 is reproducible, so I will add the patch on this PR. $ cat poc3.py
class poc() :
def __eq__(self,other) :
list1.clear()
return NotImplemented
list1 = [ set() ]
poc() in list1
print('end')
$ ./python poc3.py
end |
This comment has been minimized.
This comment has been minimized.
|
FWIW, LCatro had opened another issue (https://bugs.python.org/issue38610) for similar crashes in the |
This comment has been minimized.
This comment has been minimized.
|
@pablogsal And for the And IMHO, we can close bpo-38588 with this patch |
This comment has been minimized.
This comment has been minimized.
|
@pablogsal Updated! |
2d5bf56
into
python:master
This comment has been minimized.
This comment has been minimized.
miss-islington
commented
Dec 31, 2019
|
Thanks @corona10 for the PR, and @pablogsal for merging it |
This comment has been minimized.
This comment has been minimized.
miss-islington
commented
Dec 31, 2019
|
I'm having trouble backporting to |
This comment has been minimized.
This comment has been minimized.
miss-islington
commented
Dec 31, 2019
|
Sorry, @corona10 and @pablogsal, I could not cleanly backport this to |
This comment has been minimized.
This comment has been minimized.
|
@corona10 Can you make the backport to 3.7 and 3.8 using |
This comment has been minimized.
This comment has been minimized.
miss-islington
commented
Dec 31, 2019
|
Thanks @corona10 for the PR, and @pablogsal for merging it |
This comment has been minimized.
This comment has been minimized.
miss-islington
commented
Dec 31, 2019
|
Sorry @corona10 and @pablogsal, I had trouble checking out the |
This comment has been minimized.
This comment has been minimized.
bedevere-bot
commented
Dec 31, 2019
|
GH-17764 is a backport of this pull request to the 3.8 branch. |
…yObject_RichCompareBool (pythonGH-17734) Take strong references before calling PyObject_RichCompareBool to protect against the case where the object dies during the call. (cherry picked from commit 2d5bf56) Co-authored-by: Dong-hee Na <donghee.na92@gmail.com>
This comment has been minimized.
This comment has been minimized.
|
Oh, please check the b.p.o before merge... |
This comment has been minimized.
This comment has been minimized.
Apologies, I had totally missed the comment in bpo :( |
This comment has been minimized.
This comment has been minimized.
bedevere-bot
commented
Dec 31, 2019
|
GH-17765 is a backport of this pull request to the 3.7 branch. |
This comment has been minimized.
This comment has been minimized.
|
Sorry @corona10, I will leave the backports open until we decide what to do finally in the bpo issue. |
This comment has been minimized.
This comment has been minimized.
|
@pablogsal cc @methane |
GH-17765) * [3.7] bpo-38588: Fix possible crashes in dict and list when calling PyObject_RichCompareBool (GH-17734) Take strong references before calling PyObject_RichCompareBool to protect against the case where the object dies during the call.. (cherry picked from commit 2d5bf56) Co-authored-by: Dong-hee Na <donghee.na92@gmail.com> * methane's suggestion methane's suggestion Co-Authored-By: Inada Naoki <songofacandy@gmail.com> Co-authored-by: Inada Naoki <songofacandy@gmail.com>
GH-17764) * [3.8] bpo-38588: Fix possible crashes in dict and list when calling PyObject_RichCompareBool (GH-17734) Take strong references before calling PyObject_RichCompareBool to protect against the case where the object dies during the call. (cherry picked from commit 2d5bf56) Co-authored-by: Dong-hee Na <donghee.na92@gmail.com> * Update Objects/listobject.c @methane's suggestion Co-Authored-By: Inada Naoki <songofacandy@gmail.com> Co-authored-by: Inada Naoki <songofacandy@gmail.com>
corona10 commentedDec 29, 2019
•
edited by bedevere-bot
Based on LCatro's report
https://bugs.python.org/issue38588