dinput: Add DebugInfo to critical sections.

Jan Zerebecki jan.wine at zerebecki.de
Thu Mar 8 09:32:50 CST 2007


---
If this patch is rejected from inclusion, please tell me why, as
I would have to ask anyway.

 dlls/dinput/joystick_linuxinput.c |    2 ++
 dlls/dinput/keyboard.c            |    2 ++
 dlls/dinput/mouse.c               |    2 ++
 3 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/dlls/dinput/joystick_linuxinput.c b/dlls/dinput/joystick_linuxinput.c
index 8df801e..bfade84 100644
--- a/dlls/dinput/joystick_linuxinput.c
+++ b/dlls/dinput/joystick_linuxinput.c
@@ -365,6 +365,7 @@ static JoystickImpl *alloc_device(REFGUID rguid, const void *jvt, IDirectInputIm
   newDevice->base.ref = 1;
   memcpy(&newDevice->base.guid, rguid, sizeof(*rguid));
   InitializeCriticalSection(&newDevice->base.crit);
+  newDevice->base.crit.DebugInfo->Spare[0] = (DWORD_PTR)(__FILE__ ": JoystickImpl*->base.crit");
   newDevice->joyfd = -1;
   newDevice->dinput = dinput;
   newDevice->joydev = joydev;
@@ -527,6 +528,7 @@ static ULONG WINAPI JoystickAImpl_Release(LPDIRECTINPUTDEVICE8A iface)
         release_DataFormat(&This->base.data_format);
 
         IDirectInput_Release((LPDIRECTINPUTDEVICE8A)This->dinput);
+        This->base.crit.DebugInfo->Spare[0] = 0;
         DeleteCriticalSection(&This->base.crit);
         
         HeapFree(GetProcessHeap(),0,This);
diff --git a/dlls/dinput/keyboard.c b/dlls/dinput/keyboard.c
index ca98738..a634156 100644
--- a/dlls/dinput/keyboard.c
+++ b/dlls/dinput/keyboard.c
@@ -196,6 +196,7 @@ static SysKeyboardImpl *alloc_device(REFGUID rguid, const void *kvt, IDirectInpu
     memcpy(&newDevice->base.guid, rguid, sizeof(*rguid));
     newDevice->dinput = dinput;
     InitializeCriticalSection(&newDevice->base.crit);
+    newDevice->base.crit.DebugInfo->Spare[0] = (DWORD_PTR)(__FILE__ ": SysKeyboardImpl*->base.crit");
 
     /* Create copy of default data format */
     if (!(df = HeapAlloc(GetProcessHeap(), 0, c_dfDIKeyboard.dwSize))) goto failed;
@@ -290,6 +291,7 @@ static ULONG WINAPI SysKeyboardAImpl_Release(LPDIRECTINPUTDEVICE8A iface)
     release_DataFormat(&This->base.data_format);
 
     IDirectInput_Release((LPDIRECTINPUTDEVICE8A)This->dinput);
+    This->base.crit.DebugInfo->Spare[0] = 0;
     DeleteCriticalSection(&This->base.crit);
     HeapFree(GetProcessHeap(), 0, This);
 
diff --git a/dlls/dinput/mouse.c b/dlls/dinput/mouse.c
index 21f3776..b398f2f 100644
--- a/dlls/dinput/mouse.c
+++ b/dlls/dinput/mouse.c
@@ -177,6 +177,7 @@ static SysMouseImpl *alloc_device(REFGUID rguid, const void *mvt, IDirectInputIm
     newDevice->base.dwCoopLevel = DISCL_NONEXCLUSIVE | DISCL_BACKGROUND;
     memcpy(&newDevice->base.guid, rguid, sizeof(*rguid));
     InitializeCriticalSection(&newDevice->base.crit);
+    newDevice->base.crit.DebugInfo->Spare[0] = (DWORD_PTR)(__FILE__ ": SysMouseImpl*->base.crit");
     newDevice->dinput = dinput;
 
     /* Create copy of default data format */
@@ -278,6 +279,7 @@ static ULONG WINAPI SysMouseAImpl_Release(LPDIRECTINPUTDEVICE8A iface)
     release_DataFormat(&This->base.data_format);
 
     IDirectInput_Release((LPDIRECTINPUTDEVICE8A)This->dinput);
+    This->base.crit.DebugInfo->Spare[0] = 0;
     DeleteCriticalSection(&This->base.crit);
     HeapFree(GetProcessHeap(),0,This);
     return 0;



More information about the wine-patches mailing list