From 47bbb73ee1247a02413acfb66f5e4b7c3a5bc833 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Tue, 17 Mar 2009 20:28:37 +0100 Subject: player_thread: ignore time stamp on empty chunks If a music_chunk does not contain any PCM data, then the "times" and "bit_rate" attributes are undefined. --- src/player_thread.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'src/player_thread.c') diff --git a/src/player_thread.c b/src/player_thread.c index cc79eb3c2..59443696c 100644 --- a/src/player_thread.c +++ b/src/player_thread.c @@ -416,9 +416,6 @@ play_chunk(struct song *song, struct music_chunk *chunk, assert(music_chunk_check_format(chunk, format)); - pc.elapsed_time = chunk->times; - pc.bit_rate = chunk->bit_rate; - if (chunk->tag != NULL) { if (!song_is_file(song)) { /* always update the tag of remote streams */ @@ -439,6 +436,12 @@ play_chunk(struct song *song, struct music_chunk *chunk, } } + if (chunk->length == 0) + return true; + + pc.elapsed_time = chunk->times; + pc.bit_rate = chunk->bit_rate; + /* apply software volume */ success = pcm_volume(chunk->data, chunk->length, -- cgit v1.2.3