1
0
Fork 0
forked from len0rd/rockbox
foxbox/lib/rbcodec/codecs
Aidan MacDonald 56442f6b7f rbcodec: Fix FLAC out of bounds read
Commit 6bcd830490 ported an optimization to decode_subframe_fixed()
from FFmpeg (upstream commit 08965b22e2). This contains an out of
bounds read, which doesn't affect the decoder output, but makes ASAN
complain.

FFmpeg fixed the out of bounds read (upstream commit 0ec7b71de8) but
that appears to increase code size a lot.

Inlining the initialization of a, b, c, d into the switch produces
similar code as the non-bounds-checked version with only a handful
of instructions of overhead (checked on MIPS & ARM).

Change-Id: I053fac4efc4676b133eb7545c80e23f37fb00d86
2023-01-15 16:11:28 -05:00
..
demac libedemac: ARMv7 asm code is for NEON-equipped processors only 2020-04-15 00:35:35 +02:00
lib [3/4] Completely remove HWCODEC support 2020-07-24 21:20:13 +00:00
liba52 Document intentional fallthroughs + fix harmless unintended ones 2021-08-04 18:59:46 +00:00
libalac fixed alac_set_info() issues. 2019-07-25 18:16:48 -04:00
libasap Fix codecs in simulator builds on Windows 2017-01-15 21:46:19 +01:00
libasf Support MP3 audiostreams embedded in ASF containers. 2021-02-28 16:11:54 +00:00
libatrac
libayumi codecs: Add support for the 'VTX' ZX Spectrum chiptunes format. 2020-10-09 11:39:25 -04:00
libcook iPod Classic: disable IRAM1 2018-07-30 18:50:27 -04:00
libfaad iPod Classic: disable IRAM1 2018-07-30 18:50:27 -04:00
libffmpegFLAC rbcodec: Fix FLAC out of bounds read 2023-01-15 16:11:28 -05:00
libgme Fix a couple of warnings uncovered by GCC12 2022-07-11 16:11:29 -04:00
libm4a codecs: m4a: improve seek accuracy 2022-05-02 12:16:21 -04:00
libmad Revert "RFC: Get rid of mpegplayer plugin" 2022-10-13 11:08:11 -04:00
libmusepack iPod Classic: disable IRAM1 2018-07-30 18:50:27 -04:00
libopus [BugFix] Fix some Shif related UB -- ASAN 2023-01-04 22:00:25 -05:00
libpcm libpcm: Get unbranded structure tag out of my way. 2017-11-06 20:06:08 -05:00
librm Third attempt to shut up the warble build printf() warning. 2018-12-28 07:57:23 -05:00
libspc iPod Classic: disable IRAM1 2018-07-30 18:50:27 -04:00
libspeex misc: Fix up a few warnings uncovered by LTO 2021-07-15 18:37:42 +00:00
libtremor Clean up places that use #if defined(CPU_ARM | CPU_COLDFIRE | CPU_MIPS) 2021-03-04 14:14:33 +00:00
libtta
libwavpack Limit more variables to file scope 2015-01-11 21:40:51 +01:00
libwma iPod Classic: disable IRAM1 2018-07-30 18:50:27 -04:00
libwmapro wmapro: Backport multiple fixes 2020-10-28 02:12:01 +00:00
libwmavoice build: Put all codec optiomization definitions in one place 2018-12-25 14:17:29 -05:00
a52.c Improved seeking in a52 codec 2018-12-22 19:54:40 -05:00
a52_rm.c Realmedia related codecs fixes and enhancements 2018-12-22 20:12:10 -05:00
aac.c codecs: aac: Prefer to resume by time instead of offset 2022-11-16 06:48:22 -05:00
aac_bsf.c Fix logf warnings in more codecs 2020-07-03 03:43:47 +00:00
adx.c Remove explicit 'enum codec_command_action' in codec API 2017-12-07 14:41:59 -05:00
aiff.c Add support for ID3 tags embedded in AIFF files 2020-07-15 18:30:07 +00:00
aiff_enc.c Remove explicit 'enum codec_command_action' in codec API 2017-12-07 14:41:59 -05:00
alac.c codecs: alac: Improve resume accuracy and clean up rounding errors 2022-11-16 06:48:28 -05:00
ape.c codecs: Fix elapsed time calculation for large files 2018-10-29 19:50:34 +01:00
asap.c Remove explicit 'enum codec_command_action' in codec API 2017-12-07 14:41:59 -05:00
atrac3_oma.c Remove explicit 'enum codec_command_action' in codec API 2017-12-07 14:41:59 -05:00
atrac3_rm.c Realmedia related codecs fixes and enhancements 2018-12-22 20:12:10 -05:00
au.c Remove explicit 'enum codec_command_action' in codec API 2017-12-07 14:41:59 -05:00
ay.c Remove explicit 'enum codec_command_action' in codec API 2017-12-07 14:41:59 -05:00
codec_crt0.c
codecs.h [3/4] Completely remove HWCODEC support 2020-07-24 21:20:13 +00:00
codecs.make rbcodec: Fix typo in makefile 2021-07-25 15:55:36 +01:00
cook.c Realmedia related codecs fixes and enhancements 2018-12-22 20:12:10 -05:00
flac.c misc: Fix up a few warnings uncovered by LTO 2021-07-15 18:37:42 +00:00
gbs.c Remove explicit 'enum codec_command_action' in codec API 2017-12-07 14:41:59 -05:00
hes.c Remove explicit 'enum codec_command_action' in codec API 2017-12-07 14:41:59 -05:00
kss.c Remove explicit 'enum codec_command_action' in codec API 2017-12-07 14:41:59 -05:00
mod.c misc: Fix up a few warnings uncovered by LTO 2021-07-15 18:37:42 +00:00
mp3_enc.c Remove explicit 'enum codec_command_action' in codec API 2017-12-07 14:41:59 -05:00
mpa.c codecs: mpa: Improve seek & resume accuracy for VBR files 2022-11-01 09:52:34 -04:00
mpc.c codecs: Fix elapsed time calculation for large files 2018-10-29 19:50:34 +01:00
nsf.c Remove explicit 'enum codec_command_action' in codec API 2017-12-07 14:41:59 -05:00
opus.c opus: shrink stack usage by nearly 700 bytes 2020-07-15 15:09:08 +00:00
raac.c Realmedia related codecs fixes and enhancements 2018-12-22 20:12:10 -05:00
sgc.c Remove explicit 'enum codec_command_action' in codec API 2017-12-07 14:41:59 -05:00
shorten.c codecs: Fix elapsed time calculation for large files 2018-10-29 19:50:34 +01:00
sid.c sid: Fix an out-of-bounds read in the channel mixing code 2020-03-28 11:43:23 +01:00
smaf.c Remove explicit 'enum codec_command_action' in codec API 2017-12-07 14:41:59 -05:00
SOURCES codecs: Add support for the 'VTX' ZX Spectrum chiptunes format. 2020-10-09 11:39:25 -04:00
spc.c Remove explicit 'enum codec_command_action' in codec API 2017-12-07 14:41:59 -05:00
speex.c Fix logf build warnings in speex codec 2020-06-28 03:24:20 +00:00
tta.c Remove explicit 'enum codec_command_action' in codec API 2017-12-07 14:41:59 -05:00
vgm.c Remove explicit 'enum codec_command_action' in codec API 2017-12-07 14:41:59 -05:00
vorbis.c Clean up places that use #if defined(CPU_ARM | CPU_COLDFIRE | CPU_MIPS) 2021-03-04 14:14:33 +00:00
vox.c Remove explicit 'enum codec_command_action' in codec API 2017-12-07 14:41:59 -05:00
vtx.c codecs: Add support for the 'VTX' ZX Spectrum chiptunes format. 2020-10-09 11:39:25 -04:00
wav.c Remove explicit 'enum codec_command_action' in codec API 2017-12-07 14:41:59 -05:00
wav64.c Remove explicit 'enum codec_command_action' in codec API 2017-12-07 14:41:59 -05:00
wav_enc.c Remove explicit 'enum codec_command_action' in codec API 2017-12-07 14:41:59 -05:00
wavpack.c Remove explicit 'enum codec_command_action' in codec API 2017-12-07 14:41:59 -05:00
wavpack_enc.c As3525 wavpack_enc document some intentional switch fall through 2021-08-08 09:27:27 -04:00
wma.c Remove explicit 'enum codec_command_action' in codec API 2017-12-07 14:41:59 -05:00
wmapro.c Remove explicit 'enum codec_command_action' in codec API 2017-12-07 14:41:59 -05:00
wmavoice.c Remove explicit 'enum codec_command_action' in codec API 2017-12-07 14:41:59 -05:00