update Plugin::Peek for error object
[p5sagit/Devel-REPL.git] / lib / Devel / REPL / Plugin / Peek.pm
index e6f4893..8e772ee 100644 (file)
@@ -12,15 +12,16 @@ with qw(Devel::REPL::Plugin::Turtles);
 sub expr_command_peek {
   my ( $self, $eval, $code ) = @_;
 
-  if ( my $cont = $self->can("continue_reading_if_necessary") ) {
-    $code = $self->$cont($code);
+  my @res = $self->eval($code);
+
+  if ( $self->is_error(@res) ) {
+    return $self->format(@res);
+  } else {
+    # can't override output properly
+    # FIXME do some dup wizardry
+    Dump(@res);
+    return ""; # this is a hack to print nothing after Dump has already printed. PLZ TO FIX KTHX!
   }
-
-  # can't override output properly
-  # FIXME do some dup wizardry
-  Dump( $self->eval($code) );
-
-  return ""; # this is a hack to print nothing after Dump has already printed. PLZ TO FIX KTHX!
 }
 
 __PACKAGE__