summaryrefslogtreecommitdiff
path: root/sv.c
diff options
context:
space:
mode:
authorKarl Williamson <khw@cpan.org>2022-10-03 08:33:55 -0600
committerKarl Williamson <khw@cpan.org>2022-10-18 06:22:16 -0600
commit6a4065f28f30d59e3a6cea6504be34bdb5e5eb8b (patch)
tree6f7ebbc29f3e2463dd19d5800b6f7e0b557fdef7 /sv.c
parent7de8159af380f738facd9db4aa5455f02ba5af04 (diff)
downloadperl-6a4065f28f30d59e3a6cea6504be34bdb5e5eb8b.tar.gz
locale: Create special variable to hold current LC_ALL
Some configurations require us to store the current locale for each category. Prior to this commit, this was done in the array PL_curlocales, with the entry for LC_ALL being in the highest element. Future commits will need just the value for LC_ALL in some other configurations, without needing the rest of the array. This commit splits off the LC_ALL element into its own per-interpreter variable to accommodate those. It always had to have special handling anyway beyond the rest of the array elements,
Diffstat (limited to 'sv.c')
-rw-r--r--sv.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/sv.c b/sv.c
index 13a5ee5150..bc5f95143b 100644
--- a/sv.c
+++ b/sv.c
@@ -15892,6 +15892,9 @@ perl_clone_using(PerlInterpreter *proto_perl, UV flags,
PL_curlocales[i] = SAVEPV("C");
}
#endif
+#ifdef USE_PL_CUR_LC_ALL
+ PL_cur_LC_ALL = SAVEPV("C");
+#endif
#ifdef USE_LOCALE_CTYPE
Copy(PL_fold, PL_fold_locale, 256, U8);