Commit 96c4ba23 authored by Michael Niedermayer's avatar Michael Niedermayer

avcodec/hevc: propagate error code from hls_coding_quadtree()

Fixes use of uninitialized memory
Fixes out of array read
Fixes: asan_static-oob_123cee5_2630_cov_1869071233_PICSIZE_A_Bossen_1.bin
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
parent a744064c
...@@ -1805,10 +1805,16 @@ static int hls_coding_quadtree(HEVCContext *s, int x0, int y0, ...@@ -1805,10 +1805,16 @@ static int hls_coding_quadtree(HEVCContext *s, int x0, int y0,
if (more_data < 0) if (more_data < 0)
return more_data; return more_data;
if (more_data && x1 < s->sps->width) if (more_data && x1 < s->sps->width) {
more_data = hls_coding_quadtree(s, x1, y0, log2_cb_size - 1, cb_depth + 1); more_data = hls_coding_quadtree(s, x1, y0, log2_cb_size - 1, cb_depth + 1);
if (more_data && y1 < s->sps->height) if (more_data < 0)
return more_data;
}
if (more_data && y1 < s->sps->height) {
more_data = hls_coding_quadtree(s, x0, y1, log2_cb_size - 1, cb_depth + 1); more_data = hls_coding_quadtree(s, x0, y1, log2_cb_size - 1, cb_depth + 1);
if (more_data < 0)
return more_data;
}
if (more_data && x1 < s->sps->width && if (more_data && x1 < s->sps->width &&
y1 < s->sps->height) { y1 < s->sps->height) {
return hls_coding_quadtree(s, x1, y1, log2_cb_size - 1, cb_depth + 1); return hls_coding_quadtree(s, x1, y1, log2_cb_size - 1, cb_depth + 1);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment