diff --git a/pcbnew/pcbnew_jobs_handler.cpp b/pcbnew/pcbnew_jobs_handler.cpp index e9b4118d9c..9fec6946b0 100644 --- a/pcbnew/pcbnew_jobs_handler.cpp +++ b/pcbnew/pcbnew_jobs_handler.cpp @@ -463,7 +463,10 @@ int PCBNEW_JOBS_HANDLER::JobExportGerbers( JOB* aJob ) aGerberJob->m_layersIncludeOnAll = plotOnAllLayersSelection; } - for( LSEQ seq = LSET( aGerberJob->m_printMaskLayer ).UIOrder(); seq; ++seq ) + // Ensure layers to plot are restricted to enabled layers of the board to plot + LSET layersToPlot = LSET( { aGerberJob->m_printMaskLayer } ) & brd->GetEnabledLayers(); + + for( PCB_LAYER_ID layer : layersToPlot.UIOrder() ) { LSEQ plotSequence;