bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH 08/10] regex: debug check for set member duplicates


From: Paul Eggert
Subject: [PATCH 08/10] regex: debug check for set member duplicates
Date: Fri, 5 Feb 2021 17:26:00 -0800

* lib/regex_internal.c (re_node_set_insert): Add a DEBUG_ASSERT
that would have caught some recently-fixed performance bugs
that caused sets to contain duplicate members.
---
 ChangeLog            | 5 +++++
 lib/regex_internal.c | 1 +
 2 files changed, 6 insertions(+)

diff --git a/ChangeLog b/ChangeLog
index bd7d1fa16..69abc35dc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
 2021-02-05  Paul Eggert  <eggert@cs.ucla.edu>
 
+       regex: debug check for set member duplicates
+       * lib/regex_internal.c (re_node_set_insert): Add a DEBUG_ASSERT
+       that would have caught some recently-fixed performance bugs
+       that caused sets to contain duplicate members.
+
        regex: fix longstanding backref match bug
        This fixes a longstanding glibc bug concerning backreferences
        <https://sourceware.org/11053> (2009-12-04).
diff --git a/lib/regex_internal.c b/lib/regex_internal.c
index 9dd387ef8..55f6b66de 100644
--- a/lib/regex_internal.c
+++ b/lib/regex_internal.c
@@ -1314,6 +1314,7 @@ re_node_set_insert (re_node_set *set, Idx elem)
     {
       for (idx = set->nelem; set->elems[idx - 1] > elem; idx--)
        set->elems[idx] = set->elems[idx - 1];
+      DEBUG_ASSERT (set->elems[idx - 1] < elem);
     }
 
   /* Insert the new element.  */
-- 
2.27.0




reply via email to

[Prev in Thread] Current Thread [Next in Thread]