Fix up kicad-cli DRC project and library handling

Fixes https://gitlab.com/kicad/code/kicad/-/issues/23379
This commit is contained in:
Jon Evans
2026-03-09 20:42:29 -04:00
parent e47e3cc166
commit e468788aa8
3 changed files with 34 additions and 9 deletions
@@ -159,18 +159,20 @@ BOARD* LoadBoard( const wxString& aFileName, PCB_IO_MGR::PCB_FILE_T aFormat, boo
// By default only the BMP handler is available.
wxInitAllImageHandlers();
PROJECT* project = GetSettingsManager()->GetProject( projectPath );
SETTINGS_MANAGER& settingsManager = PgmOrNull() ? Pgm().GetSettingsManager() : *GetSettingsManager();
PROJECT* project = settingsManager.GetProject( projectPath );
if( !project )
{
if( wxFileExists( projectPath ) )
{
// cli
GetSettingsManager()->LoadProject( projectPath, aSetActive );
project = GetSettingsManager()->GetProject( projectPath );
settingsManager.LoadProject( projectPath, aSetActive );
project = settingsManager.GetProject( projectPath );
}
}
else if( s_PcbEditFrame && project == &GetSettingsManager()->Prj() )
else if( s_PcbEditFrame && project == &settingsManager.Prj() )
{
// Project is already loaded? Then so is the board
return s_PcbEditFrame->GetBoard();