Skip to content

Commit 15e4c7f

Browse files
committed
Avoid a recursive import problem in unicode_safe()
1 parent aa07d18 commit 15e4c7f

File tree

1 file changed

+10
-7
lines changed

1 file changed

+10
-7
lines changed

lib/matplotlib/cbook.py

+10-7
Original file line numberDiff line numberDiff line change
@@ -28,15 +28,18 @@
2828
# On some systems, getpreferredencoding sets the locale, which has
2929
# side effects. Passing False eliminates those side effects.
3030

31-
try:
32-
preferredencoding = locale.getpreferredencoding(
33-
matplotlib.rcParams['axes.formatter.use_locale']).strip()
34-
if not preferredencoding:
35-
preferredencoding = None
36-
except (ValueError, ImportError, AttributeError):
37-
preferredencoding = None
3831

3932
def unicode_safe(s):
33+
import matplotlib
34+
35+
try:
36+
preferredencoding = locale.getpreferredencoding(
37+
matplotlib.rcParams['axes.formatter.use_locale']).strip()
38+
if not preferredencoding:
39+
preferredencoding = None
40+
except (ValueError, ImportError, AttributeError):
41+
preferredencoding = None
42+
4043
if preferredencoding is None: return unicode(s)
4144
else: return unicode(s, preferredencoding)
4245

0 commit comments

Comments
 (0)