Subject: | URI::Find corrupts input |
The attached test case demonstrates URI::Find corrupting its input string.
Subject: | uue.t |
use Test::More qw(no_plan);
use URI::Find;
my $txt = << 'EOF' ;
begin 644 mem.txt
M("`@("`@("`@("`@("`@("`@("`@("`@("`@('P@(#0Q,34Q,SD@?"`@(#$V
M,#<T+C<V(`H@("`@($ME<FYE;"!I9&5N=&EF:65D(&UE;6]R>2`H<V5G:61S
M+'=L;5]H=U]P86=E<RD@?"`@,30W,S8X,2!\("`@(#4W-38N-38@"B`@("`@
M2V5R;F5L('5N+6ED96YT:69I960@;65M;W)Y("`@("`@("`@("`@("`@("`@
M("!\("`@(#$U-30P('P@("`@("`V,"XW,"`*("`@("!&;W)K('1R964@<&%G
M97,@("`@("`@("`@("`@("`@("`@("`@("`@("`@("`@('P@("`@(#4U-C<@
M?"`@("`@(#(Q+C<T(`H@("`@($QA<F=E(%!A9V4@4&]O;"!F<F5E('!A9V5S
M("`@("`@("`@("`@("`@("`@("`@?"`@("`@("`@,"!\("`@("`@(#`N,#`@
M"B`@("`@2'5G92!086=E(%!O;VP@9G)E92!P86=E<R`@("`@("`@("`@("`@
M("`@("`@("!\("`@("`@("`P('P@("`@("`@,"XP,"`*("`@("!5<V5R('!R
M:79A=&4@;65M;W)Y("`@("`@("`@("`@("`@("`@("`@("`@("`@('P@(#$U
M,34W-C8@?"`@("`U.3(P+CDV(`H@("`@(%5S97(@<VAA<F5D(&UE;6]R>2`@
M("`@("`@("`@("`@("`@("`@("`@("`@("`@?"`@(#<Y,C4P,B!\("`@(#,P
`
end
EOF
my $expected = $txt;
my $finder = URI::Find->new(sub { die; });
$finder->find(\$txt);
is($txt, $expected);