diff --git a/src/player/Thread.cxx b/src/player/Thread.cxx index 6e57ecb4ad..7b1b48eb4f 100644 --- a/src/player/Thread.cxx +++ b/src/player/Thread.cxx @@ -903,7 +903,10 @@ PlayerControl::LockUpdateSongTag(DetachedSong &song, streams may change tags dynamically */ return; - song.SetTag(new_tag); + if (!song.GetEndTime().IsZero()) + song.SetTag(Tag::Merge(new_tag, song.GetTag())); + else + song.SetTag(new_tag); LockSetTaggedSong(song);