summaryrefslogtreecommitdiff
path: root/mpd_ws.c
diff options
context:
space:
mode:
Diffstat (limited to 'mpd_ws.c')
-rw-r--r--mpd_ws.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/mpd_ws.c b/mpd_ws.c
index a12a6f7..b99ef29 100644
--- a/mpd_ws.c
+++ b/mpd_ws.c
@@ -250,7 +250,12 @@ void mpd_ws_update_song(struct mpd_ws_server *server) {
}
syslog(LOG_DEBUG, "Broadcasting: %s", server->current_song);
- client_broadcast(server, server->current_song);
+
+ /* Only broadcast if song actually changed */
+ if (strcmp(server->current_song, server->previous_song) != 0) {
+ client_broadcast(server, server->current_song);
+ strcpy(server->previous_song, server->current_song);
+ }
if (song) {
mpd_song_free(song);