Save layers regardless of view

We do not modify the underlying board when saving.  Previously only the
visible layers were saved.  This created a discrepancy between the board
that the user was editing and the board that was saved to disk.

Fixes: lp:1754049
* https://bugs.launchpad.net/kicad/+bug/1754049
This commit is contained in:
Seth Hillbrand 2018-03-23 09:31:11 -07:00
parent 6940f92469
commit fb882633b2
1 changed files with 1 additions and 7 deletions

View File

@ -1186,9 +1186,6 @@ void PCB_IO::formatLayers( LSET aLayerMask, int aNestLevel ) const
LSET cu_mask = cu_all;
if( m_board )
cu_mask &= m_board->GetEnabledLayers();
// output copper layers first, then non copper
if( ( aLayerMask & cu_mask ) == cu_mask )
@ -1240,9 +1237,6 @@ void PCB_IO::formatLayers( LSET aLayerMask, int aNestLevel ) const
// output any individual layers not handled in wildcard combos above
if( m_board )
aLayerMask &= m_board->GetEnabledLayers();
wxString layerName;
for( LAYER_NUM layer = 0; layer < PCB_LAYER_ID_COUNT; ++layer )
@ -1332,7 +1326,7 @@ void PCB_IO::format( D_PAD* aPad, int aNestLevel ) const
m_out->Print( 0, ")" );
}
formatLayers( aPad->GetLayerSet(), 0 );
formatLayers( aPad->GetLayerSet() );
// Output the radius ratio for rounded rect pads
if( aPad->GetShape() == PAD_SHAPE_ROUNDRECT )