Issue 6613: ctypes.PyThreadState_SetAsyncExc does not work on linux 64bit machines (original) (raw)

Issue6613

Created on 2009-07-31 15:13 by coutinhotiago, last changed 2022-04-11 14:56 by admin. This issue is now closed.

Files
File name Uploaded Description Edit
t16.py coutinhotiago,2009-07-31 15:13 example code
Messages (3)
msg91131 - (view) Author: Tiago Coutinho (coutinhotiago) Date: 2009-07-31 15:13
Hello, It seems that the ctypes.PyThreadState_SetAsyncExc is not working in Linux 64bits machines I have tried the code in attachment in python 2.5 and 2.6 in both 32bits and 64bits machines with the following return: | linux 32bits linux 64bits ------ -------------- -------------- py2.5 1 (OK) 0 (ERR) py2.6
msg91132 - (view) Author: Thomas Heller (theller) * (Python committer) Date: 2009-07-31 15:56
I have no time to figure out what the attached script is supposed to do. Please provide a standalone test-script and describe exactly how it should be used to reproduce the bug. However, I guess the problem is that the signature of PyThreadState_SetAsyncEx is this: int PyThreadState_SetAsyncExc( long id, PyObject *exc) To call this function correctly on a 64-bit system you have to set argtypes because 'long' isn't the same as 'int' any longer. Without argtypes, ctypes passes a Python integer as 'int' argument.
msg92842 - (view) Author: Thomas Heller (theller) * (Python committer) Date: 2009-09-18 20:19
I guess this is a bug in your code, as mentioned in my last comment, so closing as invalid.
History
Date User Action Args
2022-04-11 14:56:51 admin set github: 50862
2009-09-18 20:19:07 theller set status: open -> closedresolution: not a bugmessages: +
2009-07-31 15:56:54 theller set messages: +
2009-07-31 15:13:40 coutinhotiago create