diff options
author | Max Kellermann <max@duempel.org> | 2008-04-12 04:13:41 +0000 |
---|---|---|
committer | Eric Wong <normalperson@yhbt.net> | 2008-04-12 04:13:41 +0000 |
commit | f25ff426390cc50bc601ea7cfc7c04b56b06621b (patch) | |
tree | 0267d6253c87f575a3f350034526204733d70b29 | |
parent | 9760325ee6a716a526f1adde9b6f1d861f3f9101 (diff) | |
download | mpd-f25ff426390cc50bc601ea7cfc7c04b56b06621b.tar.gz mpd-f25ff426390cc50bc601ea7cfc7c04b56b06621b.tar.xz mpd-f25ff426390cc50bc601ea7cfc7c04b56b06621b.zip |
sleep when waiting for cross-fade chunks
When there are not enough decode cross-fade chunks in the buffer yet,
the current code does busy-wait, which will delay the decoder even
more. sleep instead, expecting the decoder to wake us up.
git-svn-id: https://svn.musicpd.org/mpd/trunk@7272 09075e82-0dd4-0310-85a5-a0d7c8717e4f
-rw-r--r-- | src/decode.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/decode.c b/src/decode.c index 84eeada3f..145f034b1 100644 --- a/src/decode.c +++ b/src/decode.c @@ -536,10 +536,12 @@ static void decodeParent(PlayerControl * pc, DecoderControl * dc, OutputBuffer * running, abort cross fading */ doCrossFade = -1; - } else + } else { /* wait for the decoder */ + player_sleep(); continue; + } } } |