Don't use zone connections to control optional via flashing.

Fixes https://gitlab.com/kicad/code/kicad/issues/11299
This commit is contained in:
Jeff Young 2022-05-23 10:25:29 +01:00
parent 3f502b313d
commit 24ddf1ad20
1 changed files with 5 additions and 2 deletions

View File

@ -545,8 +545,11 @@ bool PCB_VIA::FlashLayer( int aLayer ) const
return true;
// Must be static to keep from raising its ugly head in performance profiles
static std::initializer_list<KICAD_T> connectedTypes = { PCB_TRACE_T, PCB_ARC_T, PCB_PAD_T,
PCB_ZONE_T, PCB_FP_ZONE_T };
static std::initializer_list<KICAD_T> connectedTypes = { PCB_TRACE_T, PCB_ARC_T, PCB_PAD_T };
// Do not check zones. Doing so results in race conditions when the via collides with
// two different zones of different priorities.
// See https://gitlab.com/kicad/code/kicad/-/issues/11299.
return board->GetConnectivity()->IsConnectedOnLayer( this, aLayer, connectedTypes, true );
}