fix deadlock issues on xp, hopefully.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@4319 fc73d0e0-1445-4013-8a0c-d673dee63da5
This commit is contained in:
parent
6ce12710eb
commit
1cd5a38a3e
1 changed files with 2 additions and 0 deletions
|
@ -961,6 +961,7 @@ static int DSOUND_InitCard (soundcardinfo_t *sc, int cardnum)
|
||||||
sc->audio_fd = cardnum;
|
sc->audio_fd = cardnum;
|
||||||
sc->selfpainting = true;
|
sc->selfpainting = true;
|
||||||
sc->handle = cond = Sys_CreateConditional();
|
sc->handle = cond = Sys_CreateConditional();
|
||||||
|
Sys_LockConditional(cond);
|
||||||
sc->thread = Sys_CreateThread("dsoundmixer", DSOUND_Thread, sc, THREADP_HIGHEST, 0);
|
sc->thread = Sys_CreateThread("dsoundmixer", DSOUND_Thread, sc, THREADP_HIGHEST, 0);
|
||||||
if (!sc->thread)
|
if (!sc->thread)
|
||||||
{
|
{
|
||||||
|
@ -970,6 +971,7 @@ static int DSOUND_InitCard (soundcardinfo_t *sc, int cardnum)
|
||||||
|
|
||||||
//wait for the thread to finish (along with all its error con printfs etc
|
//wait for the thread to finish (along with all its error con printfs etc
|
||||||
Sys_ConditionWait(cond);
|
Sys_ConditionWait(cond);
|
||||||
|
Sys_UnlockConditional(cond);
|
||||||
Sys_DestroyConditional(cond);
|
Sys_DestroyConditional(cond);
|
||||||
|
|
||||||
if (!sc->selfpainting)
|
if (!sc->selfpainting)
|
||||||
|
|
Loading…
Reference in a new issue