Michael Helmling
db90f4b358
Prefix #ifndef with TAGLIB_ in tpropertymap.h
2015-05-29 19:53:42 +02:00
Scott Wheeler
a06d55ae6f
Merge pull request #577 from TsudaKageyu/frameoffset
...
Fix MPEG::File::firstFrameOffset() and lastFrameOffset(). (#190 )
2015-05-26 17:53:24 +02:00
Stephen F. Booth
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
Tsuda Kageyu
2d778d5a0a
A lot of zero-sized temporary files are left after a test session on Windows.
2015-05-25 15:51:19 +09:00
Stephen F. Booth
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
Tsuda Kageyu
618a939c56
Fix MPEG::File::firstFrameOffset() and lastFrameOffset(). ( #190 )
2015-05-25 02:41:27 +09:00
Tsuda Kageyu
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
Stephen F. Booth
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
Tsuda Kageyu
6d6f544010
Map::erase() can take a key directly so no need to call find() beforehand.
2015-05-23 18:12:01 +09:00
Stephen F. Booth
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
Stephen F. Booth
e064b88049
Merge pull request #570 from TsudaKageyu/audioprop-typo
...
Fix a typo in comment.
2015-05-22 07:41:46 -04:00
Tsuda Kageyu
3094540a4b
Avoid an infinite loop when reading fuzzed WavPack files. ( #482 )
2015-05-22 14:15:10 +09:00
Tsuda Kageyu
8e21dcc3d4
Fix a typo in comment.
2015-05-22 12:06:01 +09:00
Stephen F. Booth
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
Stephen F. Booth
48ca54de1f
Merge pull request #484 from TsudaKageyu/fix-rfind
...
Fix File::rfind() for small files.
2015-05-21 22:44:10 -04:00
Tsuda Kageyu
54de66f275
std::map::erase() can take a key directly and has no-throw guarantee.
2015-05-22 01:26:56 +09:00
Lukáš Lalinský
d4b0ba2a7a
TagLib::XM::Properties is a public class that should be exported
2015-05-20 15:18:01 -07:00
Scott Wheeler
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
Tsuda Kageyu
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
Scott Wheeler
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
Scott Wheeler
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
Tsuda Kageyu
88a4cf34b8
Modify the test code to work on MSVC/Windows.
2015-05-20 20:19:20 +09:00
Scott Wheeler
81261dd128
This should also work Windows and has less duplicated code
2015-05-20 11:53:32 +02:00
Scott Wheeler
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
Scott Wheeler
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
Scott Wheeler
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
Tsuda Kageyu
287078566f
No need to call ID3v2::Frame::render() twice when saving an ID3v2 tag.
2015-05-19 17:39:37 +09:00
Scott Wheeler
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
Tsuda Kageyu
2268efb49e
Add a test for strings that contains surrogate pairs.
2015-05-19 09:01:47 +09:00
Scott Wheeler
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
Scott Wheeler
592522d34c
Moar const fixes
2015-05-18 23:00:16 +02:00
Scott Wheeler
6b9e4e4403
1001 Const fixes (plus iterator rename)
2015-05-18 22:48:55 +02:00
Scott Wheeler
089e44f3db
Remove unnecessary checks for null before delete
...
Closes #343
2015-05-18 21:40:21 +02:00
Scott Wheeler
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
Scott Wheeler
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
Scott Wheeler
451d23ca37
Add isEmpty() to MP4
...
Closes #457
2015-05-18 20:30:19 +02:00
Scott Wheeler
d248f77ab9
Show something useful for ChapterFrame::toString()
...
Closes #517
2015-05-18 19:51:18 +02:00
Tsuda Kageyu
727a11573a
Fix File::rfind() for small files to work just like ByteVector::rfind().
2015-05-19 01:24:37 +09:00
Scott Wheeler
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
Scott Wheeler
7316cd331d
Remove the null termination stuff from the ToC frames too
2015-05-18 18:17:10 +02:00
Scott Wheeler
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
Scott Wheeler
a094ce7dd2
Don't underflow if there are no embedded frames
...
Closes #513
2015-05-18 17:11:18 +02:00
Scott Wheeler
941efcba18
This isn't tracked as part of the elementID anymore
2015-05-18 16:53:12 +02:00
Scott Wheeler
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
Scott Wheeler
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
Scott Wheeler
a9e064c58e
Also test second constructor
2015-05-18 16:30:37 +02:00
Scott Wheeler
1a5d89d29e
Update signature and docs to be more in-line with TagLib's style
2015-05-18 16:00:47 +02:00
Scott Wheeler
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
Scott Wheeler
0739dd232a
It doesn't make sense to set the factory after construction
...
Closes #259
2015-05-18 14:21:55 +02:00
Scott Wheeler
41a250a15d
Make this macro work with current Qt versions
...
Closes #499
2015-05-18 12:42:24 +02:00