Hi On Friday 11 March 2005 03:40, Robert Reif wrote: > Raphael wrote: > >Hi > > > >Changelog: > > - try to have better match caps with hw caps so games can active more hw > >support > > > >Regards, > >Raphael > > > > > > > >- This->lock.DebugInfo->Spare[1] = 0; > >+ /*This->lock.DebugInfo->Spare[1] = 0;*/ > > DeleteCriticalSection(&(This->lock)); > > You have to zero this out or DeleteCriticalSection will try > to delete that static memory.
How ? At opposite it produce DebugInfo leaks as seen in RtlDeleteCriticalSection (dlls/ntdll/critsection.c line 197) <snip> if (crit->DebugInfo) { /* only free the ones we made in here */ if (!crit->DebugInfo->Spare[1]) { RtlFreeHeap( GetProcessHeap(), 0, crit->DebugInfo ); crit->DebugInfo = NULL; } } <snip> i will provide a WINE_DEBUG_UNSET_CS_NAME for this problem > >+ if (pDS->drvcaps.dwFlags | DSCAPS_PRIMARYMONO) pDS->pwfx->nChannels > > = 1; + if (pDS->drvcaps.dwFlags | DSCAPS_PRIMARY16BIT) > > pDS->pwfx->wBitsPerSample = 16; + pDS->pwfx->nBlockAlign = > > pDS->pwfx->wBitsPerSample * pDS->pwfx->nChannels / 8; + > > pDS->pwfx->nAvgBytesPerSec = pDS->pwfx->nSamplesPerSec * > > pDS->pwfx->nBlockAlign; + > > You can't do this and be compatible with windows. How ? Since i have this code (ie use better caps from my sound card) i have few latency problems on dsound (ie fewer buffer underruns) I don't think windows always use sound cards as 22Kh mono channels > >+#ifndef __WINE_DSOUND_PRIVATE_H > >+#define __WINE_DSOUND_PRIVATE_H > > You can't include this more than once because there is only one .h file > so it's not really necessary. Yes, but it cost nothing to do and its more robust > >+#define WINE_SET_CS_NAME(cs, name) (cs)->DebugInfo->Spare[1] = (DWORD) > > name +#define WINE_GET_CS_NAME(cs) (const char*) > > (cs)->lock.DebugInfo->Spare[1] > > This is a wine specific trick and should probably be put somewhere global > so all users can be consistent. The name should have DEBUG in it > somewhere. Yes, it should be better but i prefered to centralize it on dsound before moving it to wine/debug.h Regards, Raphael
pgpowhjtBUhJv.pgp
Description: PGP signature