From 28eb6dab973bb17847017ccc52cd8aef8ccae4c3 Mon Sep 17 00:00:00 2001 From: Seth Hillbrand Date: Thu, 18 Apr 2024 21:16:43 -0700 Subject: [PATCH] Handle hierarchical sheets in incremental change The drivers need to get passed up and down the hierarchical sheets. In order to do this, both the sheet pin and the hierarchical pin need to be in the changed items. However, we only get sheets in the screen items list while the pins are the elements that get set dirty Fixes https://gitlab.com/kicad/code/kicad/-/issues/17797 (cherry picked from commit 5f16c5892c37cac67f0994c46812a0f0d365a6d2) --- eeschema/connection_graph.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/eeschema/connection_graph.cpp b/eeschema/connection_graph.cpp index 1716cc6fa0..3f43dbb7e0 100644 --- a/eeschema/connection_graph.cpp +++ b/eeschema/connection_graph.cpp @@ -752,9 +752,9 @@ void CONNECTION_GRAPH::Recalculate( const SCH_SHEET_LIST& aSheetList, bool aUnco } else if( item->Type() == SCH_SHEET_T ) { - SCH_SHEET* sheetItem = static_cast( item ); + SCH_SHEET* sheet = static_cast( item ); - for( SCH_SHEET_PIN* pin : sheetItem->GetPins() ) + for( SCH_SHEET_PIN* pin : sheet->GetPins() ) { if( pin->IsConnectivityDirty() ) {