diff options
-rw-r--r-- | lib/rbcodec/metadata/id3tags.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/lib/rbcodec/metadata/id3tags.c b/lib/rbcodec/metadata/id3tags.c index e7fed7c868..fed99d81a0 100644 --- a/lib/rbcodec/metadata/id3tags.c +++ b/lib/rbcodec/metadata/id3tags.c | |||
@@ -299,7 +299,10 @@ static int parsegenre( struct mp3entry* entry, char* tag, int bufferpos ) | |||
299 | /* parse embed albumart */ | 299 | /* parse embed albumart */ |
300 | static int parsealbumart( struct mp3entry* entry, char* tag, int bufferpos ) | 300 | static int parsealbumart( struct mp3entry* entry, char* tag, int bufferpos ) |
301 | { | 301 | { |
302 | entry->has_embedded_albumart = false; | 302 | /* don't parse albumart if already one found. This callback function is |
303 | * called unconditionally. */ | ||
304 | if(entry->has_embedded_albumart) | ||
305 | return bufferpos; | ||
303 | 306 | ||
304 | /* we currently don't support unsynchronizing albumart */ | 307 | /* we currently don't support unsynchronizing albumart */ |
305 | if (entry->albumart.type == AA_TYPE_UNSYNC) | 308 | if (entry->albumart.type == AA_TYPE_UNSYNC) |
@@ -735,6 +738,10 @@ void setid3v2title(int fd, struct mp3entry *entry) | |||
735 | bool itunes_gapless = false; | 738 | bool itunes_gapless = false; |
736 | #endif | 739 | #endif |
737 | 740 | ||
741 | #ifdef HAVE_ALBUMART | ||
742 | entry->has_embedded_albumart = false; | ||
743 | #endif | ||
744 | |||
738 | global_ff_found = false; | 745 | global_ff_found = false; |
739 | 746 | ||
740 | /* Bail out if the tag is shorter than 10 bytes */ | 747 | /* Bail out if the tag is shorter than 10 bytes */ |