From b142a58124b188e81e9f00eb658d51e4d2d73489 Mon Sep 17 00:00:00 2001 From: Miika Pekkarinen Date: Sun, 30 Oct 2005 08:51:47 +0000 Subject: [PATCH] Moved also the other mutex into a right place. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7687 a1c6a512-1295-4272-9138-f99709370657 --- apps/playback.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/playback.c b/apps/playback.c index 3c2180ebc9..cc5d601c90 100644 --- a/apps/playback.c +++ b/apps/playback.c @@ -764,7 +764,7 @@ void yield_codecs(void) while ((pcmbuf_is_crossfade_active() || pcmbuf_is_lowdata()) && !ci.stop_codec && playing && queue_empty(&audio_queue) && filebufused > (128*1024)) - yield(); + sleep(1); } /* FIXME: This code should be made more generic and move to metadata.c */ @@ -818,6 +818,7 @@ void audio_fill_file_buffer(void) if (tracks[track_widx].start_pos != 0) tracks[track_widx].codecsize = 0; + mutex_lock(&mutex_bufferfill); i = 0; size = MIN(tracks[track_widx].filerem, AUDIO_FILL_CYCLE); while (i < size) { @@ -845,6 +846,7 @@ void audio_fill_file_buffer(void) filebufused += rc; fill_bytesleft -= rc; } + mutex_unlock(&mutex_bufferfill); /*logf("Filled:%d/%d", tracks[track_widx].available, tracks[track_widx].filerem);*/ @@ -1651,9 +1653,7 @@ void audio_thread(void) while (1) { yield_codecs(); - mutex_lock(&mutex_bufferfill); audio_check_buffer(); - mutex_unlock(&mutex_bufferfill); queue_wait_w_tmo(&audio_queue, &ev, 0); switch (ev.id) {