From 5c40e30ae5a9ac44b6ae1bddd14d5abcd4f61e30 Mon Sep 17 00:00:00 2001 From: Manuel Holtgrewe Date: Thu, 11 Jul 2024 10:43:17 +0200 Subject: [PATCH] fix: escape colons in term query (#159) (#173) --- src/server/run/hpo_terms.rs | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/server/run/hpo_terms.rs b/src/server/run/hpo_terms.rs index dd7857c..7a57834 100644 --- a/src/server/run/hpo_terms.rs +++ b/src/server/run/hpo_terms.rs @@ -295,10 +295,14 @@ async fn handle( query_parser.set_field_fuzzy(field_synonym, true, 1, true); query_parser }; - let index_query = query_parser.parse_query(name).map_err(|e| { - eprintln!("{e}"); - CustomError::new(anyhow::anyhow!("Error parsing query: {}", e)) - })?; + let name = if name.contains(":") { + format!("\"{name}\"") + } else { + name.to_string() + }; + let index_query = query_parser + .parse_query(&name) + .map_err(|e| CustomError::new(anyhow::anyhow!("Error parsing query: {}", e)))?; let top_docs = searcher .search( &index_query,