Commit fea27b13 authored by Jeremy White's avatar Jeremy White Committed by Alexandre Julliard

Revise winmm/time.c to fix timer resolution at 1 ms. This then allows

a much more efficient implementation of timer events and timeGetTime, and callers that used sub 10 ms resolution will now get correct results.
parent ce0e8f29
......@@ -2524,12 +2524,9 @@ void MMSYSTEM_MMTIME16to32(LPMMTIME mmt32, const MMTIME16* mmt16)
*/
MMRESULT16 WINAPI timeGetSystemTime16(LPMMTIME16 lpTime, UINT16 wSize)
{
TRACE("(%p, %u);\n", lpTime, wSize);
if (wSize >= sizeof(*lpTime)) {
lpTime->wType = TIME_MS;
TIME_MMTimeStart();
lpTime->u.ms = WINMM_SysTimeMS;
lpTime->u.ms = GetTickCount();
TRACE("=> %lu\n", lpTime->u.ms);
}
......
......@@ -162,7 +162,7 @@ typedef struct tagWINE_TIMERENTRY {
DWORD dwUser;
UINT16 wFlags;
UINT16 wTimerID;
UINT uCurTime;
DWORD dwTriggerTime;
struct tagWINE_TIMERENTRY* lpNext;
} WINE_TIMERENTRY, *LPWINE_TIMERENTRY;
......@@ -285,7 +285,6 @@ void TIME_MMTimeStop(void);
/* Global variables */
extern LPWINE_MM_IDATA WINMM_IData;
extern DWORD WINMM_SysTimeMS;
/* pointers to 16 bit functions (if sibling MMSYSTEM.DLL is loaded
* NULL otherwise
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment