playlist/cue: map "PERFORMER" to "artist" or "album artist"
Implements Mantis ticket 0003549.
This commit is contained in:
parent
f351550534
commit
acaa725478
2
NEWS
2
NEWS
|
@ -9,6 +9,8 @@ ver 0.17.2 (2012/??/??)
|
||||||
* output:
|
* output:
|
||||||
- httpd: use monotonic clock, avoid hiccups after system clock adjustment
|
- httpd: use monotonic clock, avoid hiccups after system clock adjustment
|
||||||
- httpd: fix throttling bug after resuming playback
|
- httpd: fix throttling bug after resuming playback
|
||||||
|
* playlist:
|
||||||
|
- cue: map "PERFORMER" to "artist" or "album artist"
|
||||||
* mapper: fix non-UTF8 music directory name
|
* mapper: fix non-UTF8 music directory name
|
||||||
* mapper: fix potential crash in file permission check
|
* mapper: fix potential crash in file permission check
|
||||||
* playlist: fix use-after-free bug
|
* playlist: fix use-after-free bug
|
||||||
|
|
|
@ -216,9 +216,19 @@ cue_parser_feed2(struct cue_parser *parser, char *p)
|
||||||
if (tag != NULL)
|
if (tag != NULL)
|
||||||
cue_parse_rem(p, tag);
|
cue_parse_rem(p, tag);
|
||||||
} else if (strcmp(command, "PERFORMER") == 0) {
|
} else if (strcmp(command, "PERFORMER") == 0) {
|
||||||
|
/* MPD knows a "performer" tag, but it is not a good
|
||||||
|
match for this CUE tag; from the Hydrogenaudio
|
||||||
|
Knowledgebase: "At top-level this will specify the
|
||||||
|
CD artist, while at track-level it specifies the
|
||||||
|
track artist." */
|
||||||
|
|
||||||
|
enum tag_type type = parser->state == TRACK
|
||||||
|
? TAG_ARTIST
|
||||||
|
: TAG_ALBUM_ARTIST;
|
||||||
|
|
||||||
struct tag *tag = cue_current_tag(parser);
|
struct tag *tag = cue_current_tag(parser);
|
||||||
if (tag != NULL)
|
if (tag != NULL)
|
||||||
cue_add_tag(tag, TAG_PERFORMER, p);
|
cue_add_tag(tag, type, p);
|
||||||
} else if (strcmp(command, "TITLE") == 0) {
|
} else if (strcmp(command, "TITLE") == 0) {
|
||||||
if (parser->state == HEADER)
|
if (parser->state == HEADER)
|
||||||
cue_add_tag(parser->tag, TAG_ALBUM, p);
|
cue_add_tag(parser->tag, TAG_ALBUM, p);
|
||||||
|
|
Loading…
Reference in New Issue