diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/player_thread.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/player_thread.c b/src/player_thread.c index 1794ad404..9d13e44f9 100644 --- a/src/player_thread.c +++ b/src/player_thread.c @@ -472,11 +472,8 @@ play_chunk(struct song *song, struct music_chunk *chunk, /* send the chunk to the audio outputs */ - if (!audio_output_all_play(chunk)) { - pc.errored_song = dc.current_song; - pc.error = PLAYER_ERROR_AUDIO; + if (!audio_output_all_play(chunk)) return false; - } pc.total_play_time += (double)chunk->length / audio_format_time_to_size(format); @@ -562,6 +559,8 @@ play_next_chunk(struct player *player) if (!success) { music_buffer_return(player_buffer, chunk); + pc.error = PLAYER_ERROR_AUDIO; + /* pause: the user may resume playback as soon as an audio output becomes available */ pc.state = PLAYER_STATE_PAUSE; |