diff --git a/src/scheduler/Scheduler.cpp b/src/scheduler/Scheduler.cpp
index 4585e08d5ca3a2c37e9d8911cea9b1f25c3720b6..9c2109bf6fdfb1a1fbc57afc3fd09e08a1dfc2db 100644
--- a/src/scheduler/Scheduler.cpp
+++ b/src/scheduler/Scheduler.cpp
@@ -219,7 +219,7 @@ std::vector<std::shared_ptr<Aidge::Scheduler::StaticSchedulingElement>> Aidge::S
             bool isProducer = false;
             for (IOIndex_t outId = 0; outId < consumer->nbOutputs(); ++outId) {
                 for (const auto& child : consumer->getChildren(outId)) {
-                    if (child) {
+                    if (child && mGraphView->inView(child)) {
                         IOIndex_t inputIdx = 0;
                         for (const auto& childParent : child->getParents()) {
                             if (childParent == consumer) {