]> granicus.if.org Git - taglib/log
taglib
7 years agoFix MSVC warnings about unreferenced variables.
Tsuda Kageyu [Tue, 23 May 2017 08:39:25 +0000 (17:39 +0900)]
Fix MSVC warnings about unreferenced variables.

7 years agoFix the Travis-CI testing on OS X.
Tsuda Kageyu [Tue, 23 May 2017 07:52:56 +0000 (16:52 +0900)]
Fix the Travis-CI testing on OS X.

AppleClang 7.3 doesn't get along with CppUnit by default.

7 years agoRemove an useless UTF-8 BOM.
Tsuda Kageyu [Fri, 24 Feb 2017 06:47:30 +0000 (15:47 +0900)]
Remove an useless UTF-8 BOM.

7 years agoAllow SYLT frames to have a timestamp with no text.
Tsuda Kageyu [Fri, 24 Feb 2017 06:40:30 +0000 (15:40 +0900)]
Allow SYLT frames to have a timestamp with no text.

Thanks to lemonboy999.

7 years agoFilePrivate is responsible to delete a stream pointer instead of File.
Tsuda Kageyu [Wed, 8 Feb 2017 08:45:46 +0000 (17:45 +0900)]
FilePrivate is responsible to delete a stream pointer instead of File.

Generally, TagLib leaves the Private classes to delete their members.

7 years agoFix wrong endian of boolean values when saving ASF files.
Tsuda Kageyu [Mon, 6 Feb 2017 01:06:10 +0000 (10:06 +0900)]
Fix wrong endian of boolean values when saving ASF files.

7 years agoRemove obsolete comments.
Tsuda Kageyu [Fri, 3 Feb 2017 16:31:20 +0000 (01:31 +0900)]
Remove obsolete comments.

The bug mentioned in the comments are already fixed.

7 years agoIgnore warnings about OSAtomicIncrement32Barrier
Scott Wheeler [Fri, 3 Feb 2017 13:56:02 +0000 (13:56 +0000)]
Ignore warnings about OSAtomicIncrement32Barrier

The warnings suggest moving to std::atomic functions, but those are only
available in C++11.  It would be possible to switch to the C versions of
those functions, which are now provided in stdatoic.h (in C11), but
let's wait until we actually hit problems with this function and are a
few more OS versions into C11 headers being included by default.

7 years agoAvoid searching the same area twice in MPEG::File::previousFrameOffset().
Tsuda Kageyu [Wed, 1 Feb 2017 05:23:03 +0000 (14:23 +0900)]
Avoid searching the same area twice in MPEG::File::previousFrameOffset().

7 years agoAdd some test cases for invalid UTF-8 sequences.
Tsuda Kageyu [Tue, 31 Jan 2017 05:27:23 +0000 (14:27 +0900)]
Add some test cases for invalid UTF-8 sequences.

7 years agoFix and add some test cases for invalid surrogate pairs.
Tsuda Kageyu [Tue, 31 Jan 2017 05:19:30 +0000 (14:19 +0900)]
Fix and add some test cases for invalid surrogate pairs.

7 years agoUpdate NEWS.
Tsuda Kageyu [Mon, 30 Jan 2017 15:21:41 +0000 (00:21 +0900)]
Update NEWS.

7 years agoRemove redundant functions in tstring.cpp.
Tsuda Kageyu [Mon, 30 Jan 2017 13:38:08 +0000 (22:38 +0900)]
Remove redundant functions in tstring.cpp.

Two versions of copyFromUTF16() are almost the same.

7 years agoRemove function bodies of some non-specialized template functions.
Tsuda Kageyu [Mon, 30 Jan 2017 07:11:59 +0000 (16:11 +0900)]
Remove function bodies of some non-specialized template functions.

The code won't link when a wrong version is used. It's better than showing a debug message.

7 years agoAdd a few more test cases for invalid UTF-8 sequences.
Tsuda Kageyu [Mon, 30 Jan 2017 03:56:53 +0000 (12:56 +0900)]
Add a few more test cases for invalid UTF-8 sequences.

7 years agoMerge pull request #794 from TsudaKageyu/utf8-library
Tsuda Kageyu [Mon, 30 Jan 2017 03:54:43 +0000 (12:54 +0900)]
Merge pull request #794 from TsudaKageyu/utf8-library

Replace unicode.h/unicode.cpp by the UTF8-CPP library.

7 years agoCheck an invalid UTF-8 sequence consists of single char.
Tsuda Kageyu [Mon, 30 Jan 2017 02:35:39 +0000 (11:35 +0900)]
Check an invalid UTF-8 sequence consists of single char.

Single char can be an invalid UTF sequence. For example, { 0x80 } is invalid.

7 years agoStop assuming that std::wstring has a contiguous and null-terminated buffer.
Tsuda Kageyu [Sun, 29 Jan 2017 15:36:38 +0000 (00:36 +0900)]
Stop assuming that std::wstring has a contiguous and null-terminated buffer.

7 years agoReduce useless memory reallocation in String::upper().
Tsuda Kageyu [Fri, 27 Jan 2017 16:17:21 +0000 (01:17 +0900)]
Reduce useless memory reallocation in String::upper().

7 years agoRemove a duplicate test file.
Tsuda Kageyu [Fri, 27 Jan 2017 13:10:02 +0000 (22:10 +0900)]
Remove a duplicate test file.

7 years agoRemove some redundant code in tstring.cpp.
Tsuda Kageyu [Fri, 27 Jan 2017 06:11:08 +0000 (15:11 +0900)]
Remove some redundant code in tstring.cpp.

7 years agoReplace unicode.h/unicode.cpp by the UTF8-CPP library.
Tsuda Kageyu [Fri, 27 Jan 2017 02:44:56 +0000 (11:44 +0900)]
Replace unicode.h/unicode.cpp by the UTF8-CPP library.

unicode.h/unicode.cpp are no longer maintained and incompatible with Debian's guideline.
UTF8-CPP is maintained on GitHub and published under the Boost Software License which is compatible with either LGPL or MPL and should go along with Debian's guideline.

7 years agoAdd a test for unpaired surrogate characters in a UTF-16 string.
Tsuda Kageyu [Thu, 26 Jan 2017 08:33:54 +0000 (17:33 +0900)]
Add a test for unpaired surrogate characters in a UTF-16 string.

7 years agoRemove some redundant code.
Tsuda Kageyu [Sat, 21 Jan 2017 15:43:32 +0000 (00:43 +0900)]
Remove some redundant code.

TagUnion::access() does the same thing as FLAC::File::ID3v2Tag().

7 years agoPrefer isEmpty()/empty() to size() == 0.
Tsuda Kageyu [Sat, 21 Jan 2017 10:10:32 +0000 (19:10 +0900)]
Prefer isEmpty()/empty() to size() == 0.

7 years agoRevert useless changes accidentally committed.
Tsuda Kageyu [Sat, 21 Jan 2017 02:13:49 +0000 (11:13 +0900)]
Revert useless changes accidentally committed.

7 years agoAdd missing consts.
Tsuda Kageyu [Sat, 21 Jan 2017 02:09:05 +0000 (11:09 +0900)]
Add missing consts.

7 years agoCombine two internal functions which are always used together.
Tsuda Kageyu [Fri, 20 Jan 2017 16:34:50 +0000 (01:34 +0900)]
Combine two internal functions which are always used together.

7 years agoIgnore fake MPEG frame headers when seeking them.
Tsuda Kageyu [Fri, 20 Jan 2017 13:38:25 +0000 (22:38 +0900)]
Ignore fake MPEG frame headers when seeking them.

7 years agoEfficient lookup for an ID3v2 tag in MPEG files with garbage.
Tsuda Kageyu [Fri, 20 Jan 2017 12:14:38 +0000 (21:14 +0900)]
Efficient lookup for an ID3v2 tag in MPEG files with garbage.

This looks for an ID3v2 tag until reaching the first valid MPEG frame in O(n) time.

7 years agoUpdate NEWS.
Tsuda Kageyu [Sun, 15 Jan 2017 16:14:35 +0000 (01:14 +0900)]
Update NEWS.

7 years agoMerge pull request #791 from TsudaKageyu/flac-empty-seektable
Tsuda Kageyu [Sun, 15 Jan 2017 16:12:07 +0000 (01:12 +0900)]
Merge pull request #791 from TsudaKageyu/flac-empty-seektable

Be tolerant of empty FLAC seektable blocks.

7 years agoInitialize d-pointers in class member initializer list.
Tsuda Kageyu [Sun, 15 Jan 2017 16:05:30 +0000 (01:05 +0900)]
Initialize d-pointers in class member initializer list.

7 years agoAlways use parentheses with new. It's a bit safer.
Tsuda Kageyu [Sun, 15 Jan 2017 15:59:12 +0000 (00:59 +0900)]
Always use parentheses with new. It's a bit safer.

7 years agoInitialize all the data members of ASF::Attribute.
Tsuda Kageyu [Sat, 14 Jan 2017 14:29:46 +0000 (23:29 +0900)]
Initialize all the data members of ASF::Attribute.

7 years agoBe tolerant of empty FLAC seektable blocks.
Tsuda Kageyu [Sat, 7 Jan 2017 17:11:57 +0000 (02:11 +0900)]
Be tolerant of empty FLAC seektable blocks.

7 years agoRemove some TODO comments which are no longer necessary.
Tsuda Kageyu [Sat, 7 Jan 2017 16:43:04 +0000 (01:43 +0900)]
Remove some TODO comments which are no longer necessary.

7 years agoFix #789 (typo in member doc)
Michael Helmling [Fri, 6 Jan 2017 08:08:02 +0000 (09:08 +0100)]
Fix #789 (typo in member doc)

8 years agoMerge pull request #787 from rshanmu/master
Stephen F. Booth [Thu, 22 Dec 2016 17:17:12 +0000 (12:17 -0500)]
Merge pull request #787 from rshanmu/master

Renamed unsupported-extension.xxx and modified test

8 years agoRenamed unsupported-extension.xxx and modified test
Ramesh Shanmugasundaram [Thu, 22 Dec 2016 15:13:39 +0000 (15:13 +0000)]
Renamed unsupported-extension.xxx and modified test

The file name unsupported-extension.xxx causes issue when unpacked
taglib-xxx.gz over an NFS partition. The file extension ".xxx" is the
one NFS uses for its own purpose and hence it will not allow creation
of this file.

Hence renamed the file and modified the test cases that checks for this
file.

Signed-off-by: Ramesh Shanmugasundaram <ramesh.shanmugasundaram@bp.renesas.com>
8 years agoRemove the CMake check for Boost I missed out on.
Tsuda Kageyu [Tue, 20 Dec 2016 03:06:21 +0000 (12:06 +0900)]
Remove the CMake check for Boost I missed out on.

8 years agoRemove all the optional dependencies on Boost.
Tsuda Kageyu [Tue, 20 Dec 2016 02:54:06 +0000 (11:54 +0900)]
Remove all the optional dependencies on Boost.

8 years agoFix the CMake check for std::atomic_int.
Tsuda Kageyu [Tue, 20 Dec 2016 02:48:14 +0000 (11:48 +0900)]
Fix the CMake check for std::atomic_int.

std::atomic_int of Visual C++ 2012 cannot be constructed with integer.

8 years agoSafer conversion of boolean values in ASF attributes.
Tsuda Kageyu [Mon, 19 Dec 2016 01:37:10 +0000 (10:37 +0900)]
Safer conversion of boolean values in ASF attributes.

Technically, boolean values in Extended Content Description Object is not necessarily be 0 or 1.

8 years agoMake use of increment/decrement operators of std::atomic.
Tsuda Kageyu [Fri, 9 Dec 2016 00:56:37 +0000 (09:56 +0900)]
Make use of increment/decrement operators of std::atomic.

8 years agoRemove optional dependencies on Boost's dynamic libraries.
Tsuda Kageyu [Fri, 9 Dec 2016 00:42:29 +0000 (09:42 +0900)]
Remove optional dependencies on Boost's dynamic libraries.

Using precompiled Boost libraries can lead to depending on external dynamic libraries.

8 years agoMerge pull request #784 from haoxi911/master
Tsuda Kageyu [Fri, 9 Dec 2016 00:00:04 +0000 (09:00 +0900)]
Merge pull request #784 from haoxi911/master

Fix #667: Compiled TagLib framework for OS X fails at codesign.

8 years agoFix #667: Compiled TagLib framework for OS X fails at codesign.
Hao Xi [Thu, 8 Dec 2016 04:53:40 +0000 (12:53 +0800)]
Fix #667: Compiled TagLib framework for OS X fails at codesign.

8 years agoRewrite ByteVector::replace() to run in O(n) time.
Tsuda Kageyu [Fri, 2 Dec 2016 07:31:27 +0000 (16:31 +0900)]
Rewrite ByteVector::replace() to run in O(n) time.

8 years agoAdd a test to check if ByteVector is detached correctly when being replaced.
Tsuda Kageyu [Mon, 5 Dec 2016 01:15:26 +0000 (10:15 +0900)]
Add a test to check if ByteVector is detached correctly when being replaced.

8 years ago#include guards in CMake generated headers.
Tsuda Kageyu [Fri, 2 Dec 2016 08:26:43 +0000 (17:26 +0900)]
#include guards in CMake generated headers.

8 years agoUpdate NEWS.
Tsuda Kageyu [Thu, 1 Dec 2016 06:25:30 +0000 (15:25 +0900)]
Update NEWS.

8 years agoFix possible Ogg packet losses.
Tsuda Kageyu [Thu, 1 Dec 2016 02:32:01 +0000 (11:32 +0900)]
Fix possible Ogg packet losses.

8 years agoPrevent the segment table of Ogg pages from exceeding the size limit.
Tsuda Kageyu [Thu, 1 Dec 2016 01:50:30 +0000 (10:50 +0900)]
Prevent the segment table of Ogg pages from exceeding the size limit.

8 years agoRemove Utils::floatByteOrder() and use systemByteOrder() instead.
Tsuda Kageyu [Tue, 29 Nov 2016 05:58:39 +0000 (14:58 +0900)]
Remove Utils::floatByteOrder() and use systemByteOrder() instead.

We can safely assume that the integer and float byte orders are the same on IEEE754 compliant systems.

8 years agoAdd a test for #743/#779.
Tsuda Kageyu [Tue, 29 Nov 2016 01:53:33 +0000 (10:53 +0900)]
Add a test for #743/#779.

8 years agoSmall fix in style.
Tsuda Kageyu [Tue, 29 Nov 2016 01:38:11 +0000 (10:38 +0900)]
Small fix in style.

8 years agoMerge pull request #779 from supermihi/master
Tsuda Kageyu [Mon, 28 Nov 2016 12:03:39 +0000 (21:03 +0900)]
Merge pull request #779 from supermihi/master

Fixes #743 by not overwriting existing Xiph comment in FLAC::File::save

8 years agoFixes #743 by not overwriting existing Xiph comment in FLAC::File::save
Michael Helmling [Sun, 27 Nov 2016 18:17:13 +0000 (19:17 +0100)]
Fixes #743 by not overwriting existing Xiph comment in FLAC::File::save

8 years agoA bit more tolerant check to return itself in String::substr().
Tsuda Kageyu [Sat, 26 Nov 2016 04:05:14 +0000 (13:05 +0900)]
A bit more tolerant check to return itself in String::substr().

8 years agoMerge pull request #778 from martin-flaska/optimization
Stephen F. Booth [Fri, 25 Nov 2016 21:38:32 +0000 (16:38 -0500)]
Merge pull request #778 from martin-flaska/optimization

String::substr optimization

8 years agotstring: String::substr optimization when returning itself as a substring
Martin Flaska [Fri, 25 Nov 2016 14:32:26 +0000 (15:32 +0100)]
tstring: String::substr optimization when returning itself as a substring

Use copy ctor to return in a case whole string is being returned.

The intention was to optimize String::stripWhiteSpace for no-strip case
(without any leading or trailing white space removal).

copyFromUTF16 was used in any case previously and allocated duplicate
buffer for the same string - no implicit sharing.

Signed-off-by: Martin Flaska <martin.flaska@legrand.us>
8 years agotest_string: Make 'stripWhiteSpace' test more complex
Martin Flaska [Fri, 25 Nov 2016 11:58:25 +0000 (12:58 +0100)]
test_string: Make 'stripWhiteSpace' test more complex

No string without leading/trailing spaces was used in the test.

Signed-off-by: Martin Flaska <martin.flaska@legrand.us>
8 years agoSuppress MSVC warnings in test.
Tsuda Kageyu [Thu, 24 Nov 2016 05:45:22 +0000 (14:45 +0900)]
Suppress MSVC warnings in test.

8 years agoMerge pull request #776 from mathbunnyru/small_improvements
Stephen F. Booth [Thu, 24 Nov 2016 04:31:49 +0000 (23:31 -0500)]
Merge pull request #776 from mathbunnyru/small_improvements

Small improvements

8 years agoSmall fixes
mathbunnyru [Wed, 23 Nov 2016 23:02:38 +0000 (02:02 +0300)]
Small fixes

8 years agoIncrement fixes
mathbunnyru [Mon, 21 Nov 2016 22:10:28 +0000 (01:10 +0300)]
Increment fixes

8 years agoUpdate NEWS.
Tsuda Kageyu [Fri, 18 Nov 2016 04:55:43 +0000 (13:55 +0900)]
Update NEWS.

8 years agoMerge pull request #772 from TsudaKageyu/vorbis-fields
Tsuda Kageyu [Fri, 18 Nov 2016 04:52:38 +0000 (13:52 +0900)]
Merge pull request #772 from TsudaKageyu/vorbis-fields

Fix handling of lowercase 'metadata_block_picture' field

8 years agoFix handling of lowercase 'metadata_block_picture' fields in Vorbis comments.
Tsuda Kageyu [Thu, 10 Nov 2016 15:07:32 +0000 (00:07 +0900)]
Fix handling of lowercase 'metadata_block_picture' fields in Vorbis comments.

Also refactored some redundant code for parsing pictures.

8 years agoAvoid adding fields with invalid keys to Vorbis Comments.
Tsuda Kageyu [Thu, 10 Nov 2016 11:02:30 +0000 (20:02 +0900)]
Avoid adding fields with invalid keys to Vorbis Comments.

According to the spec, '\x7F' is not allowed.

8 years agoDon't decode redundant UTF-8 sequences in Win32.
Tsuda Kageyu [Thu, 10 Nov 2016 08:09:40 +0000 (17:09 +0900)]
Don't decode redundant UTF-8 sequences in Win32.

Linux and OS X are working well and won't be affected.

8 years agoSeparate some tests to make them more specific.
Tsuda Kageyu [Wed, 9 Nov 2016 06:51:33 +0000 (15:51 +0900)]
Separate some tests to make them more specific.

8 years agoCheck invalid Unicode APE keys properly.
Tsuda Kageyu [Tue, 8 Nov 2016 15:28:35 +0000 (00:28 +0900)]
Check invalid Unicode APE keys properly.

8 years agoRemoved a utility function which is used only at one place.
Tsuda Kageyu [Tue, 8 Nov 2016 14:27:55 +0000 (23:27 +0900)]
Removed a utility function which is used only at one place.

8 years agoAdd README.md.
Tsuda Kageyu [Tue, 8 Nov 2016 13:50:36 +0000 (22:50 +0900)]
Add README.md.

8 years agotolower() depends on the current locale.
Tsuda Kageyu [Tue, 8 Nov 2016 12:39:53 +0000 (21:39 +0900)]
tolower() depends on the current locale.

It's much easier to write our own function than to use locales properly.

8 years agoUpdate NEWS.
Tsuda Kageyu [Tue, 8 Nov 2016 12:17:00 +0000 (21:17 +0900)]
Update NEWS.

8 years agoMerge pull request #765 from TsudaKageyu/zero-length-atom
Tsuda Kageyu [Tue, 8 Nov 2016 12:12:47 +0000 (21:12 +0900)]
Merge pull request #765 from TsudaKageyu/zero-length-atom

Proper handling of MP4 atoms with zero length.

8 years agoMerge pull request #759 from ufleisch/mp4_classical
Tsuda Kageyu [Tue, 8 Nov 2016 12:12:31 +0000 (21:12 +0900)]
Merge pull request #759 from ufleisch/mp4_classical

Support new classical music frames introduced with iTunes 12.5, #758.

8 years agoInitialize all the data members of ID3v2::ChapterFrame.
Tsuda Kageyu [Mon, 7 Nov 2016 05:12:38 +0000 (14:12 +0900)]
Initialize all the data members of ID3v2::ChapterFrame.

8 years agoValues of FILE_* macros are guaranteed in Win32.
Tsuda Kageyu [Sun, 6 Nov 2016 15:42:12 +0000 (00:42 +0900)]
Values of FILE_* macros are guaranteed in Win32.

8 years agoAdd List::swap() and Map::swap().
Tsuda Kageyu [Fri, 4 Nov 2016 07:43:14 +0000 (16:43 +0900)]
Add List::swap() and Map::swap().

8 years agoProper handling of MP4 atoms with zero length.
Tsuda Kageyu [Wed, 2 Nov 2016 06:44:50 +0000 (15:44 +0900)]
Proper handling of MP4 atoms with zero length.

If the size of an atom is 0, it designates the last atom which extends to the end of the file.

8 years agoRemove a useless branch.
Tsuda Kageyu [Tue, 1 Nov 2016 07:03:15 +0000 (16:03 +0900)]
Remove a useless branch.

longLength <= LONG_MAX is always true if sizeof(long) == sizeof(long long).

8 years agoAdd a common function to generate a long string to test.
Tsuda Kageyu [Mon, 31 Oct 2016 10:53:17 +0000 (19:53 +0900)]
Add a common function to generate a long string to test.

8 years agoAllow ScopedFileCopy to be const.
Tsuda Kageyu [Mon, 31 Oct 2016 01:29:13 +0000 (10:29 +0900)]
Allow ScopedFileCopy to be const.

8 years agoSuppress MSVC warnings about narrowing conversions.
Tsuda Kageyu [Sun, 30 Oct 2016 14:51:35 +0000 (23:51 +0900)]
Suppress MSVC warnings about narrowing conversions.

8 years agoUpdate NEWS.
Tsuda Kageyu [Sun, 30 Oct 2016 13:51:15 +0000 (22:51 +0900)]
Update NEWS.

8 years agoAssume that SetFilePointerEx() and GetFileSizeEx() are always available.
Tsuda Kageyu [Sun, 30 Oct 2016 13:36:18 +0000 (22:36 +0900)]
Assume that SetFilePointerEx() and GetFileSizeEx() are always available.

This drops support for Windows 9x and NT 4.0 or older.

8 years agoAssume that CreateFileW() is always available.
Tsuda Kageyu [Sun, 30 Oct 2016 13:25:34 +0000 (22:25 +0900)]
Assume that CreateFileW() is always available.

This drops support for Windows 9x.

8 years agoPrevent overflows, just in case.
Tsuda Kageyu [Fri, 28 Oct 2016 06:25:50 +0000 (15:25 +0900)]
Prevent overflows, just in case.

8 years agoBackport a test from taglib2 branch.
Tsuda Kageyu [Fri, 28 Oct 2016 06:19:35 +0000 (15:19 +0900)]
Backport a test from taglib2 branch.

8 years agoRemove some useless seek()/tell() from RIFF::File.
Tsuda Kageyu [Fri, 28 Oct 2016 05:22:50 +0000 (14:22 +0900)]
Remove some useless seek()/tell() from RIFF::File.

8 years agoEncourage compilers to optimize out debug() and debugData().
Tsuda Kageyu [Fri, 28 Oct 2016 02:19:51 +0000 (11:19 +0900)]
Encourage compilers to optimize out debug() and debugData().

It's sort of like a throwback, but I found that debug(const String &s) {} doesn't prevent a String from being constructed and the error messages from being embedded.

8 years agoUpdate NEWS.
Tsuda Kageyu [Thu, 27 Oct 2016 06:40:14 +0000 (15:40 +0900)]
Update NEWS.

8 years agoSuppress some warnings in test.
Tsuda Kageyu [Thu, 27 Oct 2016 06:23:24 +0000 (15:23 +0900)]
Suppress some warnings in test.

8 years agoAdd a test for File::truncate().
Tsuda Kageyu [Thu, 27 Oct 2016 06:15:22 +0000 (15:15 +0900)]
Add a test for File::truncate().

8 years agoCheck if file size <= LONG_MAX.
Tsuda Kageyu [Thu, 27 Oct 2016 06:10:34 +0000 (15:10 +0900)]
Check if file size <= LONG_MAX.

8 years agoMerge pull request #761 from albertofustinoni/master
Tsuda Kageyu [Mon, 24 Oct 2016 13:06:35 +0000 (22:06 +0900)]
Merge pull request #761 from albertofustinoni/master

WinRT compatibility