realloc: ASSUME non-NULL source pointer for memcpy

NULL has size zero, which rounds up to zero, and so would have been handled.
This commit is contained in:
Nathaniel Wesley Filardo 2023-11-12 00:22:50 +00:00 коммит произвёл Nathaniel Filardo
Родитель 640cacf90e
Коммит f3e470c3e4
1 изменённых файлов: 4 добавлений и 1 удалений

Просмотреть файл

@ -74,7 +74,10 @@ namespace snmalloc::libc
// Guard memcpy as GCC is assuming not nullptr for ptr after the memcpy
// otherwise.
if (SNMALLOC_UNLIKELY(sz != 0))
{
SNMALLOC_ASSUME(ptr != nullptr);
::memcpy(p, ptr, sz);
}
a.dealloc(ptr);
}
else if (SNMALLOC_LIKELY(size == 0))
@ -174,4 +177,4 @@ namespace snmalloc::libc
*memptr = p;
return 0;
}
} // namespace snmalloc::libc
} // namespace snmalloc::libc