diff --git a/3d-viewer/dialogs/appearance_controls_3D.cpp b/3d-viewer/dialogs/appearance_controls_3D.cpp index a516ce2f80..f209e4aa1e 100644 --- a/3d-viewer/dialogs/appearance_controls_3D.cpp +++ b/3d-viewer/dialogs/appearance_controls_3D.cpp @@ -864,7 +864,8 @@ void APPEARANCE_CONTROLS_3D::onLayerPresetChanged( wxCommandEvent& aEvent ) if( cfg->m_CurrentPreset == name ) cfg->m_CurrentPreset = wxEmptyString; - m_presetMRU.Remove( name ); + if( m_presetMRU.Index( name ) >= 0 ) + m_presetMRU.Remove( name ); } resetSelection(); diff --git a/pcbnew/widgets/appearance_controls.cpp b/pcbnew/widgets/appearance_controls.cpp index 1534f5a539..ed6eae60e6 100644 --- a/pcbnew/widgets/appearance_controls.cpp +++ b/pcbnew/widgets/appearance_controls.cpp @@ -2802,7 +2802,9 @@ void APPEARANCE_CONTROLS::onLayerPresetChanged( wxCommandEvent& aEvent ) preset->flipBoard = m_cbFlipBoard->GetValue(); index = m_cbLayerPresets->FindString( name ); - m_presetMRU.Remove( name ); + + if( index != wxNOT_FOUND ) + m_presetMRU.Remove( name ); } m_currentPreset = preset;