From 9a4f92dfd9a96434b576ac3fb00294aa7d69c7c7 Mon Sep 17 00:00:00 2001 From: Seth Hillbrand Date: Thu, 20 Aug 2020 21:49:40 -0700 Subject: [PATCH] Ensure that all pads with holes have alts Alternate shapes for holes that are fallback clearance are needed in case we have missing copper on any layer Fixes https://gitlab.com/kicad/code/kicad/issues/5233 --- pcbnew/router/pns_kicad_iface.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pcbnew/router/pns_kicad_iface.cpp b/pcbnew/router/pns_kicad_iface.cpp index 6a3432fead..fb3afa8196 100644 --- a/pcbnew/router/pns_kicad_iface.cpp +++ b/pcbnew/router/pns_kicad_iface.cpp @@ -618,9 +618,12 @@ std::unique_ptr PNS_KICAD_IFACE_BASE::syncPad( D_PAD* aPad ) std::unique_ptr< PNS::SOLID > solid( new PNS::SOLID ); - if( aPad->GetAttribute() == PAD_ATTRIB_STANDARD ) + if( aPad->GetAttribute() == PAD_ATTRIB_STANDARD || PAD_ATTRIB_HOLE_NOT_PLATED ) solid->SetAlternateShape( aPad->GetEffectiveHoleShape()->Clone() ); + if( aPad->GetAttribute() == PAD_ATTRIB_HOLE_NOT_PLATED ) + solid->SetRoutable( false ); + solid->SetLayers( layers ); solid->SetNet( aPad->GetNetCode() ); solid->SetParent( aPad );