I've found a work around for the problem, i would call it a patch
because i don't know yet which side affects this replacement has. 

I have replaced
------------------------cut---------------------------
return map { s/%([0-9a-fA-F]{2})/pack("c",hex($1))/ge; $_; } split
/[=&;]/, $string, -1;
------------------------cut---------------------------
by
------------------------cut---------------------------
return map { s/%([0-9a-fA-F]{2})/chr(hex($1))/ge; $_; } split /[=&;]/,
$string, -1;
------------------------cut---------------------------

I don't know if pack has any advantages still I know that HTML::Entities
converts characters this way, so it should work in most situations.
Still does anybody know what's wrong with pack into mod_perl although it
works in perl itself without any problems.

I've also added a diff.

thx

tom

Am Son, 2002-12-08 um 21.46 schrieb Tom Schindl:
> Problems with Apache::compat
> 
> CGI-PARAM-STRING: header=%DC%DC%DC%DC&body=%D6%D6%D6%D6&type=save_thread
> 
> ------------------------cut--------------------------------------
> [Sun Dec 08 21:39:09 2002] [error] [client 127.0.0.1] Character in "c"
> format wrapped at
> 
>/usr/bestsolution/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi/Apache2/Apache/compat.pm
> line 217.
> , referer: http://localhost/discussion-board
> ------------------------cut--------------------------------------
> 
> When I copy the lines of interest into a small perl program and execute
> it, everything works perfectly. What's going wrong there?
> 
> ------------------------cut--------------------------------------
> map { s/%([0-9a-fA-F]{2})/pack("c",hex($1))/ge; $_; } split /[=&;]/,
> $string, -1
> ------------------------cut--------------------------------------
> 
> thx
> 
> tom
-- 
Tom Schindl <[EMAIL PROTECTED]>

Attachment: signature.asc
Description: Dies ist ein digital signierter Nachrichtenteil

Reply via email to