61
62
63
64
65
66
67
68
69
70
71
|
(define-simple-syntax (debug:catch-and-dump proc procname)
(handle-exceptions
exn
(begin
(print-call-chain (current-error-port))
(with-output-to-port (current-error-port)
(lambda ()
(print ((condition-property-accessor 'exn 'message) exn))
(print "Callback error in " procname)
(print "Full condition info:\n" (condition->list exn)))))
(proc)))
|
|
|
|
|
61
62
63
64
65
66
67
68
69
70
71
|
(define-simple-syntax (debug:catch-and-dump proc procname)
(handle-exceptions
exn
(begin
(print-call-chain (current-error-port))
(with-output-to-port (current-error-port)
(lambda ()
(debug:print 0 *default-log-port* ((condition-property-accessor 'exn 'message) exn))
(debug:print 0 *default-log-port* "Callback error in " procname)
(debug:print 0 *default-log-port* "Full condition info:\n" (condition->list exn)))))
(proc)))
|