From 4e6252fb03374caf97685416e04f00f6caad2d11 Mon Sep 17 00:00:00 2001 From: Louis Dureuil Date: Mon, 12 May 2025 11:59:21 +0200 Subject: [PATCH] Only intern in case of single-typo when looking for single typoes --- crates/milli/src/search/new/query_term/compute_derivations.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/crates/milli/src/search/new/query_term/compute_derivations.rs b/crates/milli/src/search/new/query_term/compute_derivations.rs index 10e480a04..5edf85e97 100644 --- a/crates/milli/src/search/new/query_term/compute_derivations.rs +++ b/crates/milli/src/search/new/query_term/compute_derivations.rs @@ -92,12 +92,12 @@ fn find_one_typo_derivations( let mut stream = fst.search_with_state(Intersection(starts, &dfa)).into_stream(); while let Some((derived_word, state)) = stream.next() { - let derived_word = std::str::from_utf8(derived_word)?; - let derived_word = ctx.word_interner.insert(derived_word.to_owned()); let d = dfa.distance(state.1); match d.to_u8() { 0 => (), 1 => { + let derived_word = std::str::from_utf8(derived_word)?; + let derived_word = ctx.word_interner.insert(derived_word.to_owned()); let cf = visit(derived_word)?; if cf.is_break() { break;