summaryrefslogtreecommitdiff
path: root/liblangtag/lt-trie.c
diff options
context:
space:
mode:
Diffstat (limited to 'liblangtag/lt-trie.c')
-rw-r--r--liblangtag/lt-trie.c26
1 files changed, 13 insertions, 13 deletions
diff --git a/liblangtag/lt-trie.c b/liblangtag/lt-trie.c
index de4b080..a9d8455 100644
--- a/liblangtag/lt-trie.c
+++ b/liblangtag/lt-trie.c
@@ -166,20 +166,20 @@ _lt_trie_iter_init(lt_iter_tmpl_t *tmpl)
int i;
trie_iter = malloc(sizeof (lt_trie_iter_t));
- if (trie_iter) {
- trie_iter->pos_str = lt_string_new(NULL);
- trie_iter->last_key = NULL;
- trie_iter->stack = NULL;
- if (trie->root) {
- lt_trie_node_t *node = trie->root;
-
- for (i = 0; i < 255; i++) {
- if (node->node[i])
- trie_iter->stack = lt_list_append(trie_iter->stack, node->node[i], NULL);
- }
- /* add a terminator */
- trie_iter->stack = lt_list_append(trie_iter->stack, NULL, NULL);
+ if (!trie_iter)
+ return NULL;
+ trie_iter->pos_str = lt_string_new(NULL);
+ trie_iter->last_key = NULL;
+ trie_iter->stack = NULL;
+ if (trie->root) {
+ lt_trie_node_t *node = trie->root;
+
+ for (i = 0; i < 255; i++) {
+ if (node->node[i])
+ trie_iter->stack = lt_list_append(trie_iter->stack, node->node[i], NULL);
}
+ /* add a terminator */
+ trie_iter->stack = lt_list_append(trie_iter->stack, NULL, NULL);
}
return &trie_iter->parent;