From a2af08da0c33d2dcde870b491f62a8bd0c1c6b81 Mon Sep 17 00:00:00 2001 From: matz Date: Wed, 20 Jan 1999 04:59:39 +0000 Subject: This commit was generated by cvs2svn to compensate for changes in r372, which included commits to RCS files with non-trunk default branches. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@373 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- lib/debug.rb | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'lib/debug.rb') diff --git a/lib/debug.rb b/lib/debug.rb index 432c7b4d1..90270a3fe 100644 --- a/lib/debug.rb +++ b/lib/debug.rb @@ -11,6 +11,8 @@ class DEBUGGER__ @scripts = {} end + DEBUG_LAST_CMD = [] + def interrupt @stop_next = 1 end @@ -40,6 +42,11 @@ class DEBUGGER__ STDOUT.flush while input = STDIN.gets input.chop! + if input == "" + input = DEBUG_LAST_CMD[0] + else + DEBUG_LAST_CMD[0] = input + end case input when /^b(reak)?\s+(([^:\n]+:)?.+)/ pos = $2 @@ -169,7 +176,7 @@ class DEBUGGER__ printf "no sourcefile available for %s\n", file end when /^p\s+/ - p debug_eval($', binding) + p debug_eval($', binding) #' else v = debug_eval(input, binding) p v unless v == nil @@ -187,10 +194,13 @@ class DEBUGGER__ return "\n" unless line return line end + save = $DEBUG begin + $DEBUG = FALSE f = open(file) lines = @scripts[file] = f.readlines rescue + $DEBUG = save @scripts[file] = TRUE return "\n" end -- cgit