Commit Graph
1290 Commits
Author SHA1 Message Date
Tsuda Kageyu 0acc22e84b Merge pull request #108 from TsudaKageyu/sizeof_wchar_t
Detect sizeof(wchar_t) at compile time
2013-03-20 22:54:28 -07:00
Tsuda Kageyu 62efb9ff17 Detect sizeof(wchar_t) at compile time 2013-03-21 14:43:03 +09:00
Tsuda Kageyu ca5ce53b1e Merge pull request #107 from TsudaKageyu/endian-detect
Detect UTF-16 byte order at compile time
2013-03-20 18:28:27 -07:00
Tsuda Kageyu 8cae2b9f28 Detect UTF-16 byte order at compile time 2013-03-21 10:21:52 +09:00
Tsuda Kageyu d719eb0ac6 Merge pull request #105 from TsudaKageyu/shared_ptr
Replace RefCounter with std::shared_ptr if possible
2013-03-20 18:03:57 -07:00
Tsuda Kageyu cab68e2152 Stop determining whether to enable C++11 features at compile time 2013-03-20 08:39:13 +09:00
Tsuda Kageyu fd45808555 Merge pull request #104 from TsudaKageyu/test-warnings
Fix warnings in test_flacpicture.cpp
2013-03-19 06:03:23 -07:00
Tsuda Kageyu e9fec47411 Fix warnings in test_flacpicture.cpp 2013-03-19 21:54:56 +09:00
Tsuda Kageyu 96cf908232 Replace RefCounter with std::shared_ptr if possible 2013-03-19 21:36:08 +09:00
Tsuda Kageyu 42a74babb5 Merge pull request #103 from TsudaKageyu/string-improvement
Some improvements of String
2013-03-19 01:12:25 -07:00
Tsuda Kageyu 4e05923479 Removed null termination from return value of String::data() 2013-03-18 13:55:49 +09:00
Tsuda Kageyu c86ea7bdff Use the standard library to convert between UTF-8 and UTF-16 where possible 2013-03-18 13:34:20 +09:00
Tsuda Kageyu a842220fe6 Revert "Use the standard library to convert between UTF-8 and UTF-16 where possible"
This reverts commit 19ce4d0dfa.
2013-03-18 06:08:05 +09:00
Tsuda Kageyu 19ce4d0dfa Use the standard library to convert between UTF-8 and UTF-16 where possible 2013-03-18 05:56:48 +09:00
Tsuda Kageyu 6e3639de9e Avoid creating new String object when comparing 2013-03-18 02:51:11 +09:00
Tsuda Kageyu 0792eedd12 Fix UTF-16 BOM detection 2013-03-17 20:47:58 +09:00
Tsuda Kageyu 86b7cabf44 Fix UTF-16 decoding where wchar_t is not 16-bit 2013-03-17 20:27:32 +09:00
Tsuda Kageyu de19ad72ab Fixed CPU endian detection 2013-03-17 19:40:01 +09:00
Tsuda Kageyu 9b19453059 Some improvements of String 2013-03-17 12:51:00 +09:00
Tsuda Kageyu dbd7c151d6 Fix buffer overrun 2013-03-17 12:41:47 +09:00
Tsuda Kageyu d3af7c0b02 Fix VC++ x64 warnings 2013-03-16 00:07:01 +09:00
Tsuda Kageyu 64447598e5 Made the destructor of StringHandler virtual. 2013-02-23 00:36:41 +09:00
Tsuda Kageyu fba8f42588 Fix some VC spesific warnings 2013-02-22 19:29:02 +09:00
Stephen F. Booth 6029352c09 Merge pull request #96 from nightingale-media-player/master
Make textual lyric frames use UTF8
2013-01-20 07:56:30 -08:00
rsjtdrjgfuzkfg 077208d17a Create UTF8-Lyrics per default. 2013-01-18 17:21:35 +01:00
Michael Helmling 08863dec0b Found and fixed more missing property interface forwarders.
Probably due to a copy-and-paste error the implementation of
File::removeUnsupportedProperties() contained cases for several type
which do not reimplement this method; for others the implementation was
missing and is now included.

In addition, the formats Speex and Opus suffered from the same bug as
OggFLAC in the commit before, which is now fixed.
2013-01-03 23:20:15 +01:00
Michael Helmling 80af92a715 Add forwarders for the property interface to Ogg::FLAC::File.
Fixes an infinite method resolution recursion in File::properties() and
File::setProperties(). Thanks to Sebastian Rachuj for pointing out this bug.
2013-01-03 23:00:17 +01:00
Michael Helmling 5578843220 Fixed a typo. 2013-01-03 22:54:12 +01:00
Lukáš Lalinský 237e0ec23c Merge pull request #93 from magcius/master
c: Add support for TAGLIB_STATIC to the C bindings
2013-01-01 03:00:27 -08:00
Jasper St. Pierre d52e97dfcd c: Add support for TAGLIB_STATIC to the C bindings
Otherwise, we'll fail with dllimport/dllexport linking errors on
Windows.
2013-01-01 04:28:00 -05:00
Michael Helmling 90fd336a22 Add TagUnion::removeUnsupportedProperties, further reducing SLOCs. :-) 2012-12-27 13:32:01 +01:00
Michael Helmling fa38c805f5 Implemented TagUnion::properties() and made Tag::*properties* virtual.
This allows to remove several default implementations in types using
TagUnions.
2012-12-27 13:19:11 +01:00
Michael Helmling b60b444d7b Merge branch 'master' into taglib2
Conflicts:
	taglib/toolkit/tfile.h
2012-12-27 11:55:12 +01:00
Michael Helmling 8329d6ac1a Update documentation of the property map interface in TagLib::File. 2012-12-27 11:38:01 +01:00
Michael Helmling f1d723077f Consistently handle invalid and deprecated tags in setProperties()
This commit reverts the use of strip() in setProperties() because the
latter function should not change the file before save() is called.
Instead, the following policy is now consistently applied for file formats
with multiple tag types:
- the recommended tag type is created, if it does not exist
- deprecated tags are updated, if they exist, but not created
- illegal tag types are ignored by setProperties(), but used in properties()
  if no others exist.

The only tag types considered "illegal" so far are APEv2 in MPEG and ID3 in FLAC.
2012-12-26 22:46:37 +01:00
Michael Helmling a095c468b2 Revert "Add a test to show a problem with properties() and duplication."
This reverts commit 6e3391a846. The "problem" demonstrated in there won't be fixed due to lack of significance.
2012-12-20 17:30:19 +01:00
Michael Helmling b14e6a3570 Update for pull request #89: Change how setProperties() updates tags.
For file types supporting more than one tag format, setProperties() now always creates the most modern one. Deprecated tags are stripped.
2012-12-20 17:28:50 +01:00
Michael Helmling 6e3391a846 Add a test to show a problem with properties() and duplication. 2012-12-10 21:22:11 +01:00
Michael Helmling c0ca5c97d5 Fix issue #88 by changing the behavior of setProperties().
For file types that support multiple tag standards (for example, FLAC
files can have ID3v1, ID3v2, and Vorbis comments) setProperties is now
called for all existing tags instead of only for the most recommended
one.
This fixes the problem that under some circumstances it was not possible
to delete a value using setProperties() because upon save() the call to
Tag::duplicate recovered that value from the ID3v1 tag.
2012-12-10 20:56:16 +01:00
Michael Helmling d5cf6d72e2 Merge remote-tracking branch 'official/master' 2012-12-10 19:55:29 +01:00
Michael Helmling 9eb0f2941f Add a test case for the return value of setProperties() 2012-12-10 19:55:23 +01:00
naota 3fa295d99d Include sys/stat.h to define S_* properly
Without including sys/stat.h, this file failed to build on FreeBSD with the following error.

In file included from /var/tmp/portage/media-libs/taglib-1.8/work/taglib-1.8/tests/test_trueaudio.cpp:5:0:
/var/tmp/portage/media-libs/taglib-1.8/work/taglib-1.8/tests/utils.h: In function 'std::string copyFile(const string&, const string&)':
/var/tmp/portage/media-libs/taglib-1.8/work/taglib-1.8/tests/utils.h:36:62: error: 'S_IRUSR' was not declared in this scope
/var/tmp/portage/media-libs/taglib-1.8/work/taglib-1.8/tests/utils.h:36:72: error: 'S_IWUSR' was not declared in this scope
In file included from /var/tmp/portage/media-libs/taglib-1.8/work/taglib-1.8/tests/test_mpeg.cpp:6:0:
/var/tmp/portage/media-libs/taglib-1.8/work/taglib-1.8/tests/utils.h: In function 'std::string copyFile(const string&, const string&)':
/var/tmp/portage/media-libs/taglib-1.8/work/taglib-1.8/tests/utils.h:36:62: error: 'S_IRUSR' was not declared in this scope
/var/tmp/portage/media-libs/taglib-1.8/work/taglib-1.8/tests/utils.h:36:72: error: 'S_IWUSR' was not declared in this scope
gmake[2]: *** [tests/CMakeFiles/test_runner.dir/test_mpeg.cpp.o] Error 1
2012-11-28 07:54:08 +09:00
Lukáš Lalinský db892c43e7 Merge branch 'master' into taglib2
Conflicts:
	taglib/mp4/mp4tag.cpp
	taglib/mp4/mp4tag.h
	taglib/toolkit/tfile.cpp
2012-11-23 10:17:16 +01:00
Lukáš Lalinský 812f63502b Implement the PropertyMap interface for WMA 2012-11-23 09:32:00 +01:00
Lukáš Lalinský 353eb9f00f Implement the PropertyMap interface for MP4 2012-11-22 10:40:22 +01:00
Lukáš Lalinský 1b813d9d6c Document sort names 2012-11-21 17:26:17 +01:00
Lukáš Lalinský c5dade5ee7 Use names that are consistent with Vorbis Comments 2012-11-21 17:24:32 +01:00
Lukáš Lalinský e75d6f616c Add support for reading MusicBrainz IDs from ID3v2 tags to PropertyMap 2012-11-21 17:21:30 +01:00
Lukáš Lalinský 15b601f053 Use PropertyMap in tagreader 2012-11-21 14:40:26 +01:00
Lukáš Lalinský 45317ef7f2 Revert "Fix opening of read-only files on Windows"
This reverts commit ade8dc1a21.
2012-11-20 18:34:51 +01:00