[FFmpeg-devel] [PATCH] tests/checkasm/sw_rgb: don't write random data past the end of the buffer
Martin Storsjö
martin at martin.st
Thu Sep 12 11:30:03 EEST 2024
On Thu, 12 Sep 2024, Ramiro Polla wrote:
> 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.
Maybe, but part of the point of having randomize_buffers() and similar be
local to each test, is because the exact procedure for writing and the
right kind of random differs for each test/function category.
// Martin
More information about the ffmpeg-devel
mailing list