From 30dd8224be7e9ec844feb1a63405c8c4afe27cbd Mon Sep 17 00:00:00 2001 From: jean-pierre charras Date: Sun, 30 Jun 2024 10:43:10 +0200 Subject: [PATCH] Fp editor, DIALOG_PAD_PROPERTIES: fix crash if no footprint loaded. Fix also a incorrect pad stack for SMD pad in some cases. --- pcbnew/dialogs/dialog_pad_properties.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pcbnew/dialogs/dialog_pad_properties.cpp b/pcbnew/dialogs/dialog_pad_properties.cpp index 02c87a6238..5f000dc10f 100644 --- a/pcbnew/dialogs/dialog_pad_properties.cpp +++ b/pcbnew/dialogs/dialog_pad_properties.cpp @@ -572,9 +572,9 @@ void DIALOG_PAD_PROPERTIES::initValues() PAD_TOOL* padTool = m_parent->GetToolManager()->GetTool(); m_padNumCtrl->SetValue( padTool->GetLastPadNumber() ); - if( m_isFpEditor ) + if( m_isFpEditor && m_board->GetFirstFootprint() ) { - switch( m_board->Footprints()[0]->GetAttributes() ) + switch( m_board->GetFirstFootprint()->GetAttributes() ) { case FOOTPRINT_ATTR_T::FP_THROUGH_HOLE: m_previewPad->SetAttribute( PAD_ATTRIB::PTH ); @@ -585,6 +585,7 @@ void DIALOG_PAD_PROPERTIES::initValues() break; case FOOTPRINT_ATTR_T::FP_SMD: + m_previewPad->SetLayerSet( PAD::SMDMask() ); m_previewPad->SetAttribute( PAD_ATTRIB::SMD ); break; }