=?UTF-8?Q?J=C3=B6rg=20H=C3=B6hle=20?=: winmm: Handle GetTickCount overflow in MIDI player.

Alexandre Julliard julliard at winehq.org
Thu Feb 14 15:01:32 CST 2013


Module: wine
Branch: master
Commit: f67bc43e224ea64002bd2207ffa21d0db11bbf60
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=f67bc43e224ea64002bd2207ffa21d0db11bbf60

Author: Jörg Höhle <hoehle at users.sourceforge.net>
Date:   Thu Feb 14 07:39:50 2013 +0100

winmm: Handle GetTickCount overflow in MIDI player.

---

 dlls/winmm/winmm.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/dlls/winmm/winmm.c b/dlls/winmm/winmm.c
index bb686e0..13499ad 100644
--- a/dlls/winmm/winmm.c
+++ b/dlls/winmm/winmm.c
@@ -1143,8 +1143,8 @@ start_header:
 
 	    dwToGo = lpMidiStrm->dwStartTicks + lpMidiStrm->dwPositionMS;
 
-	    TRACE("%d/%d/%d\n", dwToGo, GetTickCount(), me->dwDeltaTime);
-	    while ((dwCurrTC = GetTickCount()) < dwToGo) {
+	    TRACE("%u/%u/%u\n", dwToGo, GetTickCount(), me->dwDeltaTime);
+	    while (dwToGo - (dwCurrTC = GetTickCount()) <= MAXLONG) {
 		if (MsgWaitForMultipleObjects(0, NULL, FALSE, dwToGo - dwCurrTC, QS_ALLINPUT) == WAIT_OBJECT_0) {
 		    /* got a message, handle it */
 		    while (PeekMessageA(&msg, 0, 0, 0, PM_REMOVE)) {




More information about the wine-cvs mailing list