]> granicus.if.org Git - python/commitdiff
Fixed compile error in issue #22410. The _locale module is optional.
authorSerhiy Storchaka <storchaka@gmail.com>
Thu, 30 Oct 2014 23:34:45 +0000 (01:34 +0200)
committerSerhiy Storchaka <storchaka@gmail.com>
Thu, 30 Oct 2014 23:34:45 +0000 (01:34 +0200)
Lib/re.py

index 46cea2bd691f09b49520d07253e2854c8aea4c08..199afee4b90418df7885a52246f173821bb6785f 100644 (file)
--- a/Lib/re.py
+++ b/Lib/re.py
@@ -122,7 +122,10 @@ This module also defines an exception 'error'.
 import sys
 import sre_compile
 import sre_parse
-import _locale
+try:
+    import _locale
+except ImportError:
+    _locale = None
 
 # public symbols
 __all__ = [ "match", "fullmatch", "search", "sub", "subn", "split", "findall",
@@ -293,6 +296,8 @@ def _compile(pattern, flags):
         if len(_cache) >= _MAXCACHE:
             _cache.clear()
         if p.flags & LOCALE:
+            if not _locale:
+                return p
             loc = _locale.setlocale(_locale.LC_CTYPE)
         else:
             loc = None