* test/Makefile.am (EXTRA_DIST): Add test-riece-eval.el.
[riece] / lisp / riece-debug.el
index 2a301a4..6c1b051 100644 (file)
 
 (require 'riece-globals)
 
-(defvar riece-debug-standard-output-buffer nil)
-
 (defun riece-debug-reset-standard-output ()
-  (unless riece-debug-standard-output-buffer
-    (setq riece-debug-standard-output-buffer
-         (generate-new-buffer " *riece-debug-standard-output*")))
   (save-excursion
-    (set-buffer riece-debug-standard-output-buffer)
+    (set-buffer riece-temp-buffer)
     (buffer-disable-undo)
     (erase-buffer)))
 
@@ -41,7 +36,7 @@
   `(unwind-protect
        (progn ,@body)
      (riece-debug-reset-standard-output)
-     (let ((standard-output riece-debug-standard-output-buffer))
+     (let ((standard-output riece-temp-buffer))
        (backtrace))))
 
 (put 'riece-debug-with-backtrace 'lisp-indent-function 0)
@@ -55,7 +50,8 @@
      (error
       (if riece-debug
          (save-excursion
-           (set-buffer riece-debug-standard-output-buffer)
+           (set-buffer riece-temp-buffer)
+           (goto-char (point-min))
            (if (re-search-forward "^  signal(" nil t)
                (delete-region (point-min) (match-beginning 0)))
            (message "Error in `%s': %S\n%s" ,location error (buffer-string))))