aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorflow <flowlnlnln@gmail.com>2022-07-31 19:56:14 -0300
committerflow <flowlnlnln@gmail.com>2022-09-20 18:36:09 -0300
commit4b0ceea8941826134c949b1c2fb80e05c174e5ec (patch)
tree9a5ab0527853fb1cbff18cf3de8d484fde00c930
parent8c0816c1669c6acedd798b4d0b49c7a567cdcf1a (diff)
downloadPrismLauncher-4b0ceea8941826134c949b1c2fb80e05c174e5ec.tar.gz
PrismLauncher-4b0ceea8941826134c949b1c2fb80e05c174e5ec.tar.bz2
PrismLauncher-4b0ceea8941826134c949b1c2fb80e05c174e5ec.zip
fix: correctly set managed pack fields in CF pack
Signed-off-by: flow <flowlnlnln@gmail.com>
-rw-r--r--launcher/modplatform/flame/FlameInstanceCreationTask.cpp9
-rw-r--r--launcher/modplatform/flame/FlameInstanceCreationTask.h6
2 files changed, 15 insertions, 0 deletions
diff --git a/launcher/modplatform/flame/FlameInstanceCreationTask.cpp b/launcher/modplatform/flame/FlameInstanceCreationTask.cpp
index 4d70e223..76ac11af 100644
--- a/launcher/modplatform/flame/FlameInstanceCreationTask.cpp
+++ b/launcher/modplatform/flame/FlameInstanceCreationTask.cpp
@@ -186,6 +186,8 @@ bool FlameCreationTask::updateInstance()
setOverride(true);
qDebug() << "Will override instance!";
+ m_instance = inst;
+
// We let it go through the createInstance() stage, just with a couple modifications for updating
return false;
}
@@ -319,6 +321,13 @@ bool FlameCreationTask::createInstance()
loop.exec();
+ if (m_instance) {
+ auto inst = m_instance.value();
+
+ inst->copyManagedPack(instance);
+ inst->setName(instance.name());
+ }
+
return getError().isEmpty();
}
diff --git a/launcher/modplatform/flame/FlameInstanceCreationTask.h b/launcher/modplatform/flame/FlameInstanceCreationTask.h
index 99822d93..ccb5f827 100644
--- a/launcher/modplatform/flame/FlameInstanceCreationTask.h
+++ b/launcher/modplatform/flame/FlameInstanceCreationTask.h
@@ -2,6 +2,10 @@
#include "InstanceCreationTask.h"
+#include <optional>
+
+#include "minecraft/MinecraftInstance.h"
+
#include "modplatform/flame/FileResolvingTask.h"
#include "net/NetJob.h"
@@ -35,4 +39,6 @@ class FlameCreationTask final : public InstanceCreationTask {
// Handle to allow aborting
NetJob* m_process_update_file_info_job = nullptr;
NetJob::Ptr m_files_job = nullptr;
+
+ std::optional<InstancePtr> m_instance;
};