<&| $wrapper, title => _("Mason error") &> Error in <& .line, file => $file, line => "@lines" &>
<% $msg %>
<% Jifty->web->return( label => _("Try again") ) %>

Call stack

<%def .line> <%args> $file $line % my $path; % if (-w $file) { % $path = $file; % for (map {$_->[1]} @{Jifty->handler->mason->interp->comp_root}) { % last if $path =~ s/^\Q$_\E//; % } % if ($path ne $file) { template <% Jifty->web->tangent( url =>"/__jifty/edit/mason_component$path", label => _("%1 line %2", $path, $line), parameters => { line => $line } ) %> % } else { <% Jifty->web->tangent( url =>"/__jifty/edit/library$path", label => _("%1 line %2", $path, $line), parameters => { line => $line } ) %> % } % } else { <% _("%1 line %2", $file, $line) %> % } <%init> my $wrapper = "/_elements/wrapper"; my $cont = Jifty->web->request->continuation; $wrapper = "/__jifty/error/_elements/wrapper" if $cont and $cont->request->path eq "/__jifty/error/mason_internal_error"; # If we're not in devel, bail if ( not Jifty->config->framework("DevelMode") or not $cont ) { $m->comp( $wrapper, content => sub { $m->comp( "_elements/error_text", error => "mason internal error" ); }, title => "Something went awry" ); $m->abort; } my $e = $cont->response->error; my $msg = $e->message; $msg =~ s/, <\S+> (line|chunk) \d+\././; my $info = $e->analyze_error; my $file = $info->{file}; my @lines = @{ $info->{lines} }; my @stack = @{ $info->{frames} };