mirror of
https://github.com/PrismLauncher/PrismLauncher.git
synced 2026-06-29 01:54:20 +03:00
refactor(instance creation): use RAII lock to suspend instance settings saving
Signed-off-by: Octol1ttle <l1ttleofficial@outlook.com>
This commit is contained in:
parent
3937819305
commit
c24fd2f570
4 changed files with 17 additions and 25 deletions
|
|
@ -50,10 +50,11 @@ void PackInstallTask::copySettings()
|
|||
{
|
||||
setStatus(tr("Copying settings..."));
|
||||
progress(2, 2);
|
||||
|
||||
QString instanceConfigPath = FS::PathCombine(m_stagingPath, "instance.cfg");
|
||||
auto instanceSettings = std::make_unique<INISettingsObject>(instanceConfigPath);
|
||||
instanceSettings->suspendSave();
|
||||
MinecraftInstance instance(m_globalSettings, std::move(instanceSettings), m_stagingPath);
|
||||
MinecraftInstance instance(m_globalSettings, std::make_unique<INISettingsObject>(instanceConfigPath), m_stagingPath);
|
||||
SettingsObject::Lock lock(instance.settings());
|
||||
|
||||
instance.settings()->set("InstanceType", "OneSix");
|
||||
instance.settings()->set("totalTimePlayed", m_pack.totalPlayTime / 1000);
|
||||
|
||||
|
|
@ -108,7 +109,6 @@ void PackInstallTask::copySettings()
|
|||
if (m_instIcon == "default")
|
||||
m_instIcon = "ftb_logo";
|
||||
instance.setIconKey(m_instIcon);
|
||||
instance.settings()->resumeSave();
|
||||
|
||||
emitSucceeded();
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue