sync w/F-13 branch
This commit is contained in:
parent
4ff6ac8e82
commit
886bb70239
@ -1 +1 @@
|
||||
taglib-1.6.1.tar.gz
|
||||
taglib-1.6.2.tar.gz
|
||||
|
2
sources
2
sources
@ -1 +1 @@
|
||||
db0502b3c3448ff1f1f9b090c1daa5f7 taglib-1.6.1.tar.gz
|
||||
7c936a07acfc53b2beda4151a0f66336 taglib-1.6.2.tar.gz
|
||||
|
@ -1,30 +0,0 @@
|
||||
diff -Nur taglib-1.6.1-orig/taglib/fileref.cpp taglib-1.6.1/taglib/fileref.cpp
|
||||
--- taglib-1.6.1-orig/taglib/fileref.cpp 2009-10-24 14:45:58.000000000 +0200
|
||||
+++ taglib-1.6.1/taglib/fileref.cpp 2009-11-06 13:16:51.055129147 +0100
|
||||
@@ -227,6 +227,7 @@
|
||||
File *file = new Ogg::FLAC::File(fileName, readAudioProperties, audioPropertiesStyle);
|
||||
if (file->isValid())
|
||||
return file;
|
||||
+ delete file;
|
||||
return new Ogg::Vorbis::File(fileName, readAudioProperties, audioPropertiesStyle);
|
||||
}
|
||||
if(ext == "FLAC")
|
||||
diff -Nur taglib-1.6.1-orig/taglib/flac/flacfile.cpp taglib-1.6.1/taglib/flac/flacfile.cpp
|
||||
--- taglib-1.6.1-orig/taglib/flac/flacfile.cpp 2009-07-12 23:53:18.000000000 +0200
|
||||
+++ taglib-1.6.1/taglib/flac/flacfile.cpp 2009-11-06 13:16:42.613128986 +0100
|
||||
@@ -416,8 +416,13 @@
|
||||
|
||||
// Found the vorbis-comment
|
||||
if(blockType == VorbisComment) {
|
||||
- d->xiphCommentData = readBlock(length);
|
||||
- d->hasXiphComment = true;
|
||||
+ if(!d->hasXiphComment) {
|
||||
+ d->xiphCommentData = readBlock(length);
|
||||
+ d->hasXiphComment = true;
|
||||
+ }
|
||||
+ else {
|
||||
+ debug("FLAC::File::scan() -- multiple Vorbis Comment blocks found, using the first one");
|
||||
+ }
|
||||
}
|
||||
|
||||
nextBlockOffset += length + 4;
|
@ -1,101 +0,0 @@
|
||||
--- taglib-1.6.1/taglib/asf/asftag.cpp 2009-09-08 09:26:12.000000000 +0200
|
||||
+++ taglib-20100126/taglib/asf/asftag.cpp 2009-12-13 19:12:03.000000000 +0100
|
||||
@@ -105,8 +105,13 @@
|
||||
unsigned int
|
||||
ASF::Tag::track() const
|
||||
{
|
||||
- if(d->attributeListMap.contains("WM/TrackNumber"))
|
||||
- return d->attributeListMap["WM/TrackNumber"][0].toString().toInt();
|
||||
+ if(d->attributeListMap.contains("WM/TrackNumber")) {
|
||||
+ const ASF::Attribute attr = d->attributeListMap["WM/TrackNumber"][0];
|
||||
+ if(attr.type() == ASF::Attribute::DWordType)
|
||||
+ return attr.toUInt();
|
||||
+ else
|
||||
+ return attr.toString().toInt();
|
||||
+ }
|
||||
if(d->attributeListMap.contains("WM/Track"))
|
||||
return d->attributeListMap["WM/Track"][0].toUInt();
|
||||
return 0;
|
||||
--- taglib-1.6.1/taglib/mpeg/id3v2/id3v2synchdata.cpp 2008-02-06 06:00:24.000000000 +0100
|
||||
+++ taglib-20100126/taglib/mpeg/id3v2/id3v2synchdata.cpp 2009-12-01 19:12:04.000000000 +0100
|
||||
@@ -33,10 +33,28 @@
|
||||
TagLib::uint SynchData::toUInt(const ByteVector &data)
|
||||
{
|
||||
uint sum = 0;
|
||||
+ bool notSynchSafe = false;
|
||||
int last = data.size() > 4 ? 3 : data.size() - 1;
|
||||
|
||||
- for(int i = 0; i <= last; i++)
|
||||
+ for(int i = 0; i <= last; i++) {
|
||||
+ if(data[i] & 0x80) {
|
||||
+ notSynchSafe = true;
|
||||
+ break;
|
||||
+ }
|
||||
+
|
||||
sum |= (data[i] & 0x7f) << ((last - i) * 7);
|
||||
+ }
|
||||
+
|
||||
+ if(notSynchSafe) {
|
||||
+ /*
|
||||
+ * Invalid data; assume this was created by some buggy software that just
|
||||
+ * put normal integers here rather than syncsafe ones, and try it that
|
||||
+ * way.
|
||||
+ */
|
||||
+ sum = 0;
|
||||
+ for(int i = 0; i <= last; i++)
|
||||
+ sum |= data[i] << ((last - i) * 8);
|
||||
+ }
|
||||
|
||||
return sum;
|
||||
}
|
||||
--- taglib-1.6.1/taglib/mp4/mp4file.cpp 2009-10-31 09:59:40.000000000 +0100
|
||||
+++ taglib-20100126/taglib/mp4/mp4file.cpp 2009-12-15 19:12:03.000000000 +0100
|
||||
@@ -113,6 +113,13 @@
|
||||
return;
|
||||
}
|
||||
|
||||
+ // must have a moov atom, otherwise consider it invalid
|
||||
+ MP4::Atom *moov = d->atoms->find("moov");
|
||||
+ if(!moov) {
|
||||
+ setValid(false);
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
d->tag = new Tag(this, d->atoms);
|
||||
if(readProperties) {
|
||||
d->properties = new Properties(this, d->atoms, audioPropertiesStyle);
|
||||
--- taglib-1.6.1/taglib/mp4/mp4tag.cpp 2009-10-29 16:53:20.000000000 +0100
|
||||
+++ taglib-20100126/taglib/mp4/mp4tag.cpp 2010-01-24 19:12:02.000000000 +0100
|
||||
@@ -42,12 +42,12 @@
|
||||
public:
|
||||
TagPrivate() : file(0), atoms(0) {}
|
||||
~TagPrivate() {}
|
||||
- File *file;
|
||||
+ TagLib::File *file;
|
||||
Atoms *atoms;
|
||||
ItemListMap items;
|
||||
};
|
||||
|
||||
-MP4::Tag::Tag(File *file, MP4::Atoms *atoms)
|
||||
+MP4::Tag::Tag(TagLib::File *file, MP4::Atoms *atoms)
|
||||
{
|
||||
d = new TagPrivate;
|
||||
d->file = file;
|
||||
@@ -270,7 +270,7 @@
|
||||
ByteVector::fromShort(item.toIntPair().first) +
|
||||
ByteVector::fromShort(item.toIntPair().second) +
|
||||
ByteVector(2, '\0'));
|
||||
- return renderData(name, 0x15, data);
|
||||
+ return renderData(name, 0x00, data);
|
||||
}
|
||||
|
||||
ByteVector
|
||||
@@ -280,7 +280,7 @@
|
||||
data.append(ByteVector(2, '\0') +
|
||||
ByteVector::fromShort(item.toIntPair().first) +
|
||||
ByteVector::fromShort(item.toIntPair().second));
|
||||
- return renderData(name, 0x15, data);
|
||||
+ return renderData(name, 0x00, data);
|
||||
}
|
||||
|
||||
ByteVector
|
16
taglib.spec
16
taglib.spec
@ -11,8 +11,8 @@
|
||||
%global apidocdir __api-doc_fedora
|
||||
|
||||
Name: taglib
|
||||
Version: 1.6.1
|
||||
Release: 3%{?dist}
|
||||
Version: 1.6.2
|
||||
Release: 1%{?dist}
|
||||
Summary: Audio Meta-Data Library
|
||||
|
||||
Group: System Environment/Libraries
|
||||
@ -30,9 +30,6 @@ Patch1: taglib-1.5b1-multilib.patch
|
||||
# try 2, kiss omit -L%_libdir
|
||||
Patch2: taglib-1.5rc1-multilib.patch
|
||||
|
||||
Patch3: taglib-1.6.1-20091103.patch
|
||||
Patch4: taglib-1.6.1-20100126.patch
|
||||
|
||||
BuildRequires: cmake
|
||||
BuildRequires: pkgconfig
|
||||
BuildRequires: zlib-devel
|
||||
@ -56,10 +53,9 @@ Speex, WavPack, TrueAudio files, as well as APE Tags.
|
||||
%package doc
|
||||
Summary: API Documentation for %{name}
|
||||
Group: Documentation
|
||||
%if 0%{?fedora} > 9
|
||||
%if 0%{?fedora} > 9 || 0%{?rhel} > 5
|
||||
BuildArch: noarch
|
||||
%endif
|
||||
|
||||
%description doc
|
||||
This is API documentation generated from the TagLib source code.
|
||||
%endif
|
||||
@ -85,9 +81,6 @@ Files needed when building software with %{name}.
|
||||
## omit for now
|
||||
%patch2 -p1 -b .multilib
|
||||
|
||||
%patch3 -p1 -b .20091103
|
||||
%patch4 -p1 -b .20100126
|
||||
|
||||
|
||||
%build
|
||||
mkdir -p %{_target_platform}
|
||||
@ -159,6 +152,9 @@ rm -rf %{buildroot}
|
||||
|
||||
|
||||
%changelog
|
||||
* Fri Apr 09 2010 Rex Dieter <rdieter@fedoraproject.org> - 1.6.2-1
|
||||
- taglib-1.6.2
|
||||
|
||||
* Tue Jan 26 2010 Michael Schwendt <mschwendt@fedoraproject.org> - 1.6.1-3
|
||||
- Update with four post-1.6.1 fixes from 20100126
|
||||
(r1056922, r1062026, r1062426, r1078611).
|
||||
|
Loading…
Reference in New Issue
Block a user