diff --git a/lib/maple_tree.c b/lib/maple_tree.c index ccd834d624ed..e095e2c39a1b 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -6734,15 +6734,12 @@ static void mas_dfs_postorder(struct ma_state *mas, unsigned long max) mas->node = mn; mas_ascend(mas); - while (mas->node != MAS_NONE) { + do { p = mas->node; p_min = mas->min; p_max = mas->max; mas_prev_node(mas, 0); - } - - if (p == MAS_NONE) - return; + } while (!mas_is_none(mas)); mas->node = p; mas->max = p_max;