stb_vorbis: Update to upstream version 1.20
Upstreams our crash fixes from #38422 and #40174.
This commit is contained in:
parent
115ad47a0c
commit
8dffca4196
|
@ -426,9 +426,8 @@ Collection of single-file libraries used in Godot components.
|
||||||
* License: zlib
|
* License: zlib
|
||||||
- `stb_vorbis.c`
|
- `stb_vorbis.c`
|
||||||
* Upstream: https://github.com/nothings/stb
|
* Upstream: https://github.com/nothings/stb
|
||||||
* Version: 1.19
|
* Version: 1.20
|
||||||
* License: Public Domain (Unlicense) or MIT
|
* License: Public Domain (Unlicense) or MIT
|
||||||
* Modifications: `f->temp_offset += (sz+3)&~3;` changed to `f->temp_offset += (sz+7)&~7;` (needed until fixed upstream)
|
|
||||||
|
|
||||||
|
|
||||||
## nanosvg
|
## nanosvg
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
// Ogg Vorbis audio decoder - v1.19 - public domain
|
// Ogg Vorbis audio decoder - v1.20 - public domain
|
||||||
// http://nothings.org/stb_vorbis/
|
// http://nothings.org/stb_vorbis/
|
||||||
//
|
//
|
||||||
// Original version written by Sean Barrett in 2007.
|
// Original version written by Sean Barrett in 2007.
|
||||||
|
@ -31,9 +31,11 @@
|
||||||
// Phillip Bennefall Rohit Thiago Goulart
|
// Phillip Bennefall Rohit Thiago Goulart
|
||||||
// github:manxorist saga musix github:infatum
|
// github:manxorist saga musix github:infatum
|
||||||
// Timur Gagiev Maxwell Koo Peter Waller
|
// Timur Gagiev Maxwell Koo Peter Waller
|
||||||
// github:audinowho Dougall Johnson
|
// github:audinowho Dougall Johnson David Reid
|
||||||
|
// github:Clownacy Pedro J. Estebanez Remi Verschelde
|
||||||
//
|
//
|
||||||
// Partial history:
|
// Partial history:
|
||||||
|
// 1.20 - 2020-07-11 - several small fixes
|
||||||
// 1.19 - 2020-02-05 - warnings
|
// 1.19 - 2020-02-05 - warnings
|
||||||
// 1.18 - 2020-02-02 - fix seek bugs; parse header comments; misc warnings etc.
|
// 1.18 - 2020-02-02 - fix seek bugs; parse header comments; misc warnings etc.
|
||||||
// 1.17 - 2019-07-08 - fix CVE-2019-13217..CVE-2019-13223 (by ForAllSecure)
|
// 1.17 - 2019-07-08 - fix CVE-2019-13217..CVE-2019-13223 (by ForAllSecure)
|
||||||
|
@ -577,7 +579,7 @@ enum STBVorbisError
|
||||||
#if defined(_MSC_VER) || defined(__MINGW32__)
|
#if defined(_MSC_VER) || defined(__MINGW32__)
|
||||||
#include <malloc.h>
|
#include <malloc.h>
|
||||||
#endif
|
#endif
|
||||||
#if defined(__linux__) || defined(__linux) || defined(__EMSCRIPTEN__)
|
#if defined(__linux__) || defined(__linux) || defined(__EMSCRIPTEN__) || defined(__NEWLIB__)
|
||||||
#include <alloca.h>
|
#include <alloca.h>
|
||||||
#endif
|
#endif
|
||||||
#else // STB_VORBIS_NO_CRT
|
#else // STB_VORBIS_NO_CRT
|
||||||
|
@ -599,7 +601,9 @@ enum STBVorbisError
|
||||||
#undef __forceinline
|
#undef __forceinline
|
||||||
#endif
|
#endif
|
||||||
#define __forceinline
|
#define __forceinline
|
||||||
|
#ifndef alloca
|
||||||
#define alloca __builtin_alloca
|
#define alloca __builtin_alloca
|
||||||
|
#endif
|
||||||
#elif !defined(_MSC_VER)
|
#elif !defined(_MSC_VER)
|
||||||
#if __GNUC__
|
#if __GNUC__
|
||||||
#define __forceinline inline
|
#define __forceinline inline
|
||||||
|
@ -1600,7 +1604,8 @@ static uint32 get_bits(vorb *f, int n)
|
||||||
f->valid_bits += 8;
|
f->valid_bits += 8;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (f->valid_bits < 0) return 0;
|
|
||||||
|
assert(f->valid_bits >= n);
|
||||||
z = f->acc & ((1 << n)-1);
|
z = f->acc & ((1 << n)-1);
|
||||||
f->acc >>= n;
|
f->acc >>= n;
|
||||||
f->valid_bits -= n;
|
f->valid_bits -= n;
|
||||||
|
@ -4256,7 +4261,7 @@ static void vorbis_init(stb_vorbis *p, const stb_vorbis_alloc *z)
|
||||||
memset(p, 0, sizeof(*p)); // NULL out all malloc'd pointers to start
|
memset(p, 0, sizeof(*p)); // NULL out all malloc'd pointers to start
|
||||||
if (z) {
|
if (z) {
|
||||||
p->alloc = *z;
|
p->alloc = *z;
|
||||||
p->alloc.alloc_buffer_length_in_bytes = (p->alloc.alloc_buffer_length_in_bytes+3) & ~3;
|
p->alloc.alloc_buffer_length_in_bytes &= ~7;
|
||||||
p->temp_offset = p->alloc.alloc_buffer_length_in_bytes;
|
p->temp_offset = p->alloc.alloc_buffer_length_in_bytes;
|
||||||
}
|
}
|
||||||
p->eof = 0;
|
p->eof = 0;
|
||||||
|
|
Loading…
Reference in New Issue