From f5fd844e9b184e9910ef9da065dba75157723da0 Mon Sep 17 00:00:00 2001 From: Ramiro Polla Date: Tue, 27 Oct 2026 19:05:37 +0100 Subject: [PATCH] swscale/ops_memcpy: move early-skip block before unrelated variable declarations This will let us rework and merge the memset/memcpy blocks. --- libswscale/ops_memcpy.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/libswscale/ops_memcpy.c b/libswscale/ops_memcpy.c index 922ebb83c7..764edef09a 100644 --- a/libswscale/ops_memcpy.c +++ b/libswscale/ops_memcpy.c @@ -51,6 +51,12 @@ static void process_memcpy(const SwsOpExec *exec, const void *priv, const int idx = p->index[i]; const uint8_t *in = (idx >= 0) ? exec->in[idx] : NULL; const ptrdiff_t in_stride = (idx >= 0) ? exec->in_stride[idx] : 0; + + if (out == in) { + av_assert1(out_stride == in_stride); + continue; /* plane was already ref'd */ + } + const int bytes = x_end * exec->block_size_out[i]; const int use_loop = out_stride < 0 || out_stride > bytes + SWS_MAX_PADDING; @@ -62,9 +68,6 @@ static void process_memcpy(const SwsOpExec *exec, const void *priv, memset(out, p->clear_value[i], bytes); out += out_stride; } - } else if (out == in) { - av_assert1(out_stride == in_stride); - continue; /* plane was already ref'd */ } else if (out_stride == in_stride && !use_loop) { memcpy(out, in, span); } else {