Message295467
The co_extra_freefuncs are stored in PyThreadState. When calling _PyEval_RequestCodeExtraIndex you are given a thread specific index. The code object can then lose it's last reference on a different thread, and the wrong free function can be called if users of the extra space have made calls to get their index in different orders.
This can also lead to crashes if the extra thread hasn't yet requested extra indexes either. |
|
Date |
User |
Action |
Args |
2017-06-08 21:37:03 | dino.viehland | set | recipients:
+ dino.viehland, brett.cannon, yselivanov |
2017-06-08 21:37:03 | dino.viehland | set | messageid: <1496957823.48.0.898285168896.issue30604@psf.upfronthosting.co.za> |
2017-06-08 21:37:03 | dino.viehland | link | issue30604 messages |
2017-06-08 21:37:03 | dino.viehland | create | |
|