tag/Set: do AlbumArtist/Artist fallback only if AlbumArtist is not disabled
On "list albumartist", songs that have no AlbumArtist tag will use the Artist tag. However, if AlbumArtist is disabled via "metadata_to_use", the TagBuilder::AddItem() call is ignored, and PrintUniqueTag() attempts to print a nullptr string. This commit fixes the problem by attempting the fallback only if AlbumArtist is not disabled.
This commit is contained in:
parent
cbf79769d3
commit
b5ba94f1de
2
NEWS
2
NEWS
|
@ -1,4 +1,6 @@
|
|||
ver 0.19.3 (not yet released)
|
||||
* protocol
|
||||
- fix "(null)" result string to "list" when AlbumArtist is disabled
|
||||
* database
|
||||
- upnp: fix breakage due to malformed URIs
|
||||
* decoder
|
||||
|
|
|
@ -19,6 +19,7 @@
|
|||
|
||||
#include "Set.hxx"
|
||||
#include "TagBuilder.hxx"
|
||||
#include "TagSettings.h"
|
||||
|
||||
#include <assert.h>
|
||||
|
||||
|
@ -109,6 +110,7 @@ TagSet::InsertUnique(const Tag &tag,
|
|||
|
||||
if (!CheckUnique(type, tag, type, group_mask) &&
|
||||
(type != TAG_ALBUM_ARTIST ||
|
||||
ignore_tag_items[TAG_ALBUM_ARTIST] ||
|
||||
/* fall back to "Artist" if no "AlbumArtist" was found */
|
||||
!CheckUnique(type, tag, TAG_ARTIST, group_mask)))
|
||||
InsertUnique(tag, type, nullptr, group_mask);
|
||||
|
|
Loading…
Reference in New Issue