PlaylistSong: always merge tags and LastModified

This commit is contained in:
Max Kellermann 2014-07-12 19:41:04 +02:00
parent 80d9baa9e8
commit 74e95e88d8

View File

@ -33,7 +33,7 @@
static void
merge_song_metadata(DetachedSong &add, const DetachedSong &base)
{
{
if (base.GetTag().IsDefined()) {
TagBuilder builder(add.GetTag());
builder.Complement(base.GetTag());
add.SetTag(builder.Commit());
@ -42,16 +42,6 @@ merge_song_metadata(DetachedSong &add, const DetachedSong &base)
add.SetLastModified(base.GetLastModified());
}
static void
apply_song_metadata(DetachedSong &dest, const DetachedSong &src)
{
if (!src.GetTag().IsDefined() &&
src.GetStartMS() == 0 && src.GetEndMS() == 0)
return;
merge_song_metadata(dest, src);
}
static bool
playlist_check_load_song(DetachedSong &song, const SongLoader &loader)
{
@ -63,7 +53,7 @@ playlist_check_load_song(DetachedSong &song, const SongLoader &loader)
if (!song.HasRealURI() && tmp->HasRealURI())
song.SetRealURI(tmp->GetRealURI());
apply_song_metadata(song, *tmp);
merge_song_metadata(song, *tmp);
delete tmp;
return true;
}