diff options
author | Petr Mrázek <peterix@gmail.com> | 2017-04-18 16:45:58 +0200 |
---|---|---|
committer | Petr Mrázek <peterix@gmail.com> | 2017-04-18 16:45:58 +0200 |
commit | 5565a2f85e8b7a4b0e4758b5b6f4d806b964cf94 (patch) | |
tree | eff9e090c9f2a7dd66feb04e08226f7e74017689 /api/logic/java/JavaInstallList.h | |
parent | c4c8e99681e14e5d0e82a13cb0631107dedf96ff (diff) | |
download | PrismLauncher-5565a2f85e8b7a4b0e4758b5b6f4d806b964cf94.tar.gz PrismLauncher-5565a2f85e8b7a4b0e4758b5b6f4d806b964cf94.tar.bz2 PrismLauncher-5565a2f85e8b7a4b0e4758b5b6f4d806b964cf94.zip |
NOISSUE fix crash because of early destruction of java list load task
Diffstat (limited to 'api/logic/java/JavaInstallList.h')
-rw-r--r-- | api/logic/java/JavaInstallList.h | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/api/logic/java/JavaInstallList.h b/api/logic/java/JavaInstallList.h index afc5ef43..934e588b 100644 --- a/api/logic/java/JavaInstallList.h +++ b/api/logic/java/JavaInstallList.h @@ -31,6 +31,12 @@ class JavaListLoadTask; class MULTIMC_LOGIC_EXPORT JavaInstallList : public BaseVersionList { Q_OBJECT + enum class Status + { + NotDone, + InProgress, + Done + }; public: explicit JavaInstallList(QObject *parent = 0); @@ -47,9 +53,13 @@ public slots: void updateListData(QList<BaseVersionPtr> versions) override; protected: - QList<BaseVersionPtr> m_vlist; + void load(); + shared_qobject_ptr<Task> getCurrentTask(); - bool m_loaded = false; +protected: + Status m_status = Status::NotDone; + shared_qobject_ptr<JavaListLoadTask> m_loadTask; + QList<BaseVersionPtr> m_vlist; }; class JavaListLoadTask : public Task |