From 441b71acd97d78f52f017922ef2a065282ffbf3f Mon Sep 17 00:00:00 2001 From: gewlitys Date: Fri, 13 Dec 2002 15:29:40 +0000 Subject: [PATCH] Fixed lockup if sbuf_size was zero git-svn-id: svn://svn.code.sf.net/p/sc2/code/trunk@421 8092fc87-c524-0410-9efc-e669fe64eaf9 --- sc2/src/sc2code/libs/sound/openal/trackplayer.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sc2/src/sc2code/libs/sound/openal/trackplayer.c b/sc2/src/sc2code/libs/sound/openal/trackplayer.c index 338b5b6c1..a0a5c0312 100644 --- a/sc2/src/sc2code/libs/sound/openal/trackplayer.c +++ b/sc2/src/sc2code/libs/sound/openal/trackplayer.c @@ -265,7 +265,8 @@ GetSoundData (void *data) LockMutex (soundSource[SPEECH_SOURCE].stream_mutex); if (soundSource[SPEECH_SOURCE].sample && soundSource[SPEECH_SOURCE].sample->decoder && - PlayingStream (SPEECH_SOURCE) && soundSource[SPEECH_SOURCE].sbuffer) + PlayingStream (SPEECH_SOURCE) && soundSource[SPEECH_SOURCE].sbuffer && + soundSource[SPEECH_SOURCE].sbuf_size > 0) { float played_time = (GetTimeCounter () - soundSource[SPEECH_SOURCE].start_time) / (float)ONE_SECOND; @@ -284,7 +285,7 @@ GetSoundData (void *data) //fprintf (stderr, "GetSoundData(): something's messed with timing, delta %d\n", delta); delta = 0; } - else if (delta > soundSource[SPEECH_SOURCE].sbuf_size * 2) + else if (delta > (int)(soundSource[SPEECH_SOURCE].sbuf_size * 2)) { //fprintf (stderr, "GetSoundData(): something's messed with timing, delta %d\n", delta); delta = 0;