From 0333b97414d2c26a8236111d623fcafb7805d0a0 Mon Sep 17 00:00:00 2001 From: Nuo Mi Date: Sat, 22 Jun 2024 11:34:11 +0800 Subject: [PATCH] checkasm/vvc_alf: ensure right and bottom boundaries are not overwritten by asm --- tests/checkasm/vvc_alf.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tests/checkasm/vvc_alf.c b/tests/checkasm/vvc_alf.c index be8b930810..15e79289cd 100644 --- a/tests/checkasm/vvc_alf.c +++ b/tests/checkasm/vvc_alf.c @@ -108,8 +108,8 @@ static void check_alf_filter(VVCDSPContext *c, const int bit_depth) memset(dst1, 0, DST_BUF_SIZE); call_ref(dst0, dst_stride, src0 + offset, src_stride, w, h, filter, clip, vb_pos); call_new(dst1, dst_stride, src1 + offset, src_stride, w, h, filter, clip, vb_pos); - for (int i = 0; i < h; i++) { - if (memcmp(dst0 + i * dst_stride, dst1 + i * dst_stride, w * SIZEOF_PIXEL)) + for (int i = 0; i < (h + 1); i++) { + if (memcmp(dst0 + i * dst_stride, dst1 + i * dst_stride, (w + 1) * SIZEOF_PIXEL)) fail(); } // Bench only square sizes, and ones with dimensions being a power of two. @@ -125,8 +125,8 @@ static void check_alf_filter(VVCDSPContext *c, const int bit_depth) memset(dst1, 0, DST_BUF_SIZE); call_ref(dst0, dst_stride, src0 + offset, src_stride, w, h, filter, clip, vb_pos); call_new(dst1, dst_stride, src1 + offset, src_stride, w, h, filter, clip, vb_pos); - for (int i = 0; i < h; i++) { - if (memcmp(dst0 + i * dst_stride, dst1 + i * dst_stride, w * SIZEOF_PIXEL)) + for (int i = 0; i < (h + 1); i++) { + if (memcmp(dst0 + i * dst_stride, dst1 + i * dst_stride, (w + 1) * SIZEOF_PIXEL)) fail(); } if (w == h && (w & (w - 1)) == 0)