Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Rheinhardt <andreas.rheinhardt@gmail.com>2020-10-22 17:03:41 +0300
committerAndreas Rheinhardt <andreas.rheinhardt@gmail.com>2020-10-27 13:51:01 +0300
commit548f1a3fa479836d60d85d02708db79c6345acea (patch)
tree591eda1c406e00cd32e91235e10229acb3741c9a /libavcodec/webp.c
parentd4cce1514edf023145fb5a8af9c52bb8e95bede1 (diff)
avcodec/webp: Return directly when creating Huff table fails
Neither the auxiliary VLC table nor the code_lengths array need to be freed if creating the auxiliary VLC table fails. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Diffstat (limited to 'libavcodec/webp.c')
-rw-r--r--libavcodec/webp.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libavcodec/webp.c b/libavcodec/webp.c
index 6b53a7f17c..549d125dcc 100644
--- a/libavcodec/webp.c
+++ b/libavcodec/webp.c
@@ -324,7 +324,7 @@ static int read_huffman_code_normal(WebPContext *s, HuffReader *hc,
int alphabet_size)
{
HuffReader code_len_hc = { { 0 }, 0, 0, { 0 } };
- uint8_t *code_lengths = NULL;
+ uint8_t *code_lengths;
uint8_t code_length_code_lengths[NUM_CODE_LENGTH_CODES] = { 0 };
int i, symbol, max_symbol, prev_code_len, ret;
int num_codes = 4 + get_bits(&s->gb, 4);
@@ -338,7 +338,7 @@ static int read_huffman_code_normal(WebPContext *s, HuffReader *hc,
ret = huff_reader_build_canonical(&code_len_hc, code_length_code_lengths,
NUM_CODE_LENGTH_CODES);
if (ret < 0)
- goto finish;
+ return ret;
code_lengths = av_mallocz(alphabet_size);
if (!code_lengths) {