mas_mn(mast->l)->parent =
ma_parent_ptr(((unsigned long)mas->tree | MA_ROOT_PARENT));
mas->depth = mast->orig_l->depth;
- mast->bn->b_end = 0;
- if (mte_is_root(mast->orig_l->node)) {
- if ((mast->orig_l->node != mas->node) &&
- (mast->l->depth > mas->tree->ma_height)) {
- mat_add(mast->free, mas->node);
- }
- } else {
+ if (!mte_is_root(mast->orig_l->node)) {
do {
mast_ascend_free(mast);
mast_topiary(mast);
} while (!mte_is_root(mast->orig_l->node));
+ } else if ((mast->orig_l->node != mas->node) &&
+ (mast->l->depth > mas->tree->ma_height)) {
+ mat_add(mast->free, mas->node);
}
mat_add(mast->free, mast->orig_l->node);