fix(core): fix string clipping operator that crashed with some unicode chars
This commit is contained in:
parent
bf1f3fc2e0
commit
411118b550
|
@ -55,11 +55,15 @@ impl<'a> MatchSelector for MatchSelectorAdapter<'a> {
|
||||||
let search_items: Vec<SearchItem> = matches
|
let search_items: Vec<SearchItem> = matches
|
||||||
.into_iter()
|
.into_iter()
|
||||||
.map(|m| {
|
.map(|m| {
|
||||||
let clipped_label = &m.label[..std::cmp::min(m.label.len(), MAX_LABEL_LEN)];
|
let clipped_label: String = m
|
||||||
|
.label
|
||||||
|
.chars()
|
||||||
|
.take(std::cmp::min(m.label.len(), MAX_LABEL_LEN))
|
||||||
|
.collect();
|
||||||
|
|
||||||
SearchItem {
|
SearchItem {
|
||||||
id: m.id.to_string(),
|
id: m.id.to_string(),
|
||||||
label: clipped_label.to_string(),
|
label: clipped_label,
|
||||||
tag: m.tag.map(String::from),
|
tag: m.tag.map(String::from),
|
||||||
is_builtin: m.is_builtin,
|
is_builtin: m.is_builtin,
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user