12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- From 78571ed421e3fd3d5244cd76670e4e1bab69132f Mon Sep 17 00:00:00 2001
- From: Bernd Kuhls <bernd.kuhls@t-online.de>
- Date: Fri, 27 May 2016 17:30:28 +0200
- Subject: [PATCH 1/1] Fix nullpadding issue when reading certain id3v1 tags
- backported from upstream commit to master branch:
- https://github.com/xbmc/xbmc/commit/cdabf9dd9e82f4b2d639fb769db08227a7c52046
- to fix problems with taglib-1.11:
- http://trac.kodi.tv/ticket/16454
- https://github.com/taglib/taglib/issues/741#issuecomment-218059031
- Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
- ---
- xbmc/music/tags/TagLoaderTagLib.cpp | 21 ---------------------
- xbmc/music/tags/TagLoaderTagLib.h | 3 +++
- 2 files changed, 3 insertions(+), 21 deletions(-)
- diff --git a/xbmc/music/tags/TagLoaderTagLib.cpp b/xbmc/music/tags/TagLoaderTagLib.cpp
- index b78a591..0fc346a 100644
- --- a/xbmc/music/tags/TagLoaderTagLib.cpp
- +++ b/xbmc/music/tags/TagLoaderTagLib.cpp
- @@ -46,31 +46,12 @@
- #include "utils/URIUtils.h"
- #include "utils/log.h"
- #include "utils/StringUtils.h"
- -#include "utils/CharsetConverter.h"
- #include "utils/Base64.h"
- #include "settings/AdvancedSettings.h"
-
- using namespace TagLib;
- using namespace MUSIC_INFO;
-
- -template<class T>
- -class TagStringHandler : public T
- -{
- -public:
- - TagStringHandler() {}
- - virtual ~TagStringHandler() {}
- - virtual String parse(const ByteVector &data) const
- - {
- - std::string strSource(data.data(), data.size());
- - std::string strUTF8;
- - g_charsetConverter.unknownToUTF8(strSource, strUTF8);
- - return String(strUTF8, String::UTF8);
- - }
- -};
- -
- -static const TagStringHandler<ID3v1::StringHandler> ID3v1StringHandler;
- -static const TagStringHandler<ID3v2::Latin1StringHandler> ID3v2StringHandler;
- -
- CTagLoaderTagLib::CTagLoaderTagLib()
- {
- }
- @@ -824,8 +805,6 @@ bool CTagLoaderTagLib::Load(const std::string& strFileName, CMusicInfoTag& tag,
- return false;
- }
-
- - ID3v1::Tag::setStringHandler(&ID3v1StringHandler);
- - ID3v2::Tag::setLatin1StringHandler(&ID3v2StringHandler);
- TagLib::File* file = NULL;
- TagLib::APE::File* apeFile = NULL;
- TagLib::ASF::File* asfFile = NULL;
- diff --git a/xbmc/music/tags/TagLoaderTagLib.h b/xbmc/music/tags/TagLoaderTagLib.h
- index f83ea4f..0edb84f 100644
- --- a/xbmc/music/tags/TagLoaderTagLib.h
- +++ b/xbmc/music/tags/TagLoaderTagLib.h
- @@ -44,6 +44,9 @@
- #include <taglib/mp4tag.h>
- #include "ImusicInfoTagLoader.h"
-
- +#include <string>
- +#include <vector>
- +
- namespace MUSIC_INFO
- {
- class CMusicInfoTag;
- --
- 2.8.1
|