diff options
| author | Rapptz <[email protected]> | 2017-08-10 03:15:19 -0400 |
|---|---|---|
| committer | Rapptz <[email protected]> | 2017-08-10 03:17:24 -0400 |
| commit | eb673ec2af5f224310b9ea90d2e3b905a2bd55c6 (patch) | |
| tree | 51a3385c8c0ed9c903334f34ec62c73cfe9b8230 | |
| parent | [commands] Fix clean_content converter not properly escaping mentions. (diff) | |
| download | discord.py-eb673ec2af5f224310b9ea90d2e3b905a2bd55c6.tar.xz discord.py-eb673ec2af5f224310b9ea90d2e3b905a2bd55c6.zip | |
[commands] Ensure no mentions escape clean_content
Some clever nicknames or role names would lead themselves to
resolving to pings.
| -rw-r--r-- | discord/ext/commands/converter.py | 12 |
1 files changed, 2 insertions, 10 deletions
diff --git a/discord/ext/commands/converter.py b/discord/ext/commands/converter.py index df34f47f..5e767c90 100644 --- a/discord/ext/commands/converter.py +++ b/discord/ext/commands/converter.py @@ -436,13 +436,5 @@ class clean_content(Converter): pattern = re.compile('|'.join(transformations.keys())) result = pattern.sub(replace, result) - transformations = { - '@everyone': '@\u200beveryone', - '@here': '@\u200bhere' - } - - def repl2(obj): - return transformations.get(obj.group(0), '') - - pattern = re.compile('|'.join(transformations.keys())) - return pattern.sub(repl2, result) + # Completely ensure no mentions escape: + return re.sub(r'@(everyone|here|[!&]?[0-9]{17,21})', '@\u200b\\1', result) |