Deadlocking problems in winmm

Robert Lunnon bobl at optushome.com.au
Sat Apr 9 18:06:26 CDT 2005


On Sat, 9 Apr 2005 06:17 pm, Eric Pouech wrote:
> Robert Lunnon a écrit :
>
> sounds like the callback for the wave header is not called, so
> +audioio,+winmm,+mmtime would be helpful.
> A+


More information,

The instances of DDERR_SURFACEBUSY Begin with the section of code under. 
It looks suspiciously like the blt call didn't release the surface when the error occured, 
why this should be related to audio support being on I haven't  a clue

009:trace:ddraw:Main_DirectDrawSurface_Unlock (7ff307c8)->Unlock(0)
0009:trace:ddraw:Main_DirectDrawSurface_Unlock (7da71080)->Unlock(0)
0009:trace:ddraw:DIB_DirectDrawSurface_Blt (7ff307c8)->(7fd8f6e0,7da71080,7fd8f704,01008000,0)
0009:trace:ddraw:DIB_DirectDrawSurface_Blt 	destrect :581x462-794x550
0009:trace:ddraw:DIB_DirectDrawSurface_Blt 	srcrect  :1431655765x1431655765-1431655978x1431655853
0009:trace:ddraw:DIB_DirectDrawSurface_Blt 	flags: DDBLT_KEYSRC DDBLT_WAIT 
0009:trace:ddraw:Main_DirectDrawSurface_Lock (7da71080)->Lock(0,7fd8f534,00000010,00000000)
0009:trace:ddraw:Main_DirectDrawSurface_Lock  - locking flags : DDLOCK_READONLY 
0009:trace:ddraw:Main_DirectDrawSurface_Lock locked surface returning description : 
 - DDSD_CAPS : DDSCAPS_OFFSCREENPLAIN 
 - DDSD_HEIGHT : 19
 - DDSD_WIDTH : 11
 - DDSD_PITCH : 40
 - DDSD_LPSURFACE : 7da30000
 - DDSD_CKSRCBLT :  Low : 0  - High : 0
 - DDSD_PIXELFORMAT : ( DDPF_RGB , RGB bits: 24,  R ff0000 G 00ff00 B 0000ff)
0009:trace:ddraw:Main_DirectDrawSurface_Lock (7ff307c8)->Lock(0,7fd8f5b4,00000020,00000000)
0009:trace:ddraw:Main_DirectDrawSurface_Lock  - locking flags : DDLOCK_WRITEONLY 
0009:trace:ddraw:Main_DirectDrawSurface_Lock locked surface returning description : 
 - DDSD_CAPS : DDSCAPS_OFFSCREENPLAIN 
 - DDSD_HEIGHT : 550
 - DDSD_WIDTH : 794
 - DDSD_PITCH : 2384
 - DDSD_LPSURFACE : 7e140000
 - DDSD_PIXELFORMAT : ( DDPF_RGB , RGB bits: 24,  R ff0000 G 00ff00 B 0000ff)
******
0009:warn:ddraw:DIB_DirectDrawSurface_Blt Application gave us bad source rectangle for Blt.
******
0009:trace:ddraw:DIB_DirectDrawSurface_Blt (7ff301d0)->(44e1d8,7ff307c8,0,01000000,0)
0009:trace:ddraw:DIB_DirectDrawSurface_Blt 	destrect :3x22-797x572
0009:trace:ddraw:DIB_DirectDrawSurface_Blt 	flags: DDBLT_WAIT 
0009:warn:ddraw:DIB_DirectDrawSurface_Blt  Surface is busy, returning DDERR_SURFACEBUSY
0009:Call user32.PeekMessageA(7fd8fd10,00000000,00000000,00000000,00000000) ret=004392c9
0009:Call kernel32._CheckNotSysLevel(7fb44c80) ret=7fa9f995
0009:Ret  kernel32._CheckNotSysLevel() retval=00000009 ret=7fa9f995
0009:Call x11drv.MsgWaitForMultipleObjectsEx(00000000,00000000,00000000,000000ff,00000000) ret=7faec89b
0009:Call ntdll.NtCurrentTeb() ret=7f37fdd0
0009:Ret  ntdll.NtCurrentTeb() retval=d1d10000 ret=7f37fdd0
0009:Call ntdll.RtlEnterCriticalSection(7f3cbf80) ret=7f39ae49
0009:Ret  ntdll.RtlEnterCriticalSection() retval=00000000 ret=7f39ae49
0009:Call ntdll.RtlLeaveCriticalSection(7f3cbf80) ret=7f39ae6a
0009:Ret  ntdll.RtlLeaveCriticalSection() retval=00000000 ret=7f39ae6a
0009:Call ntdll.RtlEnterCriticalSection(7f3cbf80) ret=7f39ae49
0009:Ret  ntdll.RtlEnterCriticalSection() retval=00000000 ret=7f39ae49
0009:Call ntdll.RtlLeaveCriticalSection(7f3cbf80) ret=7f39ae6a
0009:Ret  ntdll.RtlLeaveCriticalSection() retval=00000000 ret=7f39ae6a
0009:Call kernel32.WaitForMultipleObjectsEx(00000001,7fd8f9d8,00000000,00000000,00000000) ret=7f37feef
0009:Call ntdll.NtWaitForMultipleObjects(00000001,7fd8f7e4,00000000,00000000,7fd8f7d8) ret=7fe2e4a1
0009: select( flags=12, cookie=7fd8f6c8, timeout=1113085739.449273 (-0.000076), handles={60} )
0009: select() = TIMEOUT



More information about the wine-devel mailing list