summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2004-07-04 15:14:33 +0000
committerNicholas Clark <nick@ccl4.org>2004-07-04 15:14:33 +0000
commitd281a6ac99b66dc149fbd56ba67cd73e3e87afb9 (patch)
treef4890f4a7a1975fc02c11919935810e5e8ce57d1 /lib
parentad5a63fe9396219f88b25d62a50a1bc7fb7f0c96 (diff)
downloadperl-d281a6ac99b66dc149fbd56ba67cd73e3e87afb9.tar.gz
/usr/bin/locale steadfastly delivers 8 bit output independent of
LC_ALL. So when perl's expecting utf8, things don't quite work right. This has become visible since fix 22842 p4raw-id: //depot/perl@23028
Diffstat (limited to 'lib')
-rw-r--r--lib/locale.t4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/locale.t b/lib/locale.t
index a294d2fbc2..037e2710e6 100644
--- a/lib/locale.t
+++ b/lib/locale.t
@@ -382,6 +382,10 @@ delete @ENV{qw(IFS CDPATH ENV BASH_ENV)};
if (-x "/usr/bin/locale" && open(LOCALES, "/usr/bin/locale -a 2>/dev/null|")) {
while (<LOCALES>) {
+ # It seems that /usr/bin/locale steadfastly outputs 8 bit data, which
+ # ain't great when we're running this testPERL_UNICODE= so that utf8
+ # locales will cause all IO hadles to default to (assume) utf8
+ next unless utf8::valid($_);
chomp;
trylocale($_);
}