diff --git a/src/graph/GraphView.cpp b/src/graph/GraphView.cpp
index 6545d81f60a0ba6056ed28505d6d383cc3099289..f498d5e82710f7fe78f27323f252a5c8f07ef96c 100644
--- a/src/graph/GraphView.cpp
+++ b/src/graph/GraphView.cpp
@@ -1258,7 +1258,7 @@ void Aidge::GraphView::updateInputsOutputsDelete(std::shared_ptr<Node> deletedNo
 
   if (deletedNode == mRootNode) {
     const std::pair<std::vector<NodePtr>, size_t> ranked_nodes = getRankedNodes();
-    if(ranked_nodes.second== 0 )
+    if(ranked_nodes.second== 0 || ranked_nodes.first.size() <= 1)
     {      
       mRootNode = nullptr;
     } else {