From 57a51f4b77977a0392e499fa61f9284df9c9c02a Mon Sep 17 00:00:00 2001 From: EuAndreh Date: Sun, 30 Jun 2024 10:33:48 -0300 Subject: src/util.c: Tolerate be given a NULL pointer --- src/util.c | 4 ++++ tests/util.c | 10 ++++++++++ 2 files changed, 14 insertions(+) diff --git a/src/util.c b/src/util.c index c0498aa..7e62755 100644 --- a/src/util.c +++ b/src/util.c @@ -21,6 +21,10 @@ EXIT_USAGE = 2; void freeit(const void **const ptr) { + if (ptr == NULL) { + return; + } + free((void *)*ptr); *ptr = NULL; } diff --git a/tests/util.c b/tests/util.c index bc85b70..a720123 100644 --- a/tests/util.c +++ b/tests/util.c @@ -41,6 +41,16 @@ test_freeit(void) { test_ok(); } + { + testing("tolerate be given a NULL pointer"); + + void *p = NULL; + freeit(NULL); + freeit(p); + freeit((void *)&p); + + test_ok(); + } rc = 0; out: -- cgit v1.2.3