[taglib] - big endian fixes (#1097109)
Dan Horák
sharkcz at fedoraproject.org
Thu May 15 09:33:11 UTC 2014
commit 4384a2f8d7f6f6a6f74b3e6fafc3cde79067ac02
Author: Dan Horák <dan at danny.cz>
Date: Thu May 15 11:33:02 2014 +0200
- big endian fixes (#1097109)
...ded-some-missing-deletes-to-test_flac.cpp.patch | 48 ++++++++++++++++++++
...ng-byte-order-handling-on-big-endian-mach.patch | 33 +++++++++++++
taglib.spec | 10 ++++-
3 files changed, 90 insertions(+), 1 deletions(-)
---
diff --git a/0001-Added-some-missing-deletes-to-test_flac.cpp.patch b/0001-Added-some-missing-deletes-to-test_flac.cpp.patch
new file mode 100644
index 0000000..9cdbdcf
--- /dev/null
+++ b/0001-Added-some-missing-deletes-to-test_flac.cpp.patch
@@ -0,0 +1,48 @@
+From c14a3b5c3d0831f7c113d0cf95840c4671d9ebd4 Mon Sep 17 00:00:00 2001
+From: Tsuda Kageyu <tsuda.kageyu at gmail.com>
+Date: Tue, 13 May 2014 20:07:02 +0900
+Subject: [PATCH] Added some missing deletes to test_flac.cpp.
+
+---
+ tests/test_flac.cpp | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/tests/test_flac.cpp b/tests/test_flac.cpp
+index caec715..364fb11 100644
+--- a/tests/test_flac.cpp
++++ b/tests/test_flac.cpp
+@@ -91,6 +91,7 @@ public:
+ newpic->setData("JPEG data");
+ f->addPicture(newpic);
+ f->save();
++ delete f;
+
+ f = new FLAC::File(newname.c_str());
+ lst = f->pictureList();
+@@ -138,6 +139,7 @@ public:
+ f->removePictures();
+ f->addPicture(newpic);
+ f->save();
++ delete f;
+
+ f = new FLAC::File(newname.c_str());
+ lst = f->pictureList();
+@@ -165,6 +167,7 @@ public:
+
+ f->removePictures();
+ f->save();
++ delete f;
+
+ f = new FLAC::File(newname.c_str());
+ lst = f->pictureList();
+@@ -185,6 +188,7 @@ public:
+ tag->setTitle("NEW TITLE 2");
+ f->save();
+ CPPUNIT_ASSERT_EQUAL(String("NEW TITLE 2"), tag->title());
++ delete f;
+
+ f = new FLAC::File(newname.c_str());
+ tag = f->tag();
+--
+1.9.0
+
diff --git a/0001-Fixed-a-wrong-byte-order-handling-on-big-endian-mach.patch b/0001-Fixed-a-wrong-byte-order-handling-on-big-endian-mach.patch
new file mode 100644
index 0000000..86d5201
--- /dev/null
+++ b/0001-Fixed-a-wrong-byte-order-handling-on-big-endian-mach.patch
@@ -0,0 +1,33 @@
+From db3e961d1098d5efe57364f540f68a5996dc83c2 Mon Sep 17 00:00:00 2001
+From: Tsuda Kageyu <tsuda.kageyu at gmail.com>
+Date: Tue, 13 May 2014 18:22:16 +0900
+Subject: [PATCH] Fixed a wrong byte order handling on big-endian machines.
+
+---
+ taglib/toolkit/tstring.cpp | 8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/taglib/toolkit/tstring.cpp b/taglib/toolkit/tstring.cpp
+index 603455a..1ec083b 100644
+--- a/taglib/toolkit/tstring.cpp
++++ b/taglib/toolkit/tstring.cpp
+@@ -47,10 +47,14 @@
+
+ namespace
+ {
+-
+ inline unsigned short combine(unsigned char c1, unsigned char c2)
+ {
+- return (c1 << 8) | c2;
++ using namespace TagLib::Utils;
++
++ if(SystemByteOrder == LittleEndian)
++ return (c1 << 8) | c2;
++ else
++ return (c2 << 8) | c1;
+ }
+
+ void UTF16toUTF8(const wchar_t *src, size_t srcLength, char *dst, size_t dstLength)
+--
+1.9.0
+
diff --git a/taglib.spec b/taglib.spec
index 60a9aef..fd24eaa 100644
--- a/taglib.spec
+++ b/taglib.spec
@@ -6,7 +6,7 @@
Name: taglib
Summary: Audio Meta-Data Library
Version: 1.9.1
-Release: 4%{?dist}
+Release: 5%{?dist}
License: LGPLv2 or MPLv1.1
#URL: http://launchpad.net/taglib
@@ -28,6 +28,9 @@ Patch2: taglib-1.5rc1-multilib.patch
## upstream patches
Patch1002: 0002-Fixed-ABI-breakage-in-TagLib-String.patch
Patch1003: 0003-Rewrote-ByteVector-replace-simpler.patch
+# https://github.com/taglib/taglib/issues/384
+Patch1004: 0001-Fixed-a-wrong-byte-order-handling-on-big-endian-mach.patch
+Patch1005: 0001-Added-some-missing-deletes-to-test_flac.cpp.patch
BuildRequires: cmake
BuildRequires: pkgconfig
@@ -71,6 +74,8 @@ Files needed when building software with %{name}.
%patch1002 -p1 -b .0002
%patch1003 -p1 -b .0003
+%patch1004 -p1 -b .bigendian
+%patch1005 -p1 -b .delete
%build
@@ -135,6 +140,9 @@ make check -C %{_target_platform}
%changelog
+* Thu May 15 2014 Dan Horák <dan[at]danny.cz> 1.9.1-5
+- big endian fixes (#1097109)
+
* Tue May 06 2014 Rex Dieter <rdieter at fedoraproject.org> 1.9.1-4
- enable tests (#1094759)
More information about the scm-commits
mailing list