Sean Barrett
314d0a6f9a
update version numbers
ago%!(EXTRA string=5 years)
Sean Barrett
db2acff8b1
stb_vorbis: fix bug in computing end of temp alloc buffer if it's not a multiple of 8
ago%!(EXTRA string=5 years)
Sean Barrett
fb1cea02f8
tweak PR
ago%!(EXTRA string=5 years)
Sean Barrett
6f7420a825
add credits for last few PR merges
ago%!(EXTRA string=5 years)
Rémi Verschelde
c24de24aa8
stb_vorbis: Add missing error checks in comment reading mallocs
...
Fixes #988 .
ago%!(EXTRA string=5 years)
Pedro J. Estébanez
2d0faa4d26
stb_vorbis.c: Fix missing update to 64-bit alignment
ago%!(EXTRA string=5 years)
Clownacy
d8df5e9974
Add myself to the list of contributors
...
The pull-request template says to do so.
ago%!(EXTRA string=5 years)
Clownacy
47a3c4f5b5
stb_vorbis.c - Detect `__NEWLIB__` for `alloca.h`
...
This is needed for `stb_vorbis.c` to compile for the Wii U using
devkitPro.
This should theoretically also fix compilation for the Nintendo
Switch, 3DS, and Wii (with devkitPro, that is) as they all also use
Newlib.
Newlib is also used by Cygwin:
https://cygwin.com/git/?p=newlib-cygwin.git;a=blob;f=newlib/libc/include/alloca.h;h=5d36318914282280b353aed457e1b1f64947b584;hb=HEAD
And the Google Native Client:
https://chromium.googlesource.com/native_client/nacl-newlib/+/refs/heads/master/newlib/libc/include/alloca.h
As you can see from these links, these both provide `alloca.h` as
well, so it appears to be a safe guarantee that `alloca.h` is
available on Newlib.
ago%!(EXTRA string=5 years)
wph612
2e78eb603b
Added debugging check on line 1604
...
I added the code assert(f->valid_bits >= n); instead of removing if (f->valid_bits < 0) return 0; to improve code with checking and debugging instead.
ago%!(EXTRA string=5 years)
wph612
fcd0a0bfaa
Remove if (f->valid_bits < 0) return 0; on line 1603
...
I propose to remove this line because f->valid_bits will never be less than zero since, in the while loop, you're adding 8 to it. Therefore, it will always evaluate to false. This is to help remove redundant code.
ago%!(EXTRA string=5 years)
David Reid
1d35dc8609
stb_vorbis: Fix macro redefinition warning on MinGW.
ago%!(EXTRA string=5 years)
Sean Barrett
37b9b20fde
update version numbers
ago%!(EXTRA string=5 years)
Marco Lizza
41a6bb58d1
Other (pedantic) warnings for possible uninitialized variables.
ago%!(EXTRA string=5 years)
Marco Lizza
43c6bd4e0e
Fixing (pedantic) cast warnings.
ago%!(EXTRA string=5 years)
Sean Barrett
2bb4a0accd
Fix trailing whitespace
ago%!(EXTRA string=5 years)
Sean Barrett
7a69424f15
update version numbers
ago%!(EXTRA string=5 years)
Sean Barrett
d79349d0b7
stb_vorbis: update credits
ago%!(EXTRA string=5 years)
Peter Waller
2f18c96cfb
Pad allocations in setup_{,temp_}malloc for 8-byte alignment
...
4-byte alignment triggered warnings with clang and -fsanitize=undefined.
Fix #799 .
Signed-off-by: Peter Waller <p@pwaller.net>
ago%!(EXTRA string=5 years)
Kevin Croft
58e0c4438d
STB Vorbis: eliminate inaccessible branch
...
The eliminated code removes the (ch == 1) branch, which is scoped
within this if condition: `if (rtype == 2 && ch != 1)`, therefore
the (ch == 1) branch will never be taken.
Fixes #842 .
ago%!(EXTRA string=5 years)
Kevin Croft
3b491aa07c
STB Vorbis: prevent division by zero in decode_resign if ch == 0
...
In the call to decode_residue:
decode_residue(f, residue_buffers, ch, n2, r, do_not_decode);
The channel count is previously intialized as zero and incremented
based on a for-loop (f->channels) plus a conditional,
if (map->chan[j].mux == i). If this doesn't happen then 'ch'
remains zero.
Once inside decode_residue(..), the code has three branches based
on channel count: stereo (ch == 2), mono (ch == 1), and then the
exception if it's neither of those (simple 'else'). It's in here
where a zero-valued 'ch' can be used as the denominator in these
calculations:
int c_inter = z % ch
p_inter = z/ch;
Obviously this 'else' branch is meant for channel counts greater
than two an not for zero channels; so this change simply makes
that branch only valid if (ch > 2).
ago%!(EXTRA string=5 years)
Dougall Johnson
da79a214ef
stb_vorbis: improve fix for theoretical seek performance problem
ago%!(EXTRA string=6 years)
Dougall Johnson
c3298670d0
stb_vorbis: fix a couple asserts that fail on invalid files
ago%!(EXTRA string=6 years)
Dougall Johnson
057914d959
stb_vorbis: fix pushdata for files with audio packets in header pages
...
Fixes #259 , #597
ago%!(EXTRA string=6 years)
Dougall Johnson
7c4eb44a63
stb_vorbis: fix seeking in files with audio packets in header pages
...
Fixes #682 , #580
ago%!(EXTRA string=6 years)
Dougall Johnson
2abc5c6ced
stb_vorbis: fix seek_to_sample_coarse failure near page end
ago%!(EXTRA string=6 years)
Dougall Johnson
6ca87a9e0e
stb_vorbis: fix theoretical seek performance problem
ago%!(EXTRA string=6 years)
Audino
2a0cff1288
Add comment support to stb_vorbis
ago%!(EXTRA string=6 years)
Sean Barrett
5c98e6564b
stb_vorbis: fix typo in CVE number in docs
ago%!(EXTRA string=6 years)
Sean Barrett
1b2fa11055
stb_vorbis: bump version number
ago%!(EXTRA string=6 years)
Sean Barrett
98fdfc6df8
Fix seven bugs discovered and fixed by ForAllSecure:
...
CVE-2019-13217: heap buffer overflow in start_decoder()
CVE-2019-13218: stack buffer overflow in compute_codewords()
CVE-2019-13219: uninitialized memory in vorbis_decode_packet_rest()
CVE-2019-13220: out-of-range read in draw_line()
CVE-2019-13221: issue with large 1D codebooks in lookup1_values()
CVE-2019-13222: unchecked NULL returned by get_window()
CVE-2019-13223: division by zero in predict_point()
ago%!(EXTRA string=6 years)
Sean Barrett
2c2908f505
update version numbers
ago%!(EXTRA string=6 years)
Sean Barrett
a0b521fcf2
no warnings when compiling /W3
...
compiling all test cases and compilers in test.sbm
Compilers:
32-bit:
VS2015
VS2013
VS2008
VC6 (1998)
clang-cl 9.0.1
64-bit
VS2015
clang-cl 9.0.1
ago%!(EXTRA string=6 years)
Sean Barrett
63b59b46b0
update version numbers
ago%!(EXTRA string=6 years)
Kevin Croft
d1dc3fe89c
Fix return typo, disambiguate else, and check for the complete fishead identifier
ago%!(EXTRA string=6 years)
Kevin Croft
604b9367ee
Add detection for Ogg skeleton metadata
ago%!(EXTRA string=6 years)
luz.paz
622b3adad3
Misc. comment typos
...
Found via `codespell -q 3`
ago%!(EXTRA string=7 years)
Sean Barrett
ac66307576
docs
ago%!(EXTRA string=7 years)
Sean Barrett
b79c8458d3
stb_vorbis: avoid NaN due to uninitialized variable
ago%!(EXTRA string=7 years)
Sean Barrett
a77d9213e4
stb_vorbis: no dealloca
ago%!(EXTRA string=7 years)
Sean Barrett
663deb3a43
redo lost stb_vorbis fixes
ago%!(EXTRA string=7 years)
Sean Barrett
dfff6f5e7c
stb_image: fix assert macro usage; stb_vorbis: changelog
ago%!(EXTRA string=7 years)
Sean Barrett
ee0ebfc79b
version numbers
ago%!(EXTRA string=7 years)
Sean Barrett
244d83bc3d
fix unchecked length in stb_vorbis that could crash on corrupt/invalid files
ago%!(EXTRA string=7 years)
Sean Barrett
dd039e8cc5
credits for mingw fixes in #444
ago%!(EXTRA string=8 years)
Sean Barrett
555efbedfc
Update version numbers
ago%!(EXTRA string=8 years)
Fabian Giesen
2da81a6433
stb_vorbis: MinGW has alloca defined in malloc.h.
...
Fixes issue #461 .
ago%!(EXTRA string=8 years)
Infatum
4963448726
fix: Build on MinGW32
ago%!(EXTRA string=8 years)
Sean Barrett
e248e30954
change license to public-domain AND mit (based on twitter vote)
ago%!(EXTRA string=8 years)
Sean Barrett
f88e2a8e7b
update version
ago%!(EXTRA string=8 years)
Sean Barrett
46046238b8
rename Point data structure as suggested in pull request
ago%!(EXTRA string=8 years)