http://bugs.winehq.org/show_bug.cgi?id=13723
Summary: Sound buffer freed by both winealsa.drv and dsound Product: Wine Version: CVS/GIT Platform: Other OS/Version: other Status: NEW Severity: normal Priority: P2 Component: directx-dsound AssignedTo: wine-bugs@winehq.org ReportedBy: dank@kegel.com
So, who owns the buffer? Looks like dsound and winealsa.drv are having a little argument here. This doesn't happen on every run, but it seems kinda bad:
$ cd dlls/dsound/tests $ RUNTEST_USE_VALGRIND=1 ../../../tools/runtest -P wine -M dsound.dll -T ../../.. -p dsound_test.exe.so ds3d.c
...
Invalid free() / delete / delete[] at notify_free (heap.c:199) by RtlFreeHeap (heap.c:1284) by DirectSoundDevice_Release (dsound.c:1285) by IDirectSoundImpl_Release (dsound.c:304) by IDirectSound_IDirectSound_Release (dsound.c:442) by test_for_driver (ds3d.c:1004) by dsenum_callback (ds3d.c:1281) by DirectSoundEnumerateA (dsound_main.c:315) by ds3d_tests (ds3d.c:1324) by func_ds3d (ds3d.c:1344) by run_test (test.h:421) by main (test.h:470) Address 0x466ef78 is 0 bytes inside a block of size 65,536 free'd at free (vg_replace_malloc.c:323) by snd_pcm_munmap (in /usr/lib/libasound.so.2.0.0) by snd_pcm_hw_free (in /usr/lib/libasound.so.2.0.0) by snd_pcm_generic_hw_free (in /usr/lib/libasound.so.2.0.0) by snd_pcm_hw_free (in /usr/lib/libasound.so.2.0.0) by (within /usr/lib/libasound.so.2.0.0) by snd_pcm_hw_free (in /usr/lib/libasound.so.2.0.0) by snd_pcm_close (in /usr/lib/libasound.so.2.0.0) by IDsDriverBufferImpl_Release (dsoutput.c:274) by DSOUND_PrimaryClose (primary.c:299) by DSOUND_PrimaryDestroy (primary.c:331) by DirectSoundDevice_Release (dsound.c:1268) by IDirectSoundImpl_Release (dsound.c:304) by IDirectSound_IDirectSound_Release (dsound.c:442) by test_for_driver (ds3d.c:1004) by dsenum_callback (ds3d.c:1281) by DirectSoundEnumerateA (dsound_main.c:315) by ds3d_tests (ds3d.c:1324) by func_ds3d (ds3d.c:1344) by run_test (test.h:421)