chiark / gitweb /
Invent and use catch_logged
[ircbot] / irccore.tcl
index 4937211acb00aa638728d3c19ee82814aad1984e..4fbf639770f256909e64bc2e18f1767d705d6473 100644 (file)
@@ -212,6 +212,12 @@ proc onread {args} {
     }
 }
 
+proc catch_logged {body} {
+    if {[catch { uplevel 1 $body } emsg]} {
+       logerror "error (catch_logged): $emsg"
+    }
+}
+
 proc sendprivmsg {dest l} {
     foreach v [split $l "\n"] {
        sendout [expr {[ischan $dest] ? "PRIVMSG" : "NOTICE"}] $dest $v