diff --git a/ChangeLog b/ChangeLog index d4b56d94f..e3c7a7bc7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2012-03-10 Vladimir Serbinenko + + * grub-core/gnulib/regcomp.c (regerror): Fix out-of-range array lookup. + 2012-03-10 Vladimir Serbinenko * grub-core/gdb/i386/idt.c (grub_gdb_breakpoint): Remove old debug code. diff --git a/grub-core/gnulib/regcomp.c b/grub-core/gnulib/regcomp.c index 083469ef3..ddea3fb65 100644 --- a/grub-core/gnulib/regcomp.c +++ b/grub-core/gnulib/regcomp.c @@ -555,9 +555,9 @@ regerror (int errcode, const regex_t *_Restrict_ preg, to this routine. If we are given anything else, or if other regex code generates an invalid error code, then the program has a bug. Dump core so we can fix it. */ - msg = "unknown regexp error"; - - msg = gettext (__re_error_msgid + __re_error_msgid_idx[errcode]); + msg = gettext ("unknown regexp error"); + else + msg = gettext (__re_error_msgid + __re_error_msgid_idx[errcode]); msg_size = strlen (msg) + 1; /* Includes the null. */