summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/open.pm5
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/open.pm b/lib/open.pm
index c338abf7f3..a42f62353b 100644
--- a/lib/open.pm
+++ b/lib/open.pm
@@ -67,12 +67,15 @@ sub import {
if ($locale_encoding =~ /^utf-?8$/i) {
$layer = "utf8";
} else {
- $layer = "encoding($locale_encoding)";
+ $layer = "encoding";
}
}
unless(PerlIO::Layer::->find($layer)) {
carp("Unknown discipline layer '$layer'");
}
+ if (defined $locale_encoding) {
+ $layer = "$layer($locale_encoding)";
+ }
push(@val,":$layer");
if ($layer =~ /^(crlf|raw)$/) {
$^H{"open_$type"} = $layer;