return KNOT_ENOMEM;
}
it->tree = tree;
+ it->binode_second = ((tree->flags & ZONE_TREE_BINO_SECOND) ? 1 : 0);
it->next_tree = NULL;
}
return KNOT_EOK;
return KNOT_ENOMEM;
}
it->tree = first;
+ it->binode_second = ((first->flags & ZONE_TREE_BINO_SECOND) ? 1 : 0);
it->next_tree = second;
}
return KNOT_EOK;
zone_node_t *zone_tree_it_val(zone_tree_it_t *it)
{
- return fix_get(*trie_it_val(it->it), it->tree);
+ return (zone_node_t *)(*trie_it_val(it->it)) + it->binode_second;
}
void zone_tree_it_del(zone_tree_it_t *it)
if (it->next_tree != NULL && trie_it_finished(it->it)) {
trie_it_free(it->it);
it->tree = it->next_tree;
+ it->binode_second = ((it->tree->flags & ZONE_TREE_BINO_SECOND) ? 1 : 0);
it->next_tree = NULL;
it->it = trie_it_begin(it->tree->trie);
}