Commit Graph

2514 Commits

Author SHA1 Message Date
19ee7c86c4 Merge branch 'master' into taglib2 2018-10-28 10:53:23 -05:00
5cb589a5b8 Updated NEWS for the latest changes 2018-10-28 08:43:45 -05:00
a4d04e0c40 Added APE, DSF, and DFF formats to the list 2018-10-28 08:42:19 -05:00
4ab0891646 Added DSF and DSDIFF authors 2018-10-28 08:35:15 -05:00
d71398c953 Add DSF and DSDIFF file types management (#878)
* Add DSF and DSDIFF file types management

* Fixes for some build chains

* unit64_t replaced by unsigned long long, warning fixes

* Remove C++11 extension incompatible with some build chains (enumeration in a nested name specifier)

* Change typedef types (uint, ulong, ...) to standard types
remove BUILD_FRAMEWORK changes from this pull request

* Replace deprecated String::null and ByteVector::null by String() and ByteVector()
Styling update, thanks to FestusHagen

* Restyling

* Restyling to reduce length of excessively long lines

* Add to detectByExtension

* Added `isSupported(IOStream *stream)` to `DSF::File` and `DSDIFF::File`
2018-10-26 19:45:49 -05:00
bfed3797a0 Improve CMake VISIBILITY_HIDDEN option handling (#810)
Use standard CMake's CXX_VISIBILITY_PRESET property.
2018-10-26 19:26:53 -05:00
e435372146 added OS X built files to .gitignore (#828) 2018-10-26 19:23:44 -05:00
c2f544c9d1 Fill TableOfContentsFrame::toString(). (#852) 2018-10-26 19:21:18 -05:00
8ca75f03b5 Follow TagLib's brace style 2018-10-10 19:24:44 +02:00
036a0317b9 Add support for file descriptor to FileStream (#832)
Add support for file descriptor
2018-10-10 12:25:02 -04:00
8f6fe0b16c Don't list the description twice in UserTextIdentificationFrame::toString() (#853) 2018-10-09 18:55:02 -05:00
fc31a09c03 Fix undefined PLATFORM_WINRT CMake option (#870) 2018-10-09 18:52:09 -05:00
2c4ae870ec Fixed OOB read when loading invalid ogg flac file. (#868) (#869)
CVE-2018-11439 is caused by a failure to check the minimum length
of a ogg flac header. This header is detailed in full at:
https://xiph.org/flac/ogg_mapping.html. Added more strict checking
for entire header.
2018-10-09 18:46:55 -05:00
2052cda5fb Added setProperties implementation to TagUnion (#813)
Added setProperties support in TagUnion
2018-08-24 08:40:15 -05:00
d8d56d3937 Add support for cmID, purl, egid MP4 atoms (#862). (#863) 2018-04-09 08:32:05 -05:00
a80093167f Update links 2017-11-20 00:03:52 +01:00
249f892455 Fix crash when loading an empty mpeg file (#830)
When loading an empty file (empty.txt -> empty.mp3 ), TagLib will crash.
buffer.size() is 0, then buffer.size() - 1 is undefined (unsigned int)
2017-11-06 09:48:17 -06:00
cb9f07d9dc Don't assume TDRC is an instance of TextIdentificationFrame (#831)
If TDRC is encrypted, FrameFactory::createFrame() returns UnknownFrame
which causes problems in rebuildAggregateFrames() when it is assumed
that TDRC is a TextIdentificationFrame
2017-09-30 10:15:41 -05:00
0b583bafd0 taglib: fix test build failure on powerpc/c++11 (#834)
powerpc is a platform with 'char' == 'unsigned char'.
As a result '-1' is not expressible in char and build fails as:

```
    # '-funsigned-char' to force test build failure on other platforms
    $ cmake .. -DBUILD_TESTS=YES -DCMAKE_CXX_FLAGS="-O2 -funsigned-char" -DCMAKE_C_FLAGS="-O2 -funsigned-char"
    ...
    $ make check
    tests/test_synchdata.cpp: In member function 'void TestID3v2SynchData::testToUIntBroken()':
    tests/test_synchdata.cpp:78:33: error: narrowing conversion of '-1' from 'int' to 'char' inside { } [-Wnarrowing]
     char data[] = { 0, 0, 0, -1 };
                                 ^
```

The fix is to expliticly cast -1 to 'char'.

Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
2017-09-18 20:06:55 -05:00
6048cdef3e Apply smart pointers to MPC::File. 2017-06-14 10:11:37 +09:00
ff34e42aef Apply smart pointers to FLAC::File. 2017-06-14 10:09:11 +09:00
bac14180e9 Apply smart pointers to DSF::File. 2017-06-14 09:51:38 +09:00
c30bae9b00 Apply smart pointers to RIFF related classes. 2017-06-14 09:47:38 +09:00
4dcdaaf92a Apply smart pointers to ASF::File. 2017-06-14 09:37:31 +09:00
507f1a96a7 Merge branch 'master' into taglib2
# Conflicts:
#	taglib/audioproperties.cpp
2017-06-14 09:15:06 +09:00
4648394841 Check if mandatory header objects are present when opening ASF files.
Also removes some assignments of "this".
It feels too tricky when it is not absolutely necessary.
2017-06-13 17:22:00 +09:00
e026d797e0 Use a macro to pretend virtual functions. 2017-06-13 17:01:53 +09:00
eeb2f5de09 Fix some typos in debug messages. 2017-06-13 15:05:25 +09:00
81945efdff Move deprecated functions setID3v2FrameFactory(). 2017-06-13 09:40:01 +09:00
2075d865cd Move deprecated function ByteVector::checksum() to oggpage.cpp.
ByteVector::checksum() was specially designed for Ogg pages.
So it should belong to Ogg rather than ByteVector.
2017-06-13 09:31:30 +09:00
89f06af3f7 Remove a deprecated function FileRef::create(). 2017-06-12 17:27:08 +09:00
3ae0d4aa90 Merge branch 'master' into merge-master-to-taglib2
# Conflicts:
#	taglib/fileref.cpp
#	taglib/fileref.h
#	taglib/mpeg/mpegheader.cpp
#	taglib/tagutils.h
2017-06-12 17:23:44 +09:00
1792ee9db8 Update NEWS. 2017-06-12 13:07:21 +09:00
1fb310ec1f Merge pull request #799 from TsudaKageyu/filetype-detection
Enable FileRef to detect file types by the actual content of a stream.
2017-06-12 13:04:15 +09:00
c8bcd153fe TableOfContentsFrame depends on ByteVectorList. 2017-06-09 17:52:56 +09:00
7e9f019a49 Remove optional dependencies on Boost.
Standard smart pointers are now common among the latest compilers.
2017-06-09 11:31:22 +09:00
10e8866fec Merge branch 'master' into merge-master-to-taglib2
# Conflicts:
#	ConfigureChecks.cmake
#	taglib/CMakeLists.txt
#	taglib/mpeg/id3v2/frames/synchronizedlyricsframe.cpp
#	taglib/toolkit/tfilestream.cpp
2017-06-09 11:11:44 +09:00
662f340f93 Merge pull request #824 from evpobr/fix-createfile2
Fix WinRT configuring
2017-06-09 08:53:25 +09:00
48d8c0a808 Merge pull request #823 from TsudaKageyu/isolate-3rdparty-lib
Isolate 3rdparty library for easier maintenance.
2017-06-09 08:53:10 +09:00
5ebd3d5276 Fix WinRT configuring
Don't rely on _WIN32_WINNT value to enable WinRT support.

if _WIN32_WINNT is not set manually, it is defaulted to SDK version. So
if you use SDK > 8 you cannot use TagLib under Win7 and lower because of
CreateFile2 function dependency.

PLATFORM_WINRT option (OFF by default) was introduced to enable WinRT
build.

Related issues: https://github.com/Microsoft/vcpkg/issues/1240
2017-06-08 19:00:37 +05:00
14af861d24 Isolate 3rdparty library for easier maintenance. 2017-06-07 12:51:44 +09:00
3795f277fb Update UTF8-CPP to v2.3.5. 2017-06-07 12:12:31 +09:00
6045995e65 Remove an unused include directory from taglib/CMakeLists.txt. 2017-06-07 11:38:46 +09:00
c2fe93c12b Restore FileRef::create() in order not to change the previous behavior. 2017-06-06 09:17:34 +09:00
ea9202d9ee Update INSTALL.md
Added a note that with MS Visual Studio 2017 one can directly open the CMake project.
2017-06-05 14:49:09 +02:00
3c657d1a44 Merge pull request #821 from supermihi/master
Fix Markdown syntax of INSTALL file and rename it to *.md
2017-06-05 07:37:12 -04:00
adf0f76360 Fix Markdown syntax of INSTALL file and rename it to *.md
This enables proper formatted display of the file on e.g. GitHub, increasing readability.
2017-06-05 11:09:16 +02:00
682ea77c2b Mention that FileRef::create no longer works. 2017-05-31 09:41:41 +09:00
15c3c756ca Update NEWS. 2017-05-31 09:28:30 +09:00
4801fbb927 Merge pull request #818 from LindyBalboa/add_rate_atom_support
Add direct support for "rate" atom
2017-05-31 09:20:27 +09:00