diff options
author | Gurusamy Sarathy <gsar@cpan.org> | 2000-01-05 11:25:10 +0000 |
---|---|---|
committer | Gurusamy Sarathy <gsar@cpan.org> | 2000-01-05 11:25:10 +0000 |
commit | 439481750538dbb51d2e41a78ef67e76929da233 (patch) | |
tree | 059e4894e2e4f5712f10052ccbcf679d14992a36 /ext | |
parent | 0a9fdc5d26a453a78e950d4bdaa9da4ed9ede5af (diff) | |
download | perl-439481750538dbb51d2e41a78ef67e76929da233.tar.gz |
tweak change#4745 to make ebcdic output match for chars <= 037
p4raw-link: @4745 on //depot/perl: 0407a77bc74fb10c233a2d09d551311e3628eba5
p4raw-id: //depot/perl@4756
Diffstat (limited to 'ext')
-rw-r--r-- | ext/Data/Dumper/Dumper.pm | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/ext/Data/Dumper/Dumper.pm b/ext/Data/Dumper/Dumper.pm index 1478672f64..a4aa3288a6 100644 --- a/ext/Data/Dumper/Dumper.pm +++ b/ext/Data/Dumper/Dumper.pm @@ -560,6 +560,7 @@ sub qquote { # no need for 3 digits in escape for these s/([\0-\037])(?!\d)/'\\'.sprintf('%o',ord($1))/eg; s/([\0-\037\177])/'\\'.sprintf('%03o',ord($1))/eg; + # all but last branch below not supported --BEHAVIOR SUBJECT TO CHANGE-- if ($high eq "iso8859") { s/([\200-\240])/'\\'.sprintf('%o',ord($1))/eg; } elsif ($high eq "utf8") { @@ -572,7 +573,10 @@ sub qquote { } } else { # ebcdic - s/([^ !"\#\$%&'()*+,\-.\/0-9:;<=>?\@A-Z[\\\]^_`a-z{|}~])/'\\'.sprintf('%03o',ord($1))/eg; + s{([^ !"\#\$%&'()*+,\-.\/0-9:;<=>?\@A-Z[\\\]^_`a-z{|}~])(?!\d)} + {my $v = ord($1); '\\'.sprintf(($v <= 037 ? '%o' : '%03o'), $v)}eg; + s{([^ !"\#\$%&'()*+,\-.\/0-9:;<=>?\@A-Z[\\\]^_`a-z{|}~])} + {'\\'.sprintf('%03o',ord($1))}eg; } return qq("$_"); |