summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDimitri Sokolyuk <demon@dim13.org>2018-01-10 15:53:43 +0100
committerDimitri Sokolyuk <demon@dim13.org>2018-01-10 15:53:43 +0100
commiteb656a28536a34a4aa7460e83ca36e45a4337c18 (patch)
treedb5baeac93f24b7806b6d111571c2cbf857f0467
parent62af7bd0e503a6c3eafbfe0f0d8b7305730eccda (diff)
mitigate assholes
-rw-r--r--main.go5
1 files changed, 5 insertions, 0 deletions
diff --git a/main.go b/main.go
index afc4bda..1f0732b 100644
--- a/main.go
+++ b/main.go
@@ -37,6 +37,7 @@ func (n *Notify) Write(p []byte) (int, error) {
func privmsg(room string) irc.HandlerFunc {
last := make(map[string]string)
+ lastRe := make(map[string]string)
return func(conn *irc.Conn, line *irc.Line) {
defer func() {
if r := recover(); r != nil {
@@ -50,6 +51,10 @@ func privmsg(room string) irc.HandlerFunc {
conn.Kick(room, line.Nick)
}
case strings.HasPrefix(t, "s"):
+ if t == lastRe[line.Nick] {
+ return
+ }
+ lastRe[line.Nick] = t
global := strings.HasSuffix(t, "g")
if tofix, ok := last[line.Nick]; ok {
fixed := re(tofix, t[1:], global)