bitset: fix memory leaks
authorAkim Demaille <akim.demaille@gmail.com>
Tue, 19 Mar 2019 20:38:00 +0000 (21:38 +0100)
committerAkim Demaille <akim.demaille@gmail.com>
Thu, 21 Mar 2019 06:18:18 +0000 (07:18 +0100)
Reported by Bruno Haible.
https://lists.gnu.org/archive/html/bug-gnulib/2019-03/msg00027.html

* lib/bitset/vector.c (vbitset_free): New.
(vbitset_vtable): Use it.

ChangeLog
lib/bitset/vector.c

index 88a3a40e11623da0db8e7a8dab3f173c520d6914..62c522e654d286725df848c249cebbda2f7040e7 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2019-03-19  Akim Demaille  <akim@lrde.epita.fr>
+
+       bitset: fix memory leaks
+       Reported by Bruno Haible.
+       https://lists.gnu.org/archive/html/bug-gnulib/2019-03/msg00027.html
+       * lib/bitset/vector.c (vbitset_free): New.
+       (vbitset_vtable): Use it.
+
 2019-03-19  Akim Demaille  <akim@lrde.epita.fr>
 
        bitset: minor changes
index 0623651dc443aa19998dc3f9303695b957db1289..54f148d568a84f3e66b2ca3e09db4ae136f2e987 100644 (file)
@@ -928,6 +928,13 @@ vbitset_copy (bitset dst, bitset src)
 }
 
 
+static void
+vbitset_free (bitset bset)
+{
+  free (VBITSET_WORDS (bset));
+}
+
+
 /* Vector of operations for multiple word bitsets.  */
 struct bitset_vtable vbitset_vtable = {
   vbitset_set,
@@ -961,7 +968,7 @@ struct bitset_vtable vbitset_vtable = {
   vbitset_or_and_cmp,
   vbitset_list,
   vbitset_list_reverse,
-  NULL,
+  vbitset_free,
   BITSET_VECTOR
 };