From 2707890d1b8aee089bc3b8fd0f395735aff6261e Mon Sep 17 00:00:00 2001 From: Alexey Yakovenko Date: Wed, 16 Jul 2014 14:35:17 +0200 Subject: moved more output->stop calls to streamer thread --- main.c | 3 --- streamer.c | 5 +++++ 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/main.c b/main.c index d2466c94..bcf07fbc 100644 --- a/main.c +++ b/main.c @@ -587,11 +587,9 @@ player_mainloop (void) { streamer_set_nextsong (-2, 0); break; case DB_EV_NEXT: - output->stop (); streamer_move_to_nextsong (1); break; case DB_EV_PREV: - output->stop (); streamer_move_to_prevsong (); break; case DB_EV_PAUSE: @@ -610,7 +608,6 @@ player_mainloop (void) { } break; case DB_EV_PLAY_RANDOM: - output->stop (); streamer_move_to_randomsong (); break; case DB_EV_PLAYLIST_REFRESH: diff --git a/streamer.c b/streamer.c index 705139c9..f7f61fb0 100644 --- a/streamer.c +++ b/streamer.c @@ -419,6 +419,9 @@ stop_after_album_check (playItem_t *cur, playItem_t *next) { static int streamer_move_to_nextsong_real (int reason) { + if (reason) { + plug_get_output ()->stop (); + } trace ("streamer_move_to_nextsong (%d)\n", reason); pl_lock (); if (!streamer_playlist) { @@ -638,6 +641,7 @@ streamer_move_to_nextsong_real (int reason) { static int streamer_move_to_prevsong_real (void) { + plug_get_output ()->stop (); pl_lock (); if (streamer_playlist) { plt_unref (streamer_playlist); @@ -751,6 +755,7 @@ streamer_move_to_prevsong_real (void) { static int streamer_move_to_randomsong_real (void) { + plug_get_output ()->stop (); if (!streamer_playlist) { streamer_playlist = plt_get_curr (); } -- cgit v1.2.3