Index: openacs-4/packages/xotcl-core/tcl/01-debug-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/xotcl-core/tcl/01-debug-procs.tcl,v diff -u -r1.84 -r1.85 --- openacs-4/packages/xotcl-core/tcl/01-debug-procs.tcl 22 Dec 2017 13:51:55 -0000 1.84 +++ openacs-4/packages/xotcl-core/tcl/01-debug-procs.tcl 24 Dec 2017 12:28:07 -0000 1.85 @@ -346,7 +346,9 @@ if {$m<$max} {set max $m} ::xotcl::Object log "### Call Stack (level: command)" for {set i 0} {$i < $max} {incr i} { - if {[catch {set s [uplevel $i self]} msg]} { + try { + set s [uplevel $i self] + } on error {errorMsg} { set s "" } ::xotcl::Object log "### [format %5d -$i]:\t$s [info level [expr {-$i}]]" @@ -507,10 +509,12 @@ continue } #ns_log notice "*** cleanup $cmd" - if {[catch {eval $cmd} errorMsg]} { + try { + {*}$cmd + } on error {errorMsg} { set obj [lindex $cmd 0] ns_log error "Error during ::xo::cleanup: $errorMsg $::errorInfo" - catch { + try { ns_log notice "... analyze: cmd = $cmd" ns_log notice "... analyze: $obj is_object? [::xotcl::Object isobject $obj]" ns_log notice "... analyze: class [$obj info class]" @@ -534,7 +538,9 @@ } } #ns_log notice "*** at_end $at_end" - if {[catch {eval $at_end} errorMsg]} { + try { + {*}$at_end + } on error {errorMsg} { ns_log notice "Error during ::xo::cleanup: $errorMsg $::errorInfo" } array unset ::xo::cleanup @@ -811,7 +817,9 @@ if {[nsv_exists broadcast $tid]} { foreach cmd [nsv_get broadcast $tid] { ns_log notice "broadcast received {$cmd}" - if {[catch $cmd errorMsg]} { + try { + {*}$cmd + } on error {errorMsg} { ns_log notice "broadcast receive error: $errorMsg for cmd $cmd" } }