Fix another case of Edge_Cuts & Margins needing to be treated as all-physical-layers.

Fixes https://gitlab.com/kicad/code/kicad/issues/11843
This commit is contained in:
Jeff Young 2022-07-10 20:31:56 -06:00
parent 19b4844102
commit 43b82aeffc
1 changed files with 5 additions and 2 deletions

View File

@ -133,6 +133,9 @@ void BOARD_COMMIT::dirtyIntersectingZones( BOARD_ITEM* item )
EDA_RECT bbox = item->GetBoundingBox(); EDA_RECT bbox = item->GetBoundingBox();
LSET layers = item->GetLayerSet(); LSET layers = item->GetLayerSet();
if( layers.test( Edge_Cuts ) || layers.test( Margin ) )
layers = LSET::PhysicalLayersMask();
for( ZONE* zone : board->Zones() ) for( ZONE* zone : board->Zones() )
{ {
if( zone->GetIsRuleArea() ) if( zone->GetIsRuleArea() )
@ -169,8 +172,8 @@ void BOARD_COMMIT::Push( const wxString& aMessage, int aCommitFlags )
return; return;
if( m_isBoardEditor if( m_isBoardEditor
&& !( aCommitFlags & ZONE_FILL_OP ) && !( aCommitFlags & ZONE_FILL_OP )
&& ( frame && frame->GetPcbNewSettings()->m_AutoRefillZones ) ) && ( frame && frame->GetPcbNewSettings()->m_AutoRefillZones ) )
{ {
autofillZones = true; autofillZones = true;