From 1f50b39e99d12042fc2e2ce3b754719fa42af753 Mon Sep 17 00:00:00 2001 From: Fabrice Bellard Date: Thu, 14 May 2026 16:21:10 +0200 Subject: [PATCH] memcpy() (currently) has undefined behavior if a pointer is NULL with zero size (#500) --- libunicode.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libunicode.c b/libunicode.c index 0c510cc..0b7b6d0 100644 --- a/libunicode.c +++ b/libunicode.c @@ -1189,7 +1189,8 @@ int unicode_normalize(uint32_t **pdst, const uint32_t *src, int src_len, goto not_latin1; } buf = (int *)dbuf->buf; - memcpy(buf, src, src_len * sizeof(int)); + if (src_len != 0) + memcpy(buf, src, src_len * sizeof(int)); *pdst = (uint32_t *)buf; return src_len; not_latin1: ;