memwipe: don't call the workhorse for 0 bytes

Some of them don't like it
This commit is contained in:
moneromooo-monero 2018-07-10 14:37:56 +01:00
parent eed4dba880
commit 8d578f1f2d
No known key found for this signature in database
GPG key ID: 686F07454D6CEFC3

View file

@ -50,7 +50,7 @@
void *memwipe(void *ptr, size_t n)
{
if (memset_s(ptr, n, 0, n))
if (n > 0 && memset_s(ptr, n, 0, n))
{
#ifdef NDEBUG
fprintf(stderr, "Error: memset_s failed\n");
@ -67,6 +67,7 @@ void *memwipe(void *ptr, size_t n)
void *memwipe(void *ptr, size_t n)
{
if (n > 0)
explicit_bzero(ptr, n);
SCARECROW
return ptr;
@ -105,6 +106,7 @@ static void memory_cleanse(void *ptr, size_t len)
void *memwipe(void *ptr, size_t n)
{
if (n > 0)
memory_cleanse(ptr, n);
SCARECROW
return ptr;