From 90a91cadd0ac5c765761cf99d8b35d9be2ae1476 Mon Sep 17 00:00:00 2001 From: Al Date: Fri, 24 Jul 2015 15:59:49 -0400 Subject: [PATCH] [search] Modifying trie_search_prefixes to use the new key schema --- src/trie_search.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/trie_search.c b/src/trie_search.c index f383fc5e..8d93679e 100644 --- a/src/trie_search.c +++ b/src/trie_search.c @@ -484,7 +484,7 @@ phrase_t trie_search_suffixes_from_index(trie_t *self, char *word, uint32_t star inline phrase_t trie_search_suffixes(trie_t *self, char *word) { trie_node_t root_node = trie_get_root(self); - uint32_t node_id = trie_get_transition_index(self, root_node, '\0'); + uint32_t node_id = trie_get_transition_index(self, root_node, TRIE_SUFFIX_CHAR); trie_node_t node = trie_get_node(self, node_id); if (node.check != ROOT_NODE_ID) { @@ -609,7 +609,15 @@ phrase_t trie_search_prefixes_from_index(trie_t *self, char *word, uint32_t star } inline phrase_t trie_search_prefixes(trie_t *self, char *word) { - return trie_search_prefixes_from_index(self, word, ROOT_NODE_ID); + trie_node_t root_node = trie_get_root(self); + uint32_t node_id = trie_get_transition_index(self, root_node, TRIE_PREFIX_CHAR); + trie_node_t node = trie_get_node(self, node_id); + + if (node.check != ROOT_NODE_ID) { + return (phrase_t){0, 0, 0}; + } + + return trie_search_prefixes_from_index(self, word, node_id); }