fix: sanitize emoji input to handle variation selectors (#774)

Signed-off-by: ispik <ispik@ispik.dev>
This commit is contained in:
İspik
2026-05-21 18:21:43 +03:00
committed by GitHub
parent b38499a05b
commit 2d308e03d5

View File

@@ -12,7 +12,7 @@ use crate::Database;
static PERMISSIBLE_EMOJIS: Lazy<HashSet<String>> = Lazy::new(|| {
include_str!("unicode_emoji.txt")
.split('\n')
.map(|x| x.into())
.map(|x| x.replace('\u{FE0F}', ""))
.collect()
});
@@ -108,7 +108,8 @@ impl Emoji {
db.fetch_emoji(emoji).await?;
Ok(true)
} else {
Ok(PERMISSIBLE_EMOJIS.contains(emoji))
let sanitized_emoji = emoji.replace('\u{FE0F}', "");
Ok(PERMISSIBLE_EMOJIS.contains(&sanitized_emoji))
}
}
}