summaryrefslogtreecommitdiffstats
path: root/logic
diff options
context:
space:
mode:
authorPetr Mrázek <peterix@gmail.com>2015-05-26 08:14:33 +0200
committerPetr Mrázek <peterix@gmail.com>2015-05-26 08:14:33 +0200
commitc1c23e47a74b585e7dce211d2416a4a80ba17f25 (patch)
treeef6a09a034f7fe2a8356a809434b76d54c8a5d06 /logic
parent8fb5d4add3cbbd5a4c1d4cd32ddab67fda458afa (diff)
downloadMultiMC-c1c23e47a74b585e7dce211d2416a4a80ba17f25.tar
MultiMC-c1c23e47a74b585e7dce211d2416a4a80ba17f25.tar.gz
MultiMC-c1c23e47a74b585e7dce211d2416a4a80ba17f25.tar.lz
MultiMC-c1c23e47a74b585e7dce211d2416a4a80ba17f25.tar.xz
MultiMC-c1c23e47a74b585e7dce211d2416a4a80ba17f25.zip
GH-1003 Fix settings dialog delays
Diffstat (limited to 'logic')
-rw-r--r--logic/ftb/FTBPlugin.cpp25
1 files changed, 13 insertions, 12 deletions
diff --git a/logic/ftb/FTBPlugin.cpp b/logic/ftb/FTBPlugin.cpp
index 0130b41e..aa2c3ca9 100644
--- a/logic/ftb/FTBPlugin.cpp
+++ b/logic/ftb/FTBPlugin.cpp
@@ -213,26 +213,27 @@ InstancePtr createInstance(SettingsObjectPtr globalSettings, QMap<QString, QStri
{
m_settings->set("InstanceType", "LegacyFTB");
inst.reset(new LegacyFTBInstance(globalSettings, m_settings, record.instanceDir));
- inst->setIntendedVersionId(mcVersion->descriptor());
}
else
{
m_settings->set("InstanceType", "OneSixFTB");
inst.reset(new OneSixFTBInstance(globalSettings, m_settings, record.instanceDir));
- inst->setIntendedVersionId(mcVersion->descriptor());
- inst->init();
}
- inst->setGroupInitial("FTB");
- inst->setName(record.name);
- inst->setIconKey(record.iconKey);
- inst->setIntendedVersionId(record.mcVersion);
- inst->setNotes(record.description);
- qDebug() << "Post-Process " << record.instanceDir;
- if (!InstanceList::continueProcessInstance(inst, InstanceList::NoCreateError, record.instanceDir, groupMap))
+ // initialize
{
- return nullptr;
+ SettingsObject::Lock lock(inst->settings());
+ inst->setIntendedVersionId(mcVersion->descriptor());
+ inst->init();
+ inst->setGroupInitial("FTB");
+ inst->setName(record.name);
+ inst->setIconKey(record.iconKey);
+ inst->setNotes(record.description);
+ qDebug() << "Post-Process " << record.instanceDir;
+ if (!InstanceList::continueProcessInstance(inst, InstanceList::NoCreateError, record.instanceDir, groupMap))
+ {
+ return nullptr;
+ }
}
-
return inst;
}