diff --git a/pcbnew/drc/drc_test_provider_library_parity.cpp b/pcbnew/drc/drc_test_provider_library_parity.cpp index b3342cea9a..2f8f1adaa8 100644 --- a/pcbnew/drc/drc_test_provider_library_parity.cpp +++ b/pcbnew/drc/drc_test_provider_library_parity.cpp @@ -355,7 +355,13 @@ bool FOOTPRINT::FootprintNeedsUpdate( const FOOTPRINT* aLibFootprint ) std::unique_ptr temp( static_cast( Clone() ) ); temp->Flip( {0,0}, false ); temp->SetParentGroup( nullptr ); - return temp->FootprintNeedsUpdate( aLibFootprint ); + + bool needsUpdate = temp->FootprintNeedsUpdate( aLibFootprint ); + + // This temporary footprint must not have a parent when it goes out of scope because it must + // not trigger then IncrementTimestamp call in ~FOOTPRINT. + temp->SetParent( nullptr ); + return needsUpdate; } TEST( GetDescription(), aLibFootprint->GetDescription() );