aboutsummaryrefslogtreecommitdiffstats
path: root/src/inputPlugins/oggvorbis_plugin.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/inputPlugins/oggvorbis_plugin.c')
-rw-r--r--src/inputPlugins/oggvorbis_plugin.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/inputPlugins/oggvorbis_plugin.c b/src/inputPlugins/oggvorbis_plugin.c
index aa094856e..6881b9c41 100644
--- a/src/inputPlugins/oggvorbis_plugin.c
+++ b/src/inputPlugins/oggvorbis_plugin.c
@@ -155,12 +155,17 @@ void ogg_getReplayGainInfo(char ** comments, ReplayGainInfo ** infoPtr) {
}
static const char * VORBIS_COMMENT_TRACK_KEY = "tracknumber";
+static const char * VORBIS_COMMENT_DISC_KEY = "discnumber";
static inline unsigned int ogg_parseCommentAddToTag(char * comment,
unsigned int itemType, MpdTag ** tag)
{
- const char * needle = (itemType == TAG_ITEM_TRACK) ?
- VORBIS_COMMENT_TRACK_KEY : mpdTagItemKeys[itemType];
+ const char * needle;
+ switch (itemType) {
+ case TAG_ITEM_TRACK: needle = VORBIS_COMMENT_TRACK_KEY; break;
+ case TAG_ITEM_DISC: needle = VORBIS_COMMENT_DISC_KEY; break;
+ default: needle = mpdTagItemKeys[itemType];
+ }
unsigned int len = strlen(needle);
if(strncasecmp(comment, needle, len) == 0 && *(comment+len) == '=') {