about summary refs log tree commit diff
path: root/include
diff options
context:
space:
mode:
authorFlorian Weimer <fweimer@redhat.com>2020-02-08 16:15:09 +0100
committerFlorian Weimer <fweimer@redhat.com>2020-02-15 11:01:20 +0100
commit2efa52c880d46ee89523c8ed8102ceeb02043926 (patch)
tree3af8d32d36da8f3fdd7d5a95569710af539ebca9 /include
parentc76147afe917ef7d309ee893f8f017a3c2934aac (diff)
downloadglibc-2efa52c880d46ee89523c8ed8102ceeb02043926.tar.gz
glibc-2efa52c880d46ee89523c8ed8102ceeb02043926.tar.xz
glibc-2efa52c880d46ee89523c8ed8102ceeb02043926.zip
Remove weak declaration of free from <inline-hashtab.h>
elf/dl-minimal.c provides a definition of free, so the function
pointer is always non-null, even before the final relocation
of the loader.

Reviewed-by: Carlos O'Donell <carlos@redhat.com>
Diffstat (limited to 'include')
-rw-r--r--include/inline-hashtab.h11
1 files changed, 3 insertions, 8 deletions
diff --git a/include/inline-hashtab.h b/include/inline-hashtab.h
index d25bb95083..3c09978199 100644
--- a/include/inline-hashtab.h
+++ b/include/inline-hashtab.h
@@ -25,8 +25,6 @@
 #ifndef INLINE_HASHTAB_H
 # define INLINE_HASHTAB_H 1
 
-extern void weak_function free (void *ptr);
-
 struct hashtab
 {
   /* Table itself.  */
@@ -56,8 +54,7 @@ htab_create (void)
   ht->free = free;
   if (! ht->entries)
     {
-      if (ht->free)
-	ht->free (ht);
+      free (ht);
       return NULL;
     }
 
@@ -78,8 +75,7 @@ htab_delete (struct hashtab *htab)
   for (i = htab->size - 1; i >= 0; i--)
     free (htab->entries[i]);
 
-  if (htab->free)
-    htab->free (htab->entries);
+  htab->free (htab->entries);
   free (htab);
 }
 
@@ -167,8 +163,7 @@ htab_expand (struct hashtab *htab, int (*hash_fn) (void *))
      allocated early as long as there's no corresponding free(), but
      this isn't so much memory as to be significant.  */
 
-  if (htab->free)
-    htab->free (oentries);
+  htab->free (oentries);
 
   /* Use the free() corresponding to the malloc() above to free this
      up.  */