Commit Graph

2899 Commits

Author SHA1 Message Date
evpobr
942ae829be
Update NEWS 2021-01-24 12:37:47 +05:00
evpobr
6a3df24db4
Add info about current maintainers and releaser
Related to #609
2021-01-23 18:10:18 +05:00
zodf0055980
4fe1c6a0b3 fix api.md table error 2021-01-20 13:35:08 +05:00
evpobr
288764df09 Fix use of uninitialized value in endswap_int64_t_array
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=25366

Credit to OSS-Fuzz.
2021-01-19 20:38:31 +05:00
Maki
2221cbedd7 Renamed oga to ogg in simple_formats 2021-01-12 16:34:22 +05:00
yuan
9113112445 Improve handling of SMPL chunks in WAV files.
fixes #675
2021-01-06 14:42:31 +05:00
Arthur Taylor
b91c260346 id3: Identify ID3v2.2 and ID3v2.4 headers
Identify ID3v2.2 and ID3v2.4 headers. Previously only ID3v2.3 headers
were identified.
2021-01-05 09:02:40 -08:00
Arthur Taylor
39d8458904 id3: Fix skip of large ID3v2 headers
Fix a bug in id3.c where large ID3v2 headers would fail to seek to the
embedded file. ID3v2 tags are skipped over, treating the wrapped file as
an embedded file. id3_skip() sets the embedded file offset to be just
after the ID3v2 tag ends, then seeks the psf_binheader() to the
fileoffset.

psf_binheader_read() accomplishes seeks by either reading and buffering
bytes until the offset is reached, or if the buffer would be too large,
seeking the underlying file instead using psf_fseek(). psf_fread does
not take the embedded file offset into account, while psf_fseek() does.

In the case of ID3 tags larger than the binheader buffer max, this has
the effect of seeking to twice the id3v2 tag length, as
psf_fseek(fileoffset, SEEK_CUR) adds the fileoffset to the offset
argument again. This lands in the middle of a stream which then cannot
be identified.

To resolve the issue, seek the binheader BEFORE setting the embedded
file offset.

An as-yet unresolved issue is that as skipping forward by seeks is not
supported on pipes, id3_skip() of large ID3v2 tags does not work on
pipes.
2021-01-05 09:02:40 -08:00
evpobr
d03045b014 Fix GitHub actions CI macOS job 2020-12-21 15:54:25 +05:00
evpobr
71250037c7 Document SFC_GET_DITHER_XXX and SFC_SET_DITHER_XXX commands
Closes #674.
2020-12-21 15:27:58 +05:00
SmiVan
bc8a01657b Fixed typos in command documentation. 2020-12-18 18:19:59 +05:00
Tim Gates
bf15a91fb0 docs: fix simple typo, suppiled -> supplied
There is a small typo in src/sndfile.c.

Should read `supplied` rather than `suppiled`.
2020-12-12 10:44:08 +05:00
evpobr
15bb39b4f4 Fix CMake bug with sndio library dependency
In configure.ac sndio search is restricted to OpenBSD OS, make the same
for CMake.
2020-12-11 15:25:28 +05:00
evpobr
f87a1ffe9c Make SSE2 configurable for CMake builds #666
See ENABLE_SSE2 option explanation in README.md.
2020-12-11 15:12:54 +05:00
evpobr
9d4706df0c Fix build on platforms without SSE2
Include math.h to common.h to fix missing lrint() and lrintf().
2020-12-09 15:11:07 +05:00
evpobr
e7f5137b47 Implement fast SSE2 lrint and lrintf, closes #660
lrint() and lrintf() are ridiculously slow when libsndfile is built
using Visual C++.

On x86 and AMD64 platforms this patch adds SSE2 optimized versions.

It is safe to assume that non-SSE2 processors are no longer available to
avoid unnecessary checks.
2020-12-08 10:42:26 +05:00
Max Dymond
f7fa0cb2a5 Use python3 to execute helper script 2020-12-07 20:25:40 +05:00
Tom Stellard
91128fcd60 configure: Use version-script when compiling with clang on unix
This fixes incompatibilities with the clang and gcc builds, and also
matches what is done in the CMake builds.
2020-11-21 16:55:14 +05:00
evpobr
03667195a3 Fix use of uninitialized value in exif_subchunk_parse
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=26712

Credit to OSS-Fuzz.
2020-11-15 19:53:43 +05:00
evpobr
616d0ecc0a Update Virtual I/O documentation, closes #656 2020-11-15 18:32:43 +05:00
Md Ashfaq Salehin
b706e62ead Added missing parenthesis
Adding libsndfile in NDK based android app is failing for this typo
2020-11-13 08:36:06 +05:00
IOhannes m zmölnig
e6515abca0 Exclude repository-configuration from git-archive
having a .gitignore file in the git-archives (e.g. like the automated
archives provided by github) is rather annoying if the archive gets
imported in other repositories.
2020-11-12 15:36:08 +05:00
evpobr
bf24f18b2c Fix missing version info for CMake DLL builds 2020-11-10 10:52:30 +05:00
evpobr
08d802a3d1 Fix memory leak in aiff_read_header
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=26812

Credit to OSS-Fuzz.
2020-11-08 11:31:01 +05:00
Oskar Wallgren
2cea76b40e SF_BROADCAST_INFO -> SF_LOOP_INFO 2020-11-01 11:02:31 +05:00
evpobr
4819cad05c Fix memory leak in wavlike_read_peak_chunk
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=26703

Credit to OSS-Fuzz.
2020-10-29 11:00:55 +05:00
evpobr
bdcbce76b2 Fix memory leak in aiff_read_basc_chunk
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=26613

Credit to OSS-Fuzz.
2020-10-29 10:26:22 +05:00
evpobr
ef57e21454 Cleanup CONTRIBUTING.md 2020-10-29 10:05:18 +05:00
evpobr
dc982dad37 Improve CMake SQLite3 find module
Make it compatible with official find module (CMake >= 3.14).
2020-10-27 17:01:46 +05:00
evpobr
77209fa248 Fix Autotools configure on macOS 2020-10-26 09:38:40 +05:00
Martin Delille
5d1c0777f3 Remove CMAKE_OSX_DEPLOYMENT_TARGET which should be set by the consumer 2020-10-25 22:29:30 +05:00
evpobr
ed40d14e1f Update notes for Windows users in README.md, closes #617. 2020-10-23 07:19:07 +05:00
Max Dymond
1998691e56 Fix up the fuzzer so that it can't under or overseek.
Instead, print out the bad seek, e.g.

```
Running: /out/clusterfuzz-testcase-minimized-sndfile_fuzzer-4838501290606592
vf overseek: new_offset(539033364) > vf->length(20);  whence(1), vf->offset(20), offset(539033344)
vf overseek: new_offset(539033364) > vf->length(20);  whence(1), vf->offset(20), offset(539033344)
```
2020-10-22 17:31:33 +05:00
evpobr
46025e4bd7 Fix GitHub Actions CI macOS build errors
This is temporary fix.

https://github.com/actions/virtual-environments/issues/1811
2020-10-22 17:30:18 +05:00
evpobr
ed75672f56 Fix AIFF parsing bug
e44d327 commit was buggy.
2020-10-22 17:07:15 +05:00
evpobr
e44d3276af Fix memory leak in aiff_open
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=25438

Credit to OSS-Fuzz.
2020-10-21 09:45:23 +05:00
evpobr
942acc65bf Update site documentation
* Use GitHub's Jekyll static site generator.
* Move all documentation to docs/ directory.
* Convert HTML to Markdown.
2020-10-19 16:52:27 +05:00
Max Dymond
ef43c650ab Fix memory leak in wav_read_acid_chunk
Credit to OSSFuzz
2020-10-19 13:51:41 +05:00
Max Dymond
b765dc5e64 Fix leak in wav_read_header
Credit to OSS-Fuzz (issue 25499)
2020-10-15 22:15:03 +05:00
Max Dymond
20705e1ee9 Fix leak in wavlike_read_cart_chunk
Credit to OSS-Fuzz (issue 26368)
2020-10-15 22:11:05 +05:00
Max Dymond
d1db139cb0 Fix up git repository in ci_oss.sh 2020-10-15 21:11:02 +05:00
evpobr
ddf6d7bf46 Allow CMake ENABLE_STATIC_RUNTIME option for MinGW 2020-10-14 16:04:42 +05:00
evpobr
37609184a6 Fix aiff_read_header() memory leak
Credit to OSS-Fuzz.
2020-10-14 16:03:17 +05:00
evpobr
e9e31f6030 Fix memory leak in wav_read_smpl_chunk()
Credit to OSS-Fuzz.
2020-10-14 15:56:08 +05:00
evpobr
6b20d2d312 Change CMake project name to libsndfile 2020-10-13 09:35:01 +05:00
evpobr
7ca049d374 CMake: Improve MSVC runtime library flags handling
Change behaviour of `ENABLE_STATIC_RUNTIME` option:

* You can use `ENABLE_STATIC_RUNTIME` for CMake >= 3.15 without error.
* You can use your our method to set MSVC runtime library flags if none of `ENABLE_STATIC_RUNTIME` and `CMAKE_MSVC_RUNTIME_LIBRARY` were set.
2020-10-13 08:47:04 +05:00
evpobr
027e165bb5 Add CODEOWNERS file
GitHub will assign reviewers according this file.
2020-10-13 08:44:32 +05:00
evpobr
04e4b70205 CMake: Fix INSTALL_MANPAGES option 2020-10-09 13:14:22 +05:00
evpobr
4a253ba0dc Update documentaton links 2020-10-05 12:21:19 +05:00
evpobr
fe493272d2 Set default CPACK_PACKAGE_NAME to libsndfile 2020-09-25 17:49:18 +10:00