]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
libiberty: Make `objalloc_free' `free'-like WRT null pointer
authorMaciej W. Rozycki <macro@redhat.com>
Mon, 12 Jan 2026 13:08:28 +0000 (13:08 +0000)
committerMaciej W. Rozycki <macro@redhat.com>
Mon, 12 Jan 2026 13:08:28 +0000 (13:08 +0000)
Inspired by a suggestion from Jan Beulich to make one of `objalloc_free'
callers `free'-like with respect to null pointer argument handling make
the function return with no action taken rather than crashing when such
a pointer is passed.  This is to make the API consistent with ISO C and
to relieve all the callers from having to check for a null pointer.

libiberty/
* objalloc.c (objalloc_free): Don't use the pointer passed if
null.

libiberty/objalloc.c

index 263d4b67a986ddf049d727f43a50ddce0eb8d4e1..b3b255a1d65bdbbc8611a32ac7aaefd159875314 100644 (file)
@@ -178,6 +178,10 @@ objalloc_free (struct objalloc *o)
 {
   struct objalloc_chunk *l;
 
+  /* Handle a nullptr as being a no-op. */
+  if (o == NULL)
+    return;
+
   l = (struct objalloc_chunk *) o->chunks;
   while (l != NULL)
     {