diff options
Diffstat (limited to 'src/trie.inc.h')
-rw-r--r-- | src/trie.inc.h | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/src/trie.inc.h b/src/trie.inc.h index ffc8ac8e..64e5239d 100644 --- a/src/trie.inc.h +++ b/src/trie.inc.h @@ -87,16 +87,19 @@ TYPE* GET(TRIE(TYPE)) ( TRIE(TYPE)* trie, char* key ) { char* subkey = key; while (n != NULL) { - if (subkey[1] == '\0') { - /* Wanted node found, - * value can however be NULL */ - return n->value; - } else if (subkey[0] == n->c) { - n = n->child; - subkey++; + if (subkey[0] == n->c) { + if (subkey[1] == '\0') { + /* Wanted node found, + * value can however be NULL */ + return n->value; + } else { + n = n->child; + subkey++; + } } else { n = n->next; } + } /* Position not found */ |