diff --git a/src/basic/alloc-util.c b/src/basic/alloc-util.c index b28fb95ccf..15b67665d2 100644 --- a/src/basic/alloc-util.c +++ b/src/basic/alloc-util.c @@ -27,6 +27,9 @@ void* memdup_suffix0(const void *p, size_t l) { /* The same as memdup() but place a safety NUL byte after the allocated memory */ + if (_unlikely_(l == SIZE_MAX)) /* prevent overflow */ + return NULL; + ret = malloc(l + 1); if (!ret) return NULL;