diff --git a/src/tree.rs b/src/tree.rs
index 0c91b5eb1b3dc0f35c61ab5bdcce786f5437396c..76469a2c4c2f7e3f724a5511d8bd8b02fff886f0 100644
--- a/src/tree.rs
+++ b/src/tree.rs
@@ -77,7 +77,11 @@ impl Tree {
             children
         } else {
             // Is root node
-            self.root_node = None;
+            if let Some(root_node) = self.root_node {
+                if root_node == index {
+                    self.root_node = None;
+                }
+            }
             Vec::default()
         }
     }