Commit df8394c6 authored by Michael Niedermayer's avatar Michael Niedermayer

avcodec/hevc: fix chroma transform_add size

Fixes accessing misaligned address
Fixes: signal_sigsegv_1feb99c_10_signal_sigsegv_2d1d35c_79_cov_691940146_EXT_A_ericsson_3.bit

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
parent aaf65bc2
...@@ -981,7 +981,7 @@ static int hls_transform_unit(HEVCContext *s, int x0, int y0, ...@@ -981,7 +981,7 @@ static int hls_transform_unit(HEVCContext *s, int x0, int y0,
for (i = 0; i < (size * size); i++) { for (i = 0; i < (size * size); i++) {
coeffs[i] = ((lc->tu.res_scale_val * coeffs_y[i]) >> 3); coeffs[i] = ((lc->tu.res_scale_val * coeffs_y[i]) >> 3);
} }
s->hevcdsp.transform_add[log2_trafo_size-2](dst, coeffs, stride); s->hevcdsp.transform_add[log2_trafo_size_c-2](dst, coeffs, stride);
} }
} }
...@@ -1010,7 +1010,7 @@ static int hls_transform_unit(HEVCContext *s, int x0, int y0, ...@@ -1010,7 +1010,7 @@ static int hls_transform_unit(HEVCContext *s, int x0, int y0,
for (i = 0; i < (size * size); i++) { for (i = 0; i < (size * size); i++) {
coeffs[i] = ((lc->tu.res_scale_val * coeffs_y[i]) >> 3); coeffs[i] = ((lc->tu.res_scale_val * coeffs_y[i]) >> 3);
} }
s->hevcdsp.transform_add[log2_trafo_size-2](dst, coeffs, stride); s->hevcdsp.transform_add[log2_trafo_size_c-2](dst, coeffs, stride);
} }
} }
} else if (blk_idx == 3) { } else if (blk_idx == 3) {
......
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