]> git.decadent.org.uk Git - maypole.git/blobdiff - lib/Maypole.pm
view exceptions and some code cleaning
[maypole.git] / lib / Maypole.pm
index 11fbe52791014fda2e9c0cb6af9abbf187fd1748..4a5201127794ab8c8936cd322eeeb62de83395b1 100644 (file)
@@ -83,7 +83,7 @@ sub handler_guts {
     if ( my $error = $@ ) {
         $status = $r->call_exception($error);
         if ( $status != OK ) {
-            warn "caught model error: $error";
+            warn "caught authenticate error: $error";
             return $r->debug ? $r->view_object->error( $r, $error ) : ERROR;
         }
     }
@@ -106,7 +106,15 @@ sub handler_guts {
         }
     }
     if ( !$r->{output} ) {    # You might want to do it yourself
-        return $r->view_object->process($r);
+        eval { $status = $r->view_object->process($r) };
+        if ( my $error = $@ ) {
+            $status = $r->call_exception($error);
+            if ( $status != OK ) {
+                warn "caught view error: $error";
+                return $r->debug ? $r->view_object->error( $r, $error ) : ERROR;
+            }
+        }
+        return $status;
     }
     else { return OK; }
 }
@@ -332,7 +340,8 @@ Simon Cozens, C<simon@cpan.org>
 
 =head1 THANK YOU
 
-Jesse Scheidlower, Jody Belka, Markus Ramberg, Mickael Joanne, Simon Flack and all the others who've helped.
+Jesse Scheidlower, Jody Belka, Markus Ramberg, Mickael Joanne, Simon Flack,
+Veljko Vidovic and all the others who've helped.
 
 =head1 LICENSE