summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorMiika Pekkarinen <miipekk@ihme.org>2005-10-30 08:51:47 +0000
committerMiika Pekkarinen <miipekk@ihme.org>2005-10-30 08:51:47 +0000
commitb142a58124b188e81e9f00eb658d51e4d2d73489 (patch)
tree3092b608cfac58fd41483e04740c47ea012a9600 /apps
parent74528fc4a47d589794d4f40911995814a4f9daa7 (diff)
downloadrockbox-b142a58124b188e81e9f00eb658d51e4d2d73489.zip
rockbox-b142a58124b188e81e9f00eb658d51e4d2d73489.tar.gz
rockbox-b142a58124b188e81e9f00eb658d51e4d2d73489.tar.bz2
rockbox-b142a58124b188e81e9f00eb658d51e4d2d73489.tar.xz
Moved also the other mutex into a right place.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7687 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps')
-rw-r--r--apps/playback.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/apps/playback.c b/apps/playback.c
index 3c2180e..cc5d601 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) {