From 5aa1b606aa0bda35931bbd3f9a6c52b68b17a4bf Mon Sep 17 00:00:00 2001 From: Scott Wheeler Date: Wed, 30 Jan 2008 20:21:31 +0000 Subject: [PATCH] Try to work around iTunes putting binary data in a comments field by 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 | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/taglib/mpeg/id3v2/id3v2tag.cpp b/taglib/mpeg/id3v2/id3v2tag.cpp index 0ee64ab6..276a15df 100644 --- a/taglib/mpeg/id3v2/id3v2tag.cpp +++ b/taglib/mpeg/id3v2/id3v2tag.cpp @@ -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(*it)->description().isEmpty()) + return (*it)->toString(); + } + + return comments.front()->toString(); } String ID3v2::Tag::genre() const