diff options
author | Ray Molenkamp <github@lazydodo.com> | 2021-09-23 02:29:23 +0300 |
---|---|---|
committer | Ray Molenkamp <github@lazydodo.com> | 2021-09-23 02:29:23 +0300 |
commit | a78d3c5261b55ba2a63d550aafada518a0f88fbe (patch) | |
tree | e7ebddf77610f629e871133cf013d524204c34ab /build_files/build_environment | |
parent | 79bcc19240258fe697b583376f59902c3235691c (diff) |
Fix: T91602 ffmpeg crash
Issue caused by our patch in rB1af722b81912
we replaced an array with a memory allocation
but we forgot to update the assert which now
used an invalid method to calculate the array
size.
SVN libs will have to be updated before
T91602 will be fixed for end users.
Diffstat (limited to 'build_files/build_environment')
-rw-r--r-- | build_files/build_environment/patches/ffmpeg.diff | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/build_files/build_environment/patches/ffmpeg.diff b/build_files/build_environment/patches/ffmpeg.diff index 5a50a3f8756..c255f7c37a3 100644 --- a/build_files/build_environment/patches/ffmpeg.diff +++ b/build_files/build_environment/patches/ffmpeg.diff @@ -70,16 +70,18 @@ } --- a/libavcodec/rl.c +++ b/libavcodec/rl.c -@@ -71,7 +71,7 @@ av_cold void ff_rl_init(RLTable *rl, +@@ -71,17 +71,19 @@ av_cold void ff_rl_init_vlc(RLTable *rl, unsigned static_size) { int i, q; - VLC_TYPE table[1500][2] = {{0}}; + VLC_TYPE (*table)[2] = av_calloc(sizeof(VLC_TYPE), 1500 * 2); VLC vlc = { .table = table, .table_allocated = static_size }; - av_assert0(static_size <= FF_ARRAY_ELEMS(table)); +- av_assert0(static_size <= FF_ARRAY_ELEMS(table)); ++ av_assert0(static_size < 1500); init_vlc(&vlc, 9, rl->n + 1, &rl->table_vlc[0][1], 4, 2, &rl->table_vlc[0][0], 4, 2, INIT_VLC_USE_NEW_STATIC); -@@ -80,8 +80,10 @@ av_cold void ff_rl_init_vlc(RLTable *rl, unsigned static_size) + + for (q = 0; q < 32; q++) { int qmul = q * 2; int qadd = (q - 1) | 1; @@ -91,7 +93,7 @@ if (q == 0) { qmul = 1; -@@ -113,4 +115,5 @@ av_cold void ff_rl_init_vlc(RLTable *rl, unsigned static_size) +@@ -113,4 +115,5 @@ rl->rl_vlc[q][i].run = run; } } |