This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author Rhamphoryncus
Recipients
Date 2007-01-28.12:02:06
SpamBayes Score
Marked as misclassified
Message-id
In-reply-to
Content
Augh, bloody firefox messed up my focus.

Your PyErr_SetInterrupt needs to set the flags after, like so:

    Py_AddPendingCall((int (*)(void *))PyErr_CheckSignals, NULL);
    Handlers[SIGINT].tripped = 1;
    is_tripped = 1;

The reason is that the signal handler run in a thread while the main thread goes through PyErr_CheckSignals, the main thread may notice the flags, clear them flags, find nothing, then exit.  You need the signal handler to supply all the data before setting the flags.

Really though, if you fix enough signal problems you'll converge with the patch at http://sourceforge.net/tracker/index.php?func=detail&aid=1564547&group_id=5470&atid=305470
No need for two patches that do the same thing.
History
Date User Action Args
2007-08-23 14:51:30adminlinkissue1643738 messages
2007-08-23 14:51:30admincreate