aboutsummaryrefslogtreecommitdiffstats
path: root/src/inputPlugins/mp3_plugin.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/inputPlugins/mp3_plugin.c')
-rw-r--r--src/inputPlugins/mp3_plugin.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/inputPlugins/mp3_plugin.c b/src/inputPlugins/mp3_plugin.c
index 2921c9351..9c5eb824a 100644
--- a/src/inputPlugins/mp3_plugin.c
+++ b/src/inputPlugins/mp3_plugin.c
@@ -230,7 +230,10 @@ static MpdTag * mp3_parseId3Tag(mp3DecodeData * data, signed long tagsize) {
else count += len;
}
- if(count != tagsize) goto fail;
+ if(count != tagsize) {
+ DEBUG("mp3_decode: error parsing ID3 tag\n");
+ goto fail;
+ }
id3_data = allocated;
}
@@ -262,7 +265,9 @@ int decodeNextFrameHeader(mp3DecodeData * data, MpdTag ** tag) {
(data->stream).this_frame);
if(tagsize>0) {
- if(tag) *tag =mp3_parseId3Tag(data, tagsize);
+ if(tag && !(*tag)) {
+ *tag =mp3_parseId3Tag(data, tagsize);
+ }
else {
mad_stream_skip(&(data->stream),
tagsize);