diff options
author | Karl Williamson <khw@cpan.org> | 2022-10-03 08:33:55 -0600 |
---|---|---|
committer | Karl Williamson <khw@cpan.org> | 2022-10-18 06:22:16 -0600 |
commit | 6a4065f28f30d59e3a6cea6504be34bdb5e5eb8b (patch) | |
tree | 6f7ebbc29f3e2463dd19d5800b6f7e0b557fdef7 /perl.c | |
parent | 7de8159af380f738facd9db4aa5455f02ba5af04 (diff) | |
download | perl-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 'perl.c')
-rw-r--r-- | perl.c | 11 |
1 files changed, 11 insertions, 0 deletions
@@ -1140,6 +1140,17 @@ perl_destruct(pTHXx) freelocale(old_locale); } } + +# ifdef USE_PL_CUR_LC_ALL + + if (PL_cur_LC_ALL) { + DEBUG_L( PerlIO_printf(Perl_debug_log, "PL_cur_LC_ALL=%p\n", PL_cur_LC_ALL)); + Safefree(PL_cur_LC_ALL); + PL_cur_LC_ALL = NULL; + } + +# endif + if (PL_scratch_locale_obj) { freelocale(PL_scratch_locale_obj); PL_scratch_locale_obj = NULL; |