Upstream-Status: backport

Imported patch from: http://www.eglibc.org/archives/patches/msg01124.html

Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com>
2012/05/09

Index: libc/posix/xregex.c
===================================================================
--- libc.orig/posix/xregex.c
+++ libc/posix/xregex.c
@@ -2943,7 +2943,7 @@ PREFIX(regex_compile) (const char *ARG_P
 				  _NL_CURRENT (LC_COLLATE,
 					       _NL_COLLATE_INDIRECTWC);
 
-				idx = findidx ((const wint_t**)&cp);
+				idx = findidx ((const wint_t**)&cp, -1);
 				if (idx == 0 || cp < (wint_t*) str + c1)
 				  /* This is no valid character.  */
 				  FREE_STACK_RETURN (REG_ECOLLATE);
@@ -3392,7 +3392,7 @@ PREFIX(regex_compile) (const char *ARG_P
 			    indirect = (const int32_t *)
 			      _NL_CURRENT (LC_COLLATE, _NL_COLLATE_INDIRECTMB);
 
-			    idx = findidx (&cp);
+			    idx = findidx (&cp, -1);
 			    if (idx == 0 || cp < str + c1)
 			      /* This is no valid character.  */
 			      FREE_STACK_RETURN (REG_ECOLLATE);
@@ -6363,7 +6363,7 @@ byte_re_match_2_internal (struct re_patt
 		      }
 		    str_buf[i] = TRANSLATE(*(d+i));
 		    str_buf[i+1] = '\0'; /* sentinel */
-		    idx2 = findidx ((const wint_t**)&cp);
+		    idx2 = findidx ((const wint_t**)&cp, -1);
 		  }
 
 		/* Update d, however d will be incremented at
