changeset 6816:336c26d193b7

* regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun reported by Andreas Schwab.
author Paul Eggert <eggert@cs.ucla.edu>
date Mon, 05 Jun 2006 05:21:20 +0000
parents a94e54107c13
children 71460b1092ed
files lib/ChangeLog lib/regexec.c
diffstat 2 files changed, 7 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/lib/ChangeLog
+++ b/lib/ChangeLog
@@ -1,3 +1,8 @@
+2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
+
+	* regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
+	reported by Andreas Schwab.
+
 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
             Bruno Haible  <bruno@clisp.org>
 
--- a/lib/regexec.c
+++ b/lib/regexec.c
@@ -1,5 +1,5 @@
 /* Extended regular expression matching and search library.
-   Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+   Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Isamu Hasegawa <isamu@yamato.ibm.com>.
 
@@ -3615,7 +3615,7 @@
       else if (type == OP_UTF8_PERIOD)
         {
 	  if (ASCII_CHARS % BITSET_WORD_BITS == 0)
-	    memset (accepts, -1, ASCII_CHARS);
+	    memset (accepts, -1, ASCII_CHARS / CHAR_BIT);
 	  else
 	    bitset_merge (accepts, utf8_sb_map);
 	  if (!(dfa->syntax & RE_DOT_NEWLINE))