EAGLE import: fix crash when loading unknown signal class name.

Fixes KICAD-3FA

Cherry-picked from 0fcf9e2c7d and 331176744c
This commit is contained in:
Alex Shvartzkop 2023-08-25 23:05:26 +03:00
parent 3e1309110e
commit 33c2005c18
1 changed files with 9 additions and 7 deletions

View File

@ -2594,15 +2594,17 @@ void EAGLE_PLUGIN::loadSignals( wxXmlNode* aSignals )
if( net->HasAttribute( "class" ) )
{
netclass = m_classMap[ net->GetAttribute( "class" ) ];
auto netclassIt = m_classMap.find( net->GetAttribute( "class" ) );
m_board->GetDesignSettings().m_NetSettings->m_NetClassPatternAssignments.push_back(
{
std::make_unique<EDA_COMBINED_MATCHER>( netName, CTX_NETCLASS ),
netclass->GetName()
} );
if( netclassIt != m_classMap.end() )
{
m_board->GetDesignSettings().m_NetSettings->m_NetClassPatternAssignments.push_back(
{ std::make_unique<EDA_COMBINED_MATCHER>( netName, CTX_NETCLASS ),
netclassIt->second->GetName() } );
netInfo->SetNetClass( netclass );
netInfo->SetNetClass( netclassIt->second );
netclass = netclassIt->second;
}
}
m_board->Add( netInfo );