From 2ec6b176bd0fc41c6d00f244a4d8d6bdefa2c620 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Sun, 15 May 2011 10:21:59 +0200 Subject: =?UTF-8?q?Issue=20#12060:=20Use=20sig=5Fatomic=5Ft=20type=20and?= =?UTF-8?q?=20volatile=20keyword=20in=20the=20signal=20module.=20Patch=20w?= =?UTF-8?q?ritten=20by=20Charles-Fran=C3=A7ois=20Natali.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Misc/NEWS | 3 +++ Modules/signalmodule.c | 6 +++--- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/Misc/NEWS b/Misc/NEWS index 8618363..c41e475 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -10,6 +10,9 @@ What's New in Python 3.1.4? Core and Builtins ----------------- +- Issue #12060: Use sig_atomic_t type and volatile keyword in the signal + module. Patch written by Charles-François Natali. + - Issue #1195: Fix input() if it is interrupted by CTRL+d and then CTRL+c, clear the end-of-file indicator after CTRL+d. diff --git a/Modules/signalmodule.c b/Modules/signalmodule.c index 1429770..5a6c777 100644 --- a/Modules/signalmodule.c +++ b/Modules/signalmodule.c @@ -78,12 +78,12 @@ static long main_thread; static pid_t main_pid; #endif -static struct { - int tripped; +static volatile struct { + sig_atomic_t tripped; PyObject *func; } Handlers[NSIG]; -static sig_atomic_t wakeup_fd = -1; +static volatile sig_atomic_t wakeup_fd = -1; /* Speed up sigcheck() when none tripped */ static volatile sig_atomic_t is_tripped = 0; -- cgit v0.12