[FFmpeg-devel] [PATCH] tests/checkasm/sw_rgb: don't write random data past the end of the buffer

Ramiro Polla ramiro.polla at gmail.com
Thu Sep 12 11:16:34 EEST 2024


On Thu, Sep 12, 2024 at 8:44 AM James Almer <jamrial at gmail.com> wrote:
>
> Should fix fate-checkasm-sw_rgb under gcc-ubsan.
>
> Signed-off-by: James Almer <jamrial at gmail.com>
> ---
>  tests/checkasm/sw_rgb.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tests/checkasm/sw_rgb.c b/tests/checkasm/sw_rgb.c
> index af9434073a..cdd43df8ba 100644
> --- a/tests/checkasm/sw_rgb.c
> +++ b/tests/checkasm/sw_rgb.c
> @@ -287,7 +287,7 @@ static void check_deinterleave_bytes(void)
>                         int width, int height, int srcStride,
>                         int dst1Stride, int dst2Stride);
>
> -    randomize_buffers(src, 2*MAX_STRIDE*MAX_HEIGHT+2);
> +    randomize_buffers(src, 2*MAX_STRIDE*MAX_HEIGHT);

Thank you for spotting it.

The issue is that randomize_buffers() writes 4 bytes at a time. I
think the proper fix is to change randomize_buffers() to not write
past the end of the buffer. It would be even better to move
randomize_buffers() to checkasm.h or checkasm.c so it doesn't have to
be copied around so many times.


More information about the ffmpeg-devel mailing list