00c6e7ea79
cmake: use BUILD_SHARED_LIBS instead of ENABLE_STATIC to drive the shared object build
...
In case ENABLE_STATIC is still set on the CMake command line, this
change will makes CMake bail out becaus e this option is no longer
supported.
This patch makes taglib more compliant with the distro package framework
that uses the standards CMake options.
Signed-off-by: Samuel Martin <s.martin49@gmail.com >
2015-06-01 19:27:05 +02:00
db90f4b358
Prefix #ifndef with TAGLIB_ in tpropertymap.h
2015-05-29 19:53:42 +02:00
a06d55ae6f
Merge pull request #577 from TsudaKageyu/frameoffset
...
Fix MPEG::File::firstFrameOffset() and lastFrameOffset(). (#190 )
2015-05-26 17:53:24 +02:00
c5f2e9342d
Merge pull request #578 from TsudaKageyu/test-temp
...
A lot of zero-sized temporary files are left after a test session on …
2015-05-25 08:41:37 -04:00
2d778d5a0a
A lot of zero-sized temporary files are left after a test session on Windows.
2015-05-25 15:51:19 +09:00
0aa75b2e8d
Merge pull request #574 from TsudaKageyu/skip-dup-chunks
...
Skip duplicate chunks when reading AIFF/WAV files.
2015-05-24 14:38:50 -04:00
618a939c56
Fix MPEG::File::firstFrameOffset() and lastFrameOffset(). ( #190 )
2015-05-25 02:41:27 +09:00
9da20a8a52
Skip duplicate chunks when reading AIFF/WAV files.
...
Similar to #492 .
There is no good reason to use the last chunk rather than the first one.
2015-05-25 00:40:13 +09:00
4129b919c1
Merge pull request #572 from TsudaKageyu/map-erase2
...
Map::erase() can take a key directly so no need to call find() before…
2015-05-23 08:21:58 -04:00
6d6f544010
Map::erase() can take a key directly so no need to call find() beforehand.
2015-05-23 18:12:01 +09:00
93da3ba6d9
Merge pull request #571 from TsudaKageyu/fuzzed-wv
...
Avoid an infinite loop when reading fuzzed WavPack files. (#482 )
2015-05-22 07:44:41 -04:00
e064b88049
Merge pull request #570 from TsudaKageyu/audioprop-typo
...
Fix a typo in comment.
2015-05-22 07:41:46 -04:00
3094540a4b
Avoid an infinite loop when reading fuzzed WavPack files. ( #482 )
2015-05-22 14:15:10 +09:00
8e21dcc3d4
Fix a typo in comment.
2015-05-22 12:06:01 +09:00
0ea22348cb
Merge pull request #569 from TsudaKageyu/map-erase
...
std::map::erase() can take a key directly and has no-throw guarantee.
2015-05-21 22:46:15 -04:00
48ca54de1f
Merge pull request #484 from TsudaKageyu/fix-rfind
...
Fix File::rfind() for small files.
2015-05-21 22:44:10 -04:00
54de66f275
std::map::erase() can take a key directly and has no-throw guarantee.
2015-05-22 01:26:56 +09:00
d4b0ba2a7a
TagLib::XM::Properties is a public class that should be exported
2015-05-20 15:18:01 -07:00
525396d9c2
Merge pull request #550 from TsudaKageyu/fix-test
...
Fix test code to work on some environments.
2015-05-20 19:24:52 +02:00
bb9679b51a
Fix test code to work on some environments.
...
const char * is more preferable than string for ifstream constructor.
2015-05-21 02:03:06 +09:00
e4cf012522
Bring the API more in line with the rest of TagLib
...
Like in #255 , this also makes it possible to read values from the
tag in a const function.
2015-05-20 14:26:53 +02:00
a37d423ea8
Merge pull request #549 from TsudaKageyu/win32-test
...
Modify the test code to work on MSVC/Windows.
2015-05-20 13:50:49 +02:00
88a4cf34b8
Modify the test code to work on MSVC/Windows.
2015-05-20 20:19:20 +09:00
81261dd128
This should also work Windows and has less duplicated code
2015-05-20 11:53:32 +02:00
3bea9f6bee
Don't use tempnam on UNIX
...
This silences the huge stream of warnings when building the tests.
I think I didn't break the Windows version in the process (though
it may make sense to use the built in Windows functions there
instead), but I don't have a Windows build environment here, so
I can't test.
2015-05-20 11:45:32 +02:00
9cc2d7cfee
Merge pull request #546 from TsudaKageyu/test-surrogate-pair
...
Add a test for strings that contains surrogate pairs.
2015-05-19 19:57:47 +02:00
fe1bf015bb
Merge pull request #548 from TsudaKageyu/render-twice
...
No need to call ID3v2::Frame::render() twice when saving an ID3v2 tag.
2015-05-19 11:28:50 +02:00
287078566f
No need to call ID3v2::Frame::render() twice when saving an ID3v2 tag.
2015-05-19 17:39:37 +09:00
60966518e2
Quote path names including user-provided variables
...
This should make these work even if the value contains spaces
Closes #344
2015-05-19 10:15:15 +02:00
2268efb49e
Add a test for strings that contains surrogate pairs.
2015-05-19 09:01:47 +09:00
29f535dc8d
Remove *file argument to private members
...
This is already covered by d->file, so there's no reason to pass a pointer
to the member dozens of times.
2015-05-18 23:11:51 +02:00
592522d34c
Moar const fixes
2015-05-18 23:00:16 +02:00
6b9e4e4403
1001 Const fixes (plus iterator rename)
2015-05-18 22:48:55 +02:00
089e44f3db
Remove unnecessary checks for null before delete
...
Closes #343
2015-05-18 21:40:21 +02:00
bd3c4dc1b2
Merge pull request #515 from TsudaKageyu/empty-id3v2-frame
...
Skip empty ID3v2 frames when saving an ID3v2 tag.
2015-05-18 21:36:37 +02:00
bba562b557
Add accessors to manipulate MP4 tags without modifying the internal structure
...
This brings the MP4 API in line closer to other tag formats and makes it
possible to access the tag data from const functions.
"ItemListMap" has been renamed to "ItemMap" (with the old version
deprecated). It seems that the "ListMap" notion was copied probably
from Allan's ApeTag implementation, which incorrectly copied the term
from the XiphTag. Notably, in XiphTag, because a field can have multiple
values, the "ListMap" is a map of lists. Calling things a "ListMap" where
there can be only one value doesn't fit.
Closes #255
2015-05-18 21:18:33 +02:00
451d23ca37
Add isEmpty() to MP4
...
Closes #457
2015-05-18 20:30:19 +02:00
d248f77ab9
Show something useful for ChapterFrame::toString()
...
Closes #517
2015-05-18 19:51:18 +02:00
727a11573a
Fix File::rfind() for small files to work just like ByteVector::rfind().
2015-05-19 01:24:37 +09:00
34da0c0dab
Update signature and docs
...
Specifically this allows the frame to be constructed and then to have
the children and embedded frames set later.
2015-05-18 18:19:43 +02:00
7316cd331d
Remove the null termination stuff from the ToC frames too
2015-05-18 18:17:10 +02:00
3a977c55c4
We've moved away from including the null byte in the returned value
...
This does change previous behavior, but the previous behavior was
particularly stupid and inconsistent with everything else in TagLib.
It should be possible to mitigate this by putting the same safety
guards in the TableOfContents
2015-05-18 17:29:52 +02:00
a094ce7dd2
Don't underflow if there are no embedded frames
...
Closes #513
2015-05-18 17:11:18 +02:00
941efcba18
This isn't tracked as part of the elementID anymore
2015-05-18 16:53:12 +02:00
ffb543acbb
Split chapter data and embedded frame data
...
This will allow us to test parsing them separately
2015-05-18 16:45:57 +02:00
fc24b3d22b
Don't require users to include a padding byte explicitly
...
This makes it where the natural construction can be used of something
like:
new ChapterFrame("ID", ... )
Closes #514
2015-05-18 16:41:30 +02:00
a9e064c58e
Also test second constructor
2015-05-18 16:30:37 +02:00
1a5d89d29e
Update signature and docs to be more in-line with TagLib's style
2015-05-18 16:00:47 +02:00
650b581f9e
Merge pull request #544 from TsudaKageyu/advance
...
Use std::advance rather than a loop and increment.
2015-05-18 15:09:28 +02:00
0739dd232a
It doesn't make sense to set the factory after construction
...
Closes #259
2015-05-18 14:21:55 +02:00