--- trunk/lib/Frey/Web.pm 2008/12/02 01:31:32 671 +++ trunk/lib/Frey/Web.pm 2008/12/02 02:01:23 677 @@ -228,10 +228,7 @@ eval { $body = $self->$run; }; - $body - = $self->error( $@ ) - . $self->dropdown( self => $self ) - if $@; + $body = $self->error( $@, '' ) if $@; } if ( $self->content_type !~ m{html} ) { warn "# return only $self body ", $self->content_type; @@ -322,19 +319,19 @@ # perl's backtrace $error =~ s{at\s+(\S+)\s+line\s+(\d+)} - {at $1 line $2}gsm; + {at $1 line $2}gsm; - # our backtrace - $error =~ s{(via (?:package) "?)([\w:]+)("?)} - {$1$2$3}gsm; + $error =~ s{(via (?:package)\s+"?)([\w:]+)("?)} + {$1$2$3}gsm + || # or anything that looks like "Class::Name" + $error =~ s{"(\w+(?:::\w+)+)"} + {"$1"}gsm; # method error messages -# $error =~ s{(method ")(\w+)"} -# {$1$2"}gsm; # FIXME replace with link to Frey::Introspect data + # FIXME replace with link to Frey::Introspect data + $error =~ s{(method ")(\w+)(" via)} + {$1$2$3}gsm; - # anything that looks like Class::Name= - $error =~ s{(\w+(?:::\w+)+)=} - {$1=}gsm; return $error; } @@ -633,7 +630,7 @@ ) = caller($_) or last; push @backtrace, - qq|via $package at $path line $line|; + qq|via "$package" at $path line $line|; } #warn "# backtrace: ", dump( @backtrace ) if @backtrace; return @backtrace;