From c594afeee70b29cc88e337a3b8fbd2a39ac37822 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Fri, 5 Nov 2010 18:34:06 +0100 Subject: pipe: add helper function music_pipe_empty() --- src/output_all.c | 4 ++-- src/pipe.h | 6 ++++++ src/player_thread.c | 4 ++-- 3 files changed, 10 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/output_all.c b/src/output_all.c index 4b5ba3a6f..86e78e13e 100644 --- a/src/output_all.c +++ b/src/output_all.c @@ -266,7 +266,7 @@ audio_output_all_open(const struct audio_format *audio_format, else /* if the pipe hasn't been cleared, the the audio format must not have changed */ - assert(music_pipe_size(g_mp) == 0 || + assert(music_pipe_empty(g_mp) || audio_format_equals(audio_format, &input_audio_format)); @@ -378,7 +378,7 @@ audio_output_all_check(void) assert(g_mp != NULL); while ((chunk = music_pipe_peek(g_mp)) != NULL) { - assert(music_pipe_size(g_mp) > 0); + assert(!music_pipe_empty(g_mp)); if (!chunk_is_consumed(chunk)) /* at least one output is not finished playing diff --git a/src/pipe.h b/src/pipe.h index f91fc1c7f..2825b320a 100644 --- a/src/pipe.h +++ b/src/pipe.h @@ -99,4 +99,10 @@ music_pipe_push(struct music_pipe *mp, struct music_chunk *chunk); unsigned music_pipe_size(const struct music_pipe *mp); +static inline bool +music_pipe_empty(const struct music_pipe *mp) +{ + return music_pipe_size(mp) == 0; +} + #endif diff --git a/src/player_thread.c b/src/player_thread.c index e2c9b6f93..18b8121a9 100644 --- a/src/player_thread.c +++ b/src/player_thread.c @@ -736,7 +736,7 @@ static void do_play(void) if (player.paused) notify_wait(&pc.notify); - else if (music_pipe_size(player.pipe) > 0) { + else if (!music_pipe_empty(player.pipe)) { /* at least one music chunk is ready - send it to the audio output */ @@ -757,7 +757,7 @@ static void do_play(void) /* check the size of the pipe again, because the decoder thread may have added something since we last checked */ - if (music_pipe_size(player.pipe) == 0) + if (music_pipe_empty(player.pipe)) break; } else { /* the decoder is too busy and hasn't provided -- cgit v1.2.3