summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--playlist.c1
-rw-r--r--streamer.c6
-rw-r--r--streamer.h3
3 files changed, 9 insertions, 1 deletions
diff --git a/playlist.c b/playlist.c
index f99958a1..bbe99e3e 100644
--- a/playlist.c
+++ b/playlist.c
@@ -473,6 +473,7 @@ int
pl_remove (playItem_t *it) {
if (!it)
return -1;
+ streamer_song_removed_notify (it);
pl_count--;
if (playlist_current_ptr == it) {
playlist_current_ptr = NULL;
diff --git a/streamer.c b/streamer.c
index c6d85b00..dd012003 100644
--- a/streamer.c
+++ b/streamer.c
@@ -74,7 +74,11 @@ streamer_song_removed_notify (playItem_t *it) {
}
if (it == orig_streaming_song) {
orig_streaming_song = NULL;
- // FIXME: must queue new next song for streaming
+ // queue new next song for streaming
+ if (bytes_until_next_song > 0) {
+ streambuffer_fill = bytes_until_next_song;
+ pl_nextsong (0);
+ }
}
}
diff --git a/streamer.h b/streamer.h
index 80668f7d..4f434223 100644
--- a/streamer.h
+++ b/streamer.h
@@ -63,4 +63,7 @@ streamer_get_playpos (void);
int
streamer_is_buffering (void);
+void
+streamer_song_removed_notify (playItem_t *it);
+
#endif // __STREAMER_H