summaryrefslogtreecommitdiff
path: root/module/system/repl/error-handling.scm
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2010-10-08 19:27:45 +0200
committerAndy Wingo <wingo@pobox.com>2010-10-08 19:27:45 +0200
commita627100bf39c64f986536e9faff564e5602e0efa (patch)
tree4f4601f2fb9c2ae8a26d049fc5af92f5ea9f39b7 /module/system/repl/error-handling.scm
parent7cd6d77c640115d64768ac2e6d81b82e272a706f (diff)
downloadguile-a627100bf39c64f986536e9faff564e5602e0efa.tar.gz
further repl tweaks
* module/system/repl/error-handling.scm (error-string): Refactor a little. (call-with-error-handling): Ensure a trailing newline when printing the error-msg. * module/system/repl/repl.scm (run-repl): We don't know the name of the meta-command here.
Diffstat (limited to 'module/system/repl/error-handling.scm')
-rw-r--r--module/system/repl/error-handling.scm18
1 files changed, 9 insertions, 9 deletions
diff --git a/module/system/repl/error-handling.scm b/module/system/repl/error-handling.scm
index 609d9c3a1..58317a80d 100644
--- a/module/system/repl/error-handling.scm
+++ b/module/system/repl/error-handling.scm
@@ -34,15 +34,15 @@
;;;
(define (error-string stack key args)
- (with-output-to-string
- (lambda ()
- (pmatch args
- ((,subr ,msg ,args . ,rest)
- (guard (> (vector-length stack) 0))
+ (pmatch args
+ ((,subr ,msg ,args . ,rest)
+ (guard (> (vector-length stack) 0))
+ (with-output-to-string
+ (lambda ()
(display-error (vector-ref stack 0) (current-output-port)
- subr msg args rest))
- (else
- (format #t "Throw to key `~a' with args `~s'." key args))))))
+ subr msg args rest))))
+ (else
+ (format #f "Throw to key `~a' with args `~s'." key args))))
(define* (call-with-error-handling thunk #:key
(on-error 'debug) (post-error 'catch)
@@ -148,7 +148,7 @@
(debug (make-debug stack 0 error-msg)))
(with-saved-ports
(lambda ()
- (display error-msg)
+ (format #t "~a~%" error-msg)
(format #t "Entering a new prompt. ")
(format #t "Type `,bt' for a backtrace or `,q' to continue.\n")
((@ (system repl repl) start-repl) #:debug debug))))))