while (!(cindex--)) {
                                t_key pkey = pn->key;
 
-                               n = pn;
-                               pn = node_parent(n);
-
-                               /* resize completed node */
-                               resize(t, n);
-
                                /* if we got the root we are done */
+                               pn = node_parent(pn);
                                if (!pn)
                                        return;
 
        hlist_for_each_entry(fa, &n->leaf, fa_list) {
                struct fib_info *fi = fa->fa_info;
 
-               if (fi && (fi->fib_flags & RTNH_F_EXTERNAL)) {
-                       netdev_switch_fib_ipv4_del(n->key,
-                                                  KEYLENGTH - fa->fa_slen,
-                                                  fi, fa->fa_tos,
-                                                  fa->fa_type, tb->tb_id);
-               }
+               if (!fi || !(fi->fib_flags & RTNH_F_EXTERNAL))
+                       continue;
+
+               netdev_switch_fib_ipv4_del(n->key,
+                                          KEYLENGTH - fa->fa_slen,
+                                          fi, fa->fa_tos,
+                                          fa->fa_type, tb->tb_id);
        }
 
        /* if trie is leaf only loop is completed */