Subject: | forwarding to runmodes defined in CAP::AutoRunmode delegate classes does not work |
hi,
the problem is related to 2 modules:
1) CAP::Forward (1.06)
2) CAP::AutoRunmode (0.15)
in perl (5.8.8 on opensuse 10.3 )
a) runmodes defined using CAP::AutoRunmode using Attribute-Handlers work
fine.
b) runmodes defined using CAP::AutoRunmode using the delegation
technique croak with "CAP::Forward: target method %RM% of run mode %RM%
does not exist";
( %RM% being the runmode defined in a delegate class which works
correcly on direct invocation )
I did some testing with the following modifications, and for me it
seemed to solve the problem...
regards
-- /usr/lib/perl5/site_perl/5.8.8/CGI/Application/Plugin/Forward.pm
+++ /usr/lib/perl5/site_perl/5.8.8/CGI/Application/Plugin/Forward.pm_1.06
@@ -168,10 +168,8 @@
if ($CGI::Application::Plugin::AutoRunmode::VERSION) {
if
(CGI::Application::Plugin::AutoRunmode->can('is_auto_runmode')) {
- my $coderef;
- if ($coderef =
CGI::Application::Plugin::AutoRunmode::is_auto_runmode($self, $run_mode)) {
- #$self->run_modes( $run_mode => $run_mode);
- $self->run_modes( $run_mode => $coderef);
+ if
(CGI::Application::Plugin::AutoRunmode::is_auto_runmode($self, $run_mode)) {
+ $self->run_modes( $run_mode => $run_mode);
}
}
}