chiark / gitweb /
Abandon crappy changes to diagram. Sort out repeated notification problems when...
[ircbot] / irccore.tcl
index 4fbf639770f256909e64bc2e18f1767d705d6473..bdb8c8e7273a17d0c75d9732229602a33dcbd83e 100644 (file)
@@ -212,6 +212,13 @@ proc onread {args} {
     }
 }
 
+proc catch_restoreei {body} {
+    global errorInfo errorCode
+    set l [list $errorInfo $errorCode]
+    catch { uplevel 1 $body }
+    manyset $l errorInfo errorCode
+}
+
 proc catch_logged {body} {
     if {[catch { uplevel 1 $body } emsg]} {
        logerror "error (catch_logged): $emsg"
@@ -232,6 +239,7 @@ proc msendprivmsg_delayed {delay dest ll} { after $delay [list msendprivmsg $des
 proc check_nick {n} {
     if {[regexp -nocase {[^][\\`_^{|}a-z0-9-]} $n]} { error "bad char in nick" }
     if {[regexp {^[-0-9]} $n]} { error "bad nick start" }
+    if {[string length $n] > 18} { error "nick too long" }
 }
 
 proc ischan {dest} {