From e6a501bbd6286b05b37bf6183113b35f4a1e6c13 Mon Sep 17 00:00:00 2001 From: =?utf8?q?J=C3=B6rg=20H=C3=B6hle?= Date: Tue, 29 Mar 2011 20:51:15 +0200 Subject: [PATCH] winmm: Trace DriverCallback once upon entry. --- dlls/winmm/driver.c | 24 +++++++++++++++++------- 1 file changed, 17 insertions(+), 7 deletions(-) diff --git a/dlls/winmm/driver.c b/dlls/winmm/driver.c index 23338d24940..8620fe698f2 100644 --- a/dlls/winmm/driver.c +++ b/dlls/winmm/driver.c @@ -531,34 +531,44 @@ LRESULT WINAPI DefDriverProc(DWORD_PTR dwDriverIdentifier, HDRVR hDrv, } /************************************************************************** + * DRIVER_getCallback [internal] + */ +static const char* DRIVER_getCallback(DWORD uFlags) +{ + switch(uFlags & DCB_TYPEMASK) { + case DCB_NULL: return "null"; + case DCB_WINDOW: return "window"; + case DCB_TASK: return "task"; + case DCB_EVENT: return "event"; + case DCB_FUNCTION: return "32bit function"; + default: return "UNKNOWN"; + } +} + +/************************************************************************** * DriverCallback [WINMM.@] */ BOOL WINAPI DriverCallback(DWORD_PTR dwCallBack, DWORD uFlags, HDRVR hDev, DWORD wMsg, DWORD_PTR dwUser, DWORD_PTR dwParam1, DWORD_PTR dwParam2) { - TRACE("(%08lX, %04X, %p, %04X, %08lX, %08lX, %08lX)\n", - dwCallBack, uFlags, hDev, wMsg, dwUser, dwParam1, dwParam2); + TRACE("(%08lX, %s %04X, %p, %04X, %08lX, %08lX, %08lX)\n", + dwCallBack, DRIVER_getCallback(uFlags), uFlags, hDev, wMsg, dwUser, dwParam1, dwParam2); switch (uFlags & DCB_TYPEMASK) { case DCB_NULL: - TRACE("Null !\n"); break; case DCB_WINDOW: - TRACE("Window(%04lX) handle=%p!\n", dwCallBack, hDev); PostMessageA((HWND)dwCallBack, wMsg, (WPARAM)hDev, dwParam1); break; case DCB_TASK: /* aka DCB_THREAD */ - TRACE("Task(%04lx) !\n", dwCallBack); PostThreadMessageA(dwCallBack, wMsg, (WPARAM)hDev, dwParam1); break; case DCB_FUNCTION: - TRACE("Function (32 bit) !\n"); if (dwCallBack) ((LPDRVCALLBACK)dwCallBack)(hDev, wMsg, dwUser, dwParam1, dwParam2); break; case DCB_EVENT: - TRACE("Event(%08lx) !\n", dwCallBack); SetEvent((HANDLE)dwCallBack); break; #if 0 -- 2.11.4.GIT