diff --git a/Frameworks/TagLib/TagLib.xcodeproj/project.pbxproj b/Frameworks/TagLib/TagLib.xcodeproj/project.pbxproj index 679728a92..f60778023 100644 --- a/Frameworks/TagLib/TagLib.xcodeproj/project.pbxproj +++ b/Frameworks/TagLib/TagLib.xcodeproj/project.pbxproj @@ -851,10 +851,12 @@ 0867D690FE84028FC02AAC07 /* Project object */ = { isa = PBXProject; buildConfigurationList = 1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "TagLib" */; + compatibilityVersion = "Xcode 2.4"; hasScannedForEncodings = 1; mainGroup = 0867D691FE84028FC02AAC07 /* TagLib */; productRefGroup = 034768DFFF38A50411DB9C8B /* Products */; projectDirPath = ""; + projectRoot = ""; targets = ( 8DC2EF4F0486A6940098B216 /* TagLib Framework */, ); diff --git a/Frameworks/TagLib/taglib/taglib/mpeg/mpegfile.cpp b/Frameworks/TagLib/taglib/taglib/mpeg/mpegfile.cpp index e15c6c330..5f886bbbc 100755 --- a/Frameworks/TagLib/taglib/taglib/mpeg/mpegfile.cpp +++ b/Frameworks/TagLib/taglib/taglib/mpeg/mpegfile.cpp @@ -44,6 +44,9 @@ namespace TagLib { virtual String title() const { + if (file->APETag() && !file->APETag()->title().isEmpty()) + return file->APETag()->title(); + if(file->ID3v2Tag() && !file->ID3v2Tag()->title().isEmpty()) return file->ID3v2Tag()->title(); @@ -55,6 +58,9 @@ namespace TagLib { virtual String artist() const { + if (file->APETag() && !file->APETag()->artist().isEmpty()) + return file->APETag()->artist(); + if(file->ID3v2Tag() && !file->ID3v2Tag()->artist().isEmpty()) return file->ID3v2Tag()->artist(); @@ -66,6 +72,9 @@ namespace TagLib { virtual String album() const { + if (file->APETag() && !file->APETag()->album().isEmpty()) + return file->APETag()->album(); + if(file->ID3v2Tag() && !file->ID3v2Tag()->album().isEmpty()) return file->ID3v2Tag()->album(); @@ -77,6 +86,9 @@ namespace TagLib { virtual String comment() const { + if (file->APETag() && !file->APETag()->comment().isEmpty()) + return file->APETag()->comment(); + if(file->ID3v2Tag() && !file->ID3v2Tag()->comment().isEmpty()) return file->ID3v2Tag()->comment(); @@ -88,6 +100,9 @@ namespace TagLib { virtual String genre() const { + if (file->APETag() && !file->APETag()->genre().isEmpty()) + return file->APETag()->genre(); + if(file->ID3v2Tag() && !file->ID3v2Tag()->genre().isEmpty()) return file->ID3v2Tag()->genre(); @@ -99,6 +114,9 @@ namespace TagLib { virtual uint year() const { + if (file->APETag() && !file->APETag()->year() > 0) + return file->APETag()->year(); + if(file->ID3v2Tag() && file->ID3v2Tag()->year() > 0) return file->ID3v2Tag()->year(); @@ -110,6 +128,9 @@ namespace TagLib { virtual uint track() const { + if (file->APETag() && !file->APETag()->track() > 0) + return file->APETag()->track(); + if(file->ID3v2Tag() && file->ID3v2Tag()->track() > 0) return file->ID3v2Tag()->track();