bug-gnulib
[Top][All Lists]
Advanced

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

[PATCH] regex: fix false multibyte matches in some regular expressions


From: Paul Eggert
Subject: [PATCH] regex: fix false multibyte matches in some regular expressions
Date: Fri, 24 Feb 2012 12:26:17 -0800
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:10.0) Gecko/20120131 Thunderbird/10.0

See <http://sourceware.org/bugzilla/show_bug.cgi?id=13637>
and <http://sourceware.org/ml/libc-alpha/2012-02/msg00521.html>.
* lib/regex_internal.c (re_string_skip_chars):
Fix miscomputation of remain_len that may cause incomplete
multi-byte character and false match.
---
 ChangeLog            |    9 +++++++++
 lib/regex_internal.c |    2 +-
 2 files changed, 10 insertions(+), 1 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 681d773..53680d8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2012-02-24  Stanislav Brabec  <address@hidden>  (tiny change)
+
+       regex: fix false multibyte matches in some regular expressions
+       See <http://sourceware.org/bugzilla/show_bug.cgi?id=13637>
+       and <http://sourceware.org/ml/libc-alpha/2012-02/msg00521.html>.
+       * lib/regex_internal.c (re_string_skip_chars):
+       Fix miscomputation of remain_len that may cause incomplete
+       multi-byte character and false match.
+
 2012-02-24  Jim Meyering  <address@hidden>
 
        maint.mk: tell sc_prohibit_strcmp to ding "0 == strcmp (...)", too
diff --git a/lib/regex_internal.c b/lib/regex_internal.c
index aa14033..7e8c1bc 100644
--- a/lib/regex_internal.c
+++ b/lib/regex_internal.c
@@ -498,7 +498,7 @@ re_string_skip_chars (re_string_t *pstr, Idx new_raw_idx, 
wint_t *last_wc)
        rawbuf_idx < new_raw_idx;)
     {
       wchar_t wc2;
-      Idx remain_len = pstr->len - rawbuf_idx;
+      Idx remain_len = pstr->raw_len - rawbuf_idx;
       prev_st = pstr->cur_state;
       mbclen = __mbrtowc (&wc2, (const char *) pstr->raw_mbs + rawbuf_idx,
                          remain_len, &pstr->cur_state);
-- 
1.7.6.5




reply via email to

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