chiark
/
gitweb
/
~mdw
/
ircbot
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Actually cope with nick changes.
[ircbot]
/
bot.tcl
diff --git
a/bot.tcl
b/bot.tcl
index b26d1c6f7eccb78491e9987356202bcb4961b7f7..876a2383a2e4136827604181ce78a4d5fc5c2039 100755
(executable)
--- a/
bot.tcl
+++ b/
bot.tcl
@@
-619,15
+619,15
@@
proc msg_NICK {p c newnick} {
prefix_nick
recordlastseen_n $n "changing nicks to $newnick" 0
recordlastseen_n $newnick "changing nicks from $n" 1
prefix_nick
recordlastseen_n $n "changing nicks to $newnick" 0
recordlastseen_n $newnick "changing nicks from $n" 1
+ set luser [irctolower $n]
+ set lusernew [irctolower $newnick]
foreach ary $nick_arys {
foreach ary $nick_arys {
- upvar #0 nick_${ary}($
n
) old
- upvar #0 nick_${ary}($
newnick
) new
+ upvar #0 nick_${ary}($
luser
) old
+ upvar #0 nick_${ary}($
lusernew
) new
if {[info exists new]} { error "nick collision ?! $ary $n $newnick" }
if {[info exists old]} { set new $old; unset old }
}
if {[info exists new]} { error "nick collision ?! $ary $n $newnick" }
if {[info exists old]} { set new $old; unset old }
}
- upvar #0 nick_onchans($new) oc
- set luser [irctolower $n]
- set lusernew [irctolower $newnick]
+ upvar #0 nick_onchans($lusernew) oc
foreach ch $oc {
upvar #0 chan_nicks($ch) nlist
set nlist [grep tn {"$tn" != "$luser"} $nlist]
foreach ch $oc {
upvar #0 chan_nicks($ch) nlist
set nlist [grep tn {"$tn" != "$luser"} $nlist]