=== modified file 'grub-core/gnulib/regcomp.c'
--- grub-core/gnulib/regcomp.c	2010-09-20 10:35:33 +0000
+++ grub-core/gnulib/regcomp.c	2012-03-10 11:31:42 +0000
@@ -549,13 +549,9 @@ regerror (int errcode, const regex_t *_R
   if (BE (errcode < 0
 	  || errcode >= (int) (sizeof (__re_error_msgid_idx)
 			       / sizeof (__re_error_msgid_idx[0])), 0))
-    /* Only error codes returned by the rest of the code should be passed
-       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.  */
-    abort ();
-
-  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.  */

@@ -1119,7 +1119,7 @@
 	}
 	break;
       default:
-	abort ();
+	break;
       }
 
   if (mb_chars || has_period)