CC: | "Mark Blum" <MBlum [...] gci.com>, "Matt Grimm" <mgrimm [...] gci.com> |
Subject: | "Use of uninitialized value in pattern match" in Lite.pm |
Date: | Tue, 24 Feb 2009 11:12:42 -0900 |
To: | <bug-SOAP-Lite [...] rt.cpan.org> |
From: | "Matt Grimm" <mgrimm [...] gci.com> |
Each time a SOAP call is made to an Apache/mod_perl web server
implementing SOAP::Lite, a warning is dumped into the Apache error log:
Use of uninitialized value in pattern match (m//) at
/usr/lib/perl5/site_perl/5.8.8/SOAP/Lite.pm line 2619.
at /usr/lib/perl5/site_perl/5.8.8/SOAP/Lite.pm line 2619
SOAP::Server::find_target('Apache2::SOAP=HASH(0x2b89ea8eafd0)',
'SOAP::SOM=HASH(0x2b89eab0f950)') called at
/usr/lib/perl5/site_perl/5.8.8/SOAP/Lite.pm line 2728
eval {...} called at /usr/lib/perl5/site_perl/5.8.8/SOAP/Lite.pm line
2695
SOAP::Server::handle('Apache2::SOAP=HASH(0x2b89ea8eafd0)', '<?xml
version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmln...') called at
/usr/lib/perl5/site_perl/5.8.8/SOAP/Transport/HTTP.pm line 394
SOAP::Transport::HTTP::Server::handle('Apache2::SOAP=HASH(0x2b89ea8eafd0
)') called at /usr/lib/perl5/site_perl/5.8.8/SOAP/Transport/HTTP2.pm
line 103
SOAP::Transport::HTTP2::Apache::handler('Apache2::SOAP=HASH(0x2b89ea8eaf
d0)', 'Apache2::RequestRec=SCALAR(0x2b89ff0881d0)') called at
/usr/lib/perl5/site_perl/5.8.8/Apache2/SOAP.pm line 25
Apache2::SOAP::handler('Apache2::RequestRec=SCALAR(0x2b89ff0881d0)')
called at -e line 0
eval {...} called at -e line 0
The test throwing this error (when $action is undefined) is in the
"find_target" method as follows:
2617 my ($class, $static);
2618 # try to bind directly
2619 if (defined($class = $self->dispatch_with->{$method_uri}
2620 || $self->dispatch_with->{$action || ''}
2621 || ($action =~ /^"(.+)"$/
2622 ? $self->dispatch_with->{$1}
2623 : undef))) {
2624 # return object, nothing else to do here
2625 return ($class, $method_uri, $method_name) if ref $class;
2626 $static = 1;
2627 }
This issue has existed since 0.65, and is still present in 0.710.08.
Attached is a patch to fix the issue (for 0.710.08).
Thanks,
m.
Message body is not shown because sender requested not to inline it.