From 7e4c3fa5c7374363a28e9b0d028b6d71700607c7 Mon Sep 17 00:00:00 2001 From: kim <89579420+NyaaaWhatsUpDoc@users.noreply.github.com> Date: Sun, 17 Oct 2021 13:19:49 +0100 Subject: fix mention extracting when no domain exists (usually intra-instance mentions) (#272) * fix mention extracting when no domain exists (usually when intra-instance mentions) Signed-off-by: kim * fix search logic to match new mention matching logic Signed-off-by: kim * appease the linter :p Signed-off-by: kim --- internal/util/statustools.go | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) (limited to 'internal/util/statustools.go') diff --git a/internal/util/statustools.go b/internal/util/statustools.go index 95ce63a5b..030372b50 100644 --- a/internal/util/statustools.go +++ b/internal/util/statustools.go @@ -68,16 +68,12 @@ func DeriveEmojisFromText(text string) []string { // If nothing is matched, it will return an error. func ExtractMentionParts(mention string) (username, domain string, err error) { matches := regexes.MentionName.FindStringSubmatch(mention) - if matches == nil || len(matches) != 3 { - err = fmt.Errorf("could't match mention %s", mention) - return + switch len(matches) { + case 2: + return matches[1], "", nil + case 3: + return matches[1], matches[2], nil + default: + return "", "", fmt.Errorf("couldn't match mention %s", mention) } - username = matches[1] - domain = matches[2] - return -} - -// IsMention returns true if the passed string looks like @whatever@example.org -func IsMention(mention string) bool { - return regexes.MentionName.MatchString(strings.ToLower(mention)) } -- cgit v1.2.3