aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/Ui/skinned/eqwidget.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/Ui/skinned/eqwidget.cpp')
-rw-r--r--src/plugins/Ui/skinned/eqwidget.cpp13
1 files changed, 9 insertions, 4 deletions
diff --git a/src/plugins/Ui/skinned/eqwidget.cpp b/src/plugins/Ui/skinned/eqwidget.cpp
index 2cd1efc7e..96b559889 100644
--- a/src/plugins/Ui/skinned/eqwidget.cpp
+++ b/src/plugins/Ui/skinned/eqwidget.cpp
@@ -321,12 +321,17 @@ void EqWidget::savePreset()
preset->setPreamp(m_preamp->value());
for (int i = 0; i<10; ++i)
preset->setGain(i, m_sliders.at (i)->value());
- for(EQPreset *p : qAsConst(m_presets)) //remove preset with same name
+ QList<EQPreset *>::iterator it = m_presets.begin();
+ while(it != m_presets.end()) //remove preset with same name
{
- if (p->text() == text)
+ if ((*it)->text() == text)
{
- m_presets.removeAll(p);
- delete p;
+ delete (*it);
+ it = m_presets.erase(it);
+ }
+ else
+ {
+ ++it;
}
}
m_presets.append(preset);