aboutsummaryrefslogtreecommitdiff
path: root/lib/libc/locale
diff options
context:
space:
mode:
Diffstat (limited to 'lib/libc/locale')
-rw-r--r--lib/libc/locale/xlocale.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/libc/locale/xlocale.c b/lib/libc/locale/xlocale.c
index 467d6e6e5aee..4bddc43c086b 100644
--- a/lib/libc/locale/xlocale.c
+++ b/lib/libc/locale/xlocale.c
@@ -257,13 +257,13 @@ newlocale(int mask, const char *locale, locale_t base)
int useenv = 0;
int success = 1;
- _once(&once_control, init_key);
-
locale_t new = alloc_locale();
if (NULL == new) {
return (NULL);
}
+ _once(&once_control, init_key);
+
orig_base = base;
FIX_LOCALE(base);
copyflags(new, base);
@@ -312,12 +312,12 @@ duplocale(locale_t base)
locale_t new = alloc_locale();
int type;
- _once(&once_control, init_key);
-
if (NULL == new) {
return (NULL);
}
+ _once(&once_control, init_key);
+
FIX_LOCALE(base);
copyflags(new, base);