Change 19965 by [EMAIL PROTECTED] on 2003/07/03 18:58:25
Subject: [PATCH] Win32: fix WM_TIMER handling
From: Mattia Barbon <[EMAIL PROTECTED]>
Date: Thu, 3 Jul 2003 16:05:23 +0200 (ora legale Europa occidentale)
Message-ID: <[EMAIL PROTECTED]>
Affected files ...
... //depot/perl/win32/win32.c#224 edit
Differences ...
==== //depot/perl/win32/win32.c#224 (text) ====
Index: perl/win32/win32.c
--- perl/win32/win32.c#223~19673~ Tue Jun 3 02:51:59 2003
+++ perl/win32/win32.c Thu Jul 3 11:58:25 2003
@@ -1884,10 +1884,12 @@
case WM_TIMER: {
/* alarm() is a one-shot but SetTimer() repeats so kill it */
- if (w32_timerid) {
+ if (w32_timerid && w32_timerid==msg.wParam) {
KillTimer(NULL,w32_timerid);
w32_timerid=0;
}
+ else
+ goto FallThrough;
/* Now fake a call to signal handler */
if (do_raise(aTHX_ 14)) {
sig_terminate(aTHX_ 14);
@@ -1897,6 +1899,7 @@
/* Otherwise do normal Win32 thing - in case it is useful */
default:
+ FallThrough:
TranslateMessage(&msg);
DispatchMessage(&msg);
ours = 0;
End of Patch.