--- Source.pm 2008-02-01 12:46:08.000000000 +0100 +++ Source.pm 2008-02-01 12:44:27.000000000 +0100 @@ -449,6 +449,7 @@ closeSong($everyclient); resetSong($everyclient); resetSongQueue($everyclient); + $everyclient->readNextChunkOk(1); } elsif ($newmode eq "play") { @@ -2373,16 +2380,17 @@ my $nextURL = Slim::Player::Playlist::url( $client, $nextSong ); my $handler = Slim::Player::ProtocolHandlers->handlerForURL( $nextURL ); if ( $handler && $handler->can('onDecoderUnderrun') ) { + + # Flag that we don't want to try to read any more chunks + # until our callback is called. + $client->readNextChunkOk(0); + $handler->onDecoderUnderrun( $client, $nextURL, $callback, ); - # Flag that we don't want to try to read any more chunks - # until our callback is called. - $client->readNextChunkOk(0); - return; } }