Commit Graph

65 Commits

Author SHA1 Message Date
d0238ba82f Avoid the risk of subtracting between signed and unsigned types. 2015-12-21 11:44:25 +09:00
6d27a1013d Merge pull request #687 from TsudaKageyu/save-mpc
Fix saving MPC files.
2015-12-18 09:00:45 +09:00
a0b8683656 Use a standard type rather than TagLib::uint.
This won't break the ABI compatibility.
2015-12-03 02:15:41 +09:00
085a0ef298 Use a standard type rather than TagLib::ulong.
This won't break the ABI compatibility.
2015-12-03 00:03:06 +09:00
dcc0fe553c Use a standard type rather than TagLib::ushort.
This won't break the ABI compatibility.
2015-12-02 18:59:45 +09:00
83ffc87598 Surround some internal stuff by anonymous namespaces. 2015-12-02 12:00:43 +09:00
083eadec60 Fix saving MPC files.
This fixes the issue reported at #624.
2015-11-27 00:53:03 +09:00
fa4289e044 Fix instance references to a static member function. 2015-11-24 16:36:50 +09:00
b592f78238 Unify common functions for finding tags.
Several classes have exactly identical functions for finding tags.
This also hides the functions from public headers.
2015-11-21 09:30:04 +09:00
c5cf9b93bc Fix segfaults when calling File::properties() after strip().
Backport TagUnion::properties() and TagUnion::removeUnsupportedProperties() from taglib2.
2015-08-25 11:03:00 +09:00
018e969026 Add warnings about calling File::save() repeatedly. 2015-08-04 15:47:18 +09:00
4328a830f9 Merge pull request #559 from TsudaKageyu/audioprop-mpc
(wishlist) MusePak: AudioProperties improvements
2015-08-01 01:27:20 +09:00
bd251aed37 MusePak: Remove unused formal parameters. 2015-08-01 00:04:27 +09:00
be33340383 Remove an useless function call. 2015-06-22 09:54:17 +09:00
e605e96835 MusePak: Avoid seeking a file when not needed. 2015-06-20 17:30:25 +09:00
3a1c784eec MusePak: A bit more accurate calculation of the stream length. 2015-06-18 17:05:58 +09:00
4a014c8113 MusePak: AudioProperties improvements
Add lengthInSeconds(), lengthInMilliseconds() properties. (#503)
Remove some data members which are not needed to carry.
Add some tests for audio properties.
Add some supplementary comments.
2015-06-18 17:05:58 +09:00
b37eaace15 Removed an unused data member from MPE::File.
It seems to be related to scan().
2015-06-12 14:07:52 +09:00
c1c70edb76 Remove some unused private function prototypes. 2015-06-12 11:50:38 +09:00
2b260fd2e8 Fix some typos in comments. 2015-06-09 10:33:32 +09:00
e463d14f2e Check for EOF to fix a segfault while parsing fuzzed MPC files. 2015-02-17 01:22:39 +09:00
829ae2112a Check the packet size to fix a segfault error while parsing fuzzed MPC files. 2015-02-17 01:22:39 +09:00
65664e6855 Check for EOF to fix an infinite loop while parsing fuzzed MPC files. 2015-02-17 01:22:39 +09:00
2193d6dd84 Fix an out-of-bounds access and consequent errors while parsing fuzzed MPC files.
Consequent errors may vary: segfault, zerodiv and so forth.
2015-02-17 01:22:38 +09:00
30f62ba887 Updated the relevant comments 2013-07-04 22:14:42 +09:00
1503909824 Added the methods to check which kind of tags the file actually has. 2013-07-04 18:11:33 +09:00
f77a84486e Fixed comments for File constructors 2013-05-30 02:04:10 +09:00
439f27640a ByteVector::toUInt() takes offset and length 2013-04-18 18:36:19 +09:00
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
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
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
6b9ef6421f Fixed indents 2012-10-11 22:10:19 -04:00
d15c8453ac Added check if file is open before attempting to read tags 2012-10-11 21:20:03 -04:00
f11b206fe8 Do not delete the IOStream object in TagLib::File 2012-09-06 19:43:52 +02:00
1c35918834 Merge remote-tracking branch 'TsudaKageyu/warnings' 2012-09-02 15:25:41 +02:00
590cd4c9f6 Fix warnings with VS2010 2012-08-23 20:54:18 +09:00
6c0227ee13 Fix compilation errors with Visual Studio 2010 2012-08-23 19:58:21 +09:00
930168f990 Refactoring of the Musepack SV8 properties code 2012-07-11 14:13:41 +02:00
291d925fc1 MPC v8 audio properties 2012-07-11 13:08:10 +02:00
742a3a1dbb Rename anonymous enumeration symbols to be unique in mpcfile.cpp 2012-04-15 02:39:19 -07:00
69ac59f5f0 Added sampleFrames() to audio properties 2012-04-06 18:30:13 -04:00
de51307de7 Added lots of missing includes 2012-02-15 21:54:19 +01:00
a5e45f196b Started to work on ID3v2. 2012-01-21 23:05:59 +01:00
5647b2e293 Made im/export functions nonvirtual. Added similar functions to File and
its subclasses. TagLib::File contains a bunch of dynamic_casts to call
the correct specializations.
2011-08-28 22:58:40 +02:00
8eb32577bd Merge branch 'abstract-io' 2011-06-09 18:58:05 +02:00
d03ef3c312 Use the PUBLIC_HEADER property to prepare for building an OS X framework 2011-04-18 16:52:47 +02:00
26c130c387 Duplicate contructors of File subclasses to accept IOStream* 2011-04-11 23:31:44 +02:00
2f9838a440 *poof*
I've warned people about removing autoconf/automake support for a long time,
so let's make it happen for 1.7. CMake is now the only supported build system.
I'll update build docs in a following commit.

CCMAIL:taglib-devel@kde.org


git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@1220235 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
2011-02-13 11:50:25 +00:00
299e3f0ad6 Define a macro to properly construct std::bitset
git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@1216679 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
2011-01-24 07:32:31 +00:00
df86f45dad Back to unsigned long, it breaks compilation on Solaris
git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@1216598 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
2011-01-24 06:02:15 +00:00