From ce99fabe1396ed2956dc7ecb468760ef88f98765 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20Mr=C3=A1zek?= Date: Sat, 23 May 2015 16:07:47 +0200 Subject: GH-992 Add a transaction/locking mechanism to settings objects This can cut the FTB loading by ~66% - worth it, but not ideal. Real solution will have to be implemented later. --- logic/ftb/FTBPlugin.cpp | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'logic/ftb/FTBPlugin.cpp') diff --git a/logic/ftb/FTBPlugin.cpp b/logic/ftb/FTBPlugin.cpp index cbb13953..ffac46f7 100644 --- a/logic/ftb/FTBPlugin.cpp +++ b/logic/ftb/FTBPlugin.cpp @@ -155,21 +155,29 @@ InstancePtr loadInstance(SettingsObjectPtr globalSettings, QMapsettings()); inst->init(); + qDebug() << "Init " << record.instanceDir; inst->setGroupInitial("FTB"); + qDebug() << "A " << record.instanceDir; inst->setName(record.name); + qDebug() << "B " << record.instanceDir; inst->setIconKey(record.iconKey); + qDebug() << "C " << record.instanceDir; if (inst->intendedVersionId() != record.mcVersion) { inst->setIntendedVersionId(record.mcVersion); } + qDebug() << "D " << record.instanceDir; inst->setNotes(record.description); + qDebug() << "Post-Process " << record.instanceDir; if (!InstanceList::continueProcessInstance(inst, InstanceList::NoCreateError, record.instanceDir, groupMap)) { return nullptr; } - + qDebug() << "Final " << record.instanceDir; return inst; } @@ -217,6 +225,7 @@ InstancePtr createInstance(SettingsObjectPtr globalSettings, QMapsetIconKey(record.logo); inst->setIntendedVersionId(record.mcVersion); inst->setNotes(record.description); + qDebug() << "Post-Process " << record.instanceDir; if (!InstanceList::continueProcessInstance(inst, InstanceList::NoCreateError, record.instanceDir, groupMap)) { return nullptr; @@ -247,6 +256,7 @@ void FTBPlugin::loadInstances(SettingsObjectPtr globalSettings, QMapaddIcon(iconKey, iconKey, PathCombine(record.templateDir, record.logo), MMCIcon::Transient); auto settingsFilePath = PathCombine(record.instanceDir, "instance.cfg"); + qDebug() << "ICON get!"; if (QFileInfo(settingsFilePath).exists()) { -- cgit v1.2.3