]> cat aescling's git repositories - mastodon.git/commit
Don't add \b to whole-word keywords that don't start with word characters.
authorDavid Yip <yipdw@member.fsf.org>
Sun, 22 Oct 2017 05:24:32 +0000 (00:24 -0500)
committerDavid Yip <yipdw@member.fsf.org>
Sun, 22 Oct 2017 05:38:54 +0000 (00:38 -0500)
commit4b68e82a19ab2853264515a25af8d39841e43f00
tree814f30ea153dce13ba09df0aa25f68dac77ba9f8
parent19826774f06244b0c84a1973b3a366df0d7f0f5a
Don't add \b to whole-word keywords that don't start with word characters.

Ditto for ending with \b.

Consider muting the phrase "(hot take)".  I stipulate it is reasonable
to enter this with the default "match whole word" behavior.  Under the
old behavior, this would be encoded as

    \b\(hot\ take\)\b

However, if \b is before the first character in the string and the first
character in the string is not a word character, then the match will
fail.  Ditto for after.  In our example, "(" is not a word character, so
this will not match statuses containing "(hot take)", and that's a very
surprising behavior.

To address this, we only add leading and trailing \b to keywords that
start or end with word characters.
app/models/glitch/keyword_mute.rb
spec/models/glitch/keyword_mute_spec.rb
This page took 0.026437 seconds and 3 git commands to generate.