From b402b0601d904c86771dc45039db7ff49a510781 Mon Sep 17 00:00:00 2001 From: uakci Date: Wed, 28 Dec 2022 10:58:10 +0100 Subject: fix toadua responding to msgs like "!?" --- bot.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/bot.go b/bot.go index 1dbf68a..56b9126 100644 --- a/bot.go +++ b/bot.go @@ -36,6 +36,7 @@ const ( var ( markdownLinkRe = regexp.MustCompile(`!?\[(.*)\]\((.*)\)`) alphaHyphenRe = regexp.MustCompile(`^[a-z-]+$`) + allBangsRe = regexp.MustCompile(`^[!?]*$`) toaduaCmdRe = regexp.MustCompile(`^%([1-9][0-9]*)?$`) toaduaHost, zugaiHost string ) @@ -169,7 +170,7 @@ func respond(message string, callback func(Response)) { } Toadua(args, n, returnText) return - } else if strings.HasPrefix(cmd, "?") && len(cmd) > 1 && cmd[1] != '?' { + } else if strings.HasPrefix(cmd, "?") && !allBangsRe.MatchString(cmd) { fragments := strings.Split(strings.TrimSpace(cmd[1:]+" "+rest), "/") for i, fragment := range fragments { _, offset, err := strings.NewReader(fragment).ReadRune() -- cgit v1.2.3