]> granicus.if.org Git - taglib/commitdiff
Try to work around iTunes putting binary data in a comments field by
authorScott Wheeler <wheeler@kde.org>
Wed, 30 Jan 2008 20:21:31 +0000 (20:21 +0000)
committerScott Wheeler <wheeler@kde.org>
Wed, 30 Jan 2008 20:21:31 +0000 (20:21 +0000)
preferring a comment without an empty description.

FEATURE:137553

git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@768865 283d02a7-25f6-0310-bc7c-ecb5cbfe19da

taglib/mpeg/id3v2/id3v2tag.cpp

index 0ee64ab6ba142b0f447185deb4827d8b144ff4fb..276a15dfc6fffac0dfb83963881bce0b67f0abca 100644 (file)
@@ -118,9 +118,18 @@ String ID3v2::Tag::album() const
 
 String ID3v2::Tag::comment() const
 {
-  if(!d->frameListMap["COMM"].isEmpty())
-    return d->frameListMap["COMM"].front()->toString();
-  return String::null;
+  const FrameList &comments = d->frameListMap["COMM"];
+
+  if(comments.isEmpty())
+    return String::null;
+
+  for(FrameList::ConstIterator it = comments.begin(); it != comments.end(); ++it)
+  {
+    if(static_cast<CommentsFrame *>(*it)->description().isEmpty())
+      return (*it)->toString();
+  }
+
+  return comments.front()->toString();
 }
 
 String ID3v2::Tag::genre() const