From 2c0010fbcb5195f35fa5953e07c339e40730355a Mon Sep 17 00:00:00 2001 From: Jeff Young Date: Thu, 30 May 2024 00:08:45 +0100 Subject: [PATCH] Make sure var overrides get synced to board properties. Also allow the board properties to override title-block properties. Fixes https://gitlab.com/kicad/code/kicad/-/issues/17863 (cherry picked from commit 3cf424d92983c8eb335fc655a1891ecef4dc9833) --- pcbnew/board.cpp | 10 +++++----- pcbnew/pcbnew_jobs_handler.cpp | 1 + 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/pcbnew/board.cpp b/pcbnew/board.cpp index 7a1ceed494..555d8d50e5 100644 --- a/pcbnew/board.cpp +++ b/pcbnew/board.cpp @@ -436,15 +436,15 @@ bool BOARD::ResolveTextVar( wxString* token, int aDepth ) const wxString var = *token; - if( GetTitleBlock().TextVarResolver( token, m_project ) ) - { - return true; - } - else if( m_properties.count( var ) ) + if( m_properties.count( var ) ) { *token = m_properties.at( var ); return true; } + else if( GetTitleBlock().TextVarResolver( token, m_project ) ) + { + return true; + } if( GetProject() && GetProject()->TextVarResolver( token ) ) return true; diff --git a/pcbnew/pcbnew_jobs_handler.cpp b/pcbnew/pcbnew_jobs_handler.cpp index 71b10543a4..75e73619d2 100644 --- a/pcbnew/pcbnew_jobs_handler.cpp +++ b/pcbnew/pcbnew_jobs_handler.cpp @@ -338,6 +338,7 @@ int PCBNEW_JOBS_HANDLER::JobExportPdf( JOB* aJob ) BOARD* brd = LoadBoard( aPdfJob->m_filename, true ); loadOverrideDrawingSheet( brd, aPdfJob->m_drawingSheet ); brd->GetProject()->ApplyTextVars( aJob->GetVarOverrides() ); + brd->SynchronizeProperties(); if( aPdfJob->m_outputFile.IsEmpty() ) {