Commit Graph

3865 Commits

Author SHA1 Message Date
Erik de Castro Lopo
09f47c00e1 libFLAC/bitreader.c: Fix shift invoking undefined behaviour
Credit: Oss-Fuzz
Issue: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=16458
Testcase: fuzzer_decoder-5649174900506624
2019-09-16 06:18:07 +10:00
Erik de Castro Lopo
c34c3459b5 libFLAC/bitreader.c: Fix OOB read
Credit: OSS-Fuzz
Issue: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=16457
Testcase: fuzzer_decoder-5076189185572864
2019-09-16 06:18:07 +10:00
Erik de Castro Lopo
04974d2715 Fix a number of gcc 9.2 compiler warnings 2019-09-15 16:14:36 +10:00
Rosen Penev
2409f5f39d Run libFLAC++ through clang-tidy.
Applied the following suggestions:

modernize-deprecated-headers
google-readability-casting
google-readability-namespace-comments
readability-else-after-return
2019-09-15 11:39:08 +10:00
oreo639
01167efa6a Fix function redefinition on arm-none-eabi compilers 2019-09-15 11:35:36 +10:00
Rosen Penev
9ea40e34f8 window: fabs > fabsf and cos > cosf where it makes sense
The f functions are faster. It seems the arguments are all floats.
2019-09-15 11:34:08 +10:00
Rosen Penev
cc6ca9a6ec flac/utils: Add missing define
wcswidth needs _XOPEN_SOURCE defined. Otherwise, no declaration.
2019-09-15 11:30:35 +10:00
Rosen Penev
66dd7f05d7 Switch to utimensat for newer POSIX versions
Some libcs like uClibc-ng can optionally disable deprecated functions.
utime is one of them. When done so, both the header and the function go
missing.

This fixes flac_utime to work in such a situation.
2019-08-20 06:49:13 +10:00
pkubaj
5db5820932 Fix build on FreeBSD PowerPC
Used the elf_aux_info function on FreeBSD and clarify that users of other
systems need to implement reading from AT_HWCAP2.
2019-08-18 10:44:15 +10:00
Ralph Giles
88ddb5b59e Fix metaflac under ctest.
The 1.3.3 release didn't update the version number in the cmake
build. It's too late to fix the release, but bringing the version
number into sync allows the metaflac test which verifies the
encoder's embedded version number to pass, giving us proper test
feedback on other changes to the development tree.
2019-08-16 06:59:42 +10:00
Erik de Castro Lopo
4ca0d85c5d libFLAC: Rename get_client_data_from_decoder function
This function was added after the 1.3.2 release, but the name was bad
(missing "FLAC__" at the start) and the pointer returned should be 'const'.
2019-08-09 09:36:19 +10:00
sezero
f85a2f44f6 increase required minimum cmake version to 3.9. 2019-08-06 07:26:19 +10:00
sezero
4a43f2bd4d Do not assume that sys/param.h defines MIN and MAX
One such example is sys/param.h from MinGW.
2019-08-05 12:35:08 +10:00
Ralph Giles
8dda876b23 doc: Add xmlns attributes.
validator.w3.org wants a namespace declaration for xhtml.
2019-08-05 10:48:40 +10:00
Erik de Castro Lopo
f764434a39 Version 1.3.3 2019-08-04 19:47:53 +10:00
Fabian Greffrath
83d829afc5 doc: Remove xhtml validator links.
Fix "privacy-breach-w3c-valid-html" lintian error.

Don't ping an external site when loading documentation
pages since this can be used to track user activity.

These links are also broken, since they depend on the
referer header, which browsers no longer send to insecure
pages for similar privacy reasons. That aspect could be
addressed by using https urls for the validator site.

Signed-off-by: Ralph Giles <giles@thaumas.net>
2019-08-04 17:05:09 +10:00
Ralph Giles
a41eb7ddd4 doc: Use empty-element <hr/> tag.
Improve the conformance of the xhtml generated by doxygen by
using the self-closing <hr/> tag in the custom footer.

Without this, xmllint complains about </body> and </html> end
tags inside the still-only <hr>. That syntax is allowed in
html but not xml.
2019-08-04 17:05:09 +10:00
Ralph Giles
e229fb4e56 .travis.yml: Generate and validate html documentation.
Install Doxygen when running on the linux environment to test
generation of the API documentation.

Run the included static html documentation as well as the
generated API documentation through xmllint to verify
it conforms to the declared DTD. Since this this will be very
slow or fail relying on network resources, also install
the w3c-sgml library so the xhtml1 DTDs are available locally.

We're checking the source files, not build results in the
particular environment, so it's fine to run this check
on only a subset of builds.

Don't validate on CMake builds since they're not currently
generating API documentation even when Doxygen is available.
2019-08-04 17:05:09 +10:00
Dagobert Michelsen
fcabd81aba Add -lrt for all operating systems for clock_gettime 2019-07-17 08:16:39 +10:00
Erik de Castro Lopo
deb21bc251 Update Visual Studio 2005 files
Patch-from: Janne Hyvärinen
2019-07-16 07:53:41 +10:00
Erik de Castro Lopo
48e8dbcf4a Fix CppCheck warnings 2019-07-15 09:42:38 +10:00
Erik de Castro Lopo
1146117229 test: Ignore varying length in metadata
The metadata test checked for specific lengths which change from 5 bytes for
something like "1.3.2" to 9 bytes for something like "1.3.3pre1".
2019-07-15 09:42:38 +10:00
evpobr
cd03042ea9 Fix CMake configure warning
Policy CMP0054 is not set: Only interpret if() arguments as variables or keywords when
 unquoted.
2019-06-01 12:33:53 +10:00
Vitaliy Kirsanov
0c3440aec0 Fixed #107: CMake error without enabling BUILD_CXXLIBS 2019-05-31 19:19:20 +10:00
Виталий Кирсанов
77e234acef CMake: fixed windows_unicode_filenames linking errors 2019-05-28 15:55:27 +10:00
evpobr
e4b94e3144 Fix Visual Studio solution generation with CMake
Rename flac application target to flacapp to avoid name collision with FLAC library target.

Closes #101.
2019-05-12 09:00:07 +10:00
Vitaliy Kirsanov
95a94232a8 Added README description for CMake 2019-05-04 11:41:48 +10:00
Vitaliy Kirsanov
26cbd97884 CMAKE_BUILD_TYPE set to Release by default: improved 2019-05-04 11:41:48 +10:00
evpobr
29fadb6e47 Enable components search in package config mode 2019-05-04 11:41:48 +10:00
Vitaliy Kirsanov
1794b0cd79 CMAKE_BUILD_TYPE set to Release by default 2019-05-04 11:41:48 +10:00
Vitaliy Kirsanov
b967ef060e Added ECHO_C to CMake tests 2019-05-04 11:41:48 +10:00
Vitaliy Kirsanov
55447a2d58 Ogg::Ogg renamed to Ogg::ogg 2019-05-04 11:41:48 +10:00
Vitaliy Kirsanov
573dbc12ae Use of BUILD_SHARED_LIBS added 2019-05-04 11:41:48 +10:00
Виталий Кирсанов
1cb968a7d4 Fixed dependencies on win_utf8_io 2019-05-04 11:41:48 +10:00
Vitaliy Kirsanov
5d81610eb5 Fixed dependency between grabbag and utf8 2019-05-04 11:41:48 +10:00
Vitaly Kirsanov
a82a014cf1 CMake minimum required lowered to 3.1 2019-05-04 11:41:48 +10:00
evpobr
d38b867f68 Add missing fseeko check 2019-05-04 11:41:48 +10:00
evpobr
b3c20d3b8e Integrate CMake to Travis CI tests
* Add CMake builds with ENABLE_64_BIT_WORDS enabled\disabled
* Run tests in parallel jobs
* Use Xenial Travis image to support CMake >= 3.12
* Install libtool-bin package missing in Xenial image
2019-05-04 11:41:48 +10:00
Vitaliy Kirsanov
2359563a46 FLAC now depends on win_utf8_io
Accidently found this missing dependency
2019-05-04 11:41:48 +10:00
Vitaly Kirsanov
8610c3acfb Added /arch:SSE2 flag 2019-05-04 11:41:48 +10:00
Vitaly Kirsanov
aa96297d78 Versions for shared libs specified 2019-05-04 11:41:48 +10:00
Vitaliy Kirsanov
60129c7018 Cosmetic change: using $<COMPILE_LANGUAGE:> 2019-05-04 11:41:48 +10:00
Vitaliy Kirsanov
5435f15be4 /test/*.sh enabled for CTest in UNIX 2019-05-04 11:41:48 +10:00
Vitaliy Kirsanov
6cd2b6cded FindOGG.cmake module added 2019-05-04 11:41:48 +10:00
Vitaliy Kirsanov
c39718d7a3 CMake support added 2019-05-04 11:41:48 +10:00
lvqcl
12ec86c618 Use MMX ASM fucntions instead of SSE4.1 if available
These SSE4.1 functions are not always faster than their MMX ASM counterparts,
so let's use ASM functions if they're available.
2019-03-08 07:01:19 +11:00
Robert Kausch
b936e398e2 Speed up FLAC__bitwriter_write_byte_block (metadata writing) 2019-03-08 07:00:12 +11:00
Karthik Periagaram
cc15b7427a Suppress compression failure message if it is not an error
If the user specifies `--no-error-on-compression-fail`, there is no need
to treat compression failure as an error. Hence, the failure message
should be suppressed along with the non-zero exit code (which already
is suppressed).
2019-02-01 18:20:30 +11:00
lvqcl
421961f00b Replace hadd with shuffle + add 2018-09-20 07:20:13 +10:00
lvqcl
faafa4c82c Cosmetic changes in lpc_asm.nasm and utf8.c 2018-09-02 21:26:51 +10:00