This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[committed] regex: fix memory leak in Gnulib


Problem and fix reported by Assaf Gordon in:
https://lists.gnu.org/r/bug-gnulib/2018-07/txtqLKNwBdefE.txt
* posix/regcomp.c (free_charset) [!_LIBC]: Free range_starts and
range_ends members too, as they are defined in 'struct
re_charset_t' even if not _LIBC.  This affects only Gnulib.
---
 ChangeLog       | 9 +++++++++
 posix/regcomp.c | 2 +-
 2 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/ChangeLog b/ChangeLog
index 20d61ee5aa..dc3a4457a9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2018-08-01  Paul Eggert  <eggert@cs.ucla.edu>
+
+	regex: fix memory leak in Gnulib
+	Problem and fix reported by Assaf Gordon in:
+	https://lists.gnu.org/r/bug-gnulib/2018-07/txtqLKNwBdefE.txt
+	* posix/regcomp.c (free_charset) [!_LIBC]: Free range_starts and
+	range_ends members too, as they are defined in 'struct
+	re_charset_t' even if not _LIBC.  This affects only Gnulib.
+
 2018-08-01  H.J. Lu  <hongjiu.lu@intel.com>
 
 	* sysdeps/x86/cpu-features.c (get_common_indeces): Renamed to
diff --git a/posix/regcomp.c b/posix/regcomp.c
index 545d188468..3b0a3c6b6a 100644
--- a/posix/regcomp.c
+++ b/posix/regcomp.c
@@ -3794,9 +3794,9 @@ free_charset (re_charset_t *cset)
 # ifdef _LIBC
   re_free (cset->coll_syms);
   re_free (cset->equiv_classes);
+# endif
   re_free (cset->range_starts);
   re_free (cset->range_ends);
-# endif
   re_free (cset->char_classes);
   re_free (cset);
 }
-- 
2.17.1


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]