summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorLostDragonist <lost.dragonist@gmail.com>2019-01-11 17:51:09 -0600
committerLostDragonist <lost.dragonist@gmail.com>2019-01-11 18:00:54 -0600
commitd24519501fdba4fb5418da3f99e2b36ccef07826 (patch)
tree86a694ffb353d9c892080e8e5baae07df6c7617f /src
parent64a242d9220868a5b564c32f75f191efb01ad18e (diff)
Delete the settings array before writing a new one
Diffstat (limited to 'src')
-rw-r--r--src/editexecutablesdialog.cpp1
-rw-r--r--src/modinfodialog.cpp1
-rw-r--r--src/modinforegular.cpp1
-rw-r--r--src/organizercore.cpp1
-rw-r--r--src/settings.cpp1
5 files changed, 5 insertions, 0 deletions
diff --git a/src/editexecutablesdialog.cpp b/src/editexecutablesdialog.cpp
index bea497ef..78e1accb 100644
--- a/src/editexecutablesdialog.cpp
+++ b/src/editexecutablesdialog.cpp
@@ -124,6 +124,7 @@ void EditExecutablesDialog::saveExecutable()
m_Profile->removeSetting("custom_overwrites", ui->titleEdit->text());
}
+ m_Profile->removeForcedLibraries(ui->titleEdit->text());
m_Profile->storeForcedLibraries(ui->titleEdit->text(), m_ForcedLibraries);
m_Profile->setForcedLibrariesEnabled(ui->titleEdit->text(), ui->forceLoadCheckBox->isChecked());
}
diff --git a/src/modinfodialog.cpp b/src/modinfodialog.cpp
index ed77f596..40fae0e4 100644
--- a/src/modinfodialog.cpp
+++ b/src/modinfodialog.cpp
@@ -562,6 +562,7 @@ void ModInfoDialog::openIniFile(const QString &fileName)
void ModInfoDialog::saveIniTweaks()
{
+ m_Settings->remove("INI Tweaks");
m_Settings->beginWriteArray("INI Tweaks");
int countEnabled = 0;
diff --git a/src/modinforegular.cpp b/src/modinforegular.cpp
index 45c3985b..185f0495 100644
--- a/src/modinforegular.cpp
+++ b/src/modinforegular.cpp
@@ -162,6 +162,7 @@ void ModInfoRegular::saveMeta()
metaFile.setValue("endorsed", m_EndorsedState);
}
+ metaFile.remove("installedFiles");
metaFile.beginWriteArray("installedFiles");
int idx = 0;
for (auto iter = m_InstalledFileIDs.begin(); iter != m_InstalledFileIDs.end(); ++iter) {
diff --git a/src/organizercore.cpp b/src/organizercore.cpp
index 4e399ac7..e72b9a50 100644
--- a/src/organizercore.cpp
+++ b/src/organizercore.cpp
@@ -907,6 +907,7 @@ MOBase::IModInterface *OrganizerCore::createMod(GuessedValue<QString> &name)
settingsFile.setValue("category", 0);
settingsFile.setValue("installationFile", "");
+ settingsFile.remove("installedFiles");
settingsFile.beginWriteArray("installedFiles", 0);
settingsFile.endArray();
}
diff --git a/src/settings.cpp b/src/settings.cpp
index 9267cccf..c4228f65 100644
--- a/src/settings.cpp
+++ b/src/settings.cpp
@@ -592,6 +592,7 @@ void Settings::addBlacklistPlugin(const QString &fileName)
void Settings::writePluginBlacklist()
{
+ m_Settings.remove("pluginBlacklist");
m_Settings.beginWriteArray("pluginBlacklist");
int idx = 0;
for (const QString &plugin : m_PluginBlacklist) {