From 9f697e02565d48e7c24d45764bbb3d596dbbf816 Mon Sep 17 00:00:00 2001 From: Al Date: Mon, 20 Jul 2015 16:47:56 -0400 Subject: [PATCH] [transliteration] transliterate now using the new trie_get_data_at_index API --- src/transliterate.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/transliterate.c b/src/transliterate.c index b7a789cf..1d9cbc83 100644 --- a/src/transliterate.c +++ b/src/transliterate.c @@ -79,14 +79,15 @@ static transliteration_replacement_t *get_replacement(trie_t *trie, trie_prefix_ uint32_t node_id = result.node_id; if (node_id == NULL_NODE_ID) return NULL; - trie_node_t node = trie_get_node(trie, node_id); - trie_data_node_t data_node = trie_get_data_node(trie, node); + uint32_t replacement_index = 0; - if (data_node.tail != 0 && data_node.data < trans_table->replacements->n) { + if (!trie_get_data_at_index(trie, node_id, &replacement_index)) { + return NULL; + } + + if (replacement_index < trans_table->replacements->n) { log_debug("Got data node\n"); - transliteration_replacement_t *replacement = trans_table->replacements->a[data_node.data]; - - return replacement; + return trans_table->replacements->a[replacement_index]; } return NULL;