From 5ffcd28ca4412007cd53ced61f69145bf68b771e Mon Sep 17 00:00:00 2001 From: nmzik Date: Thu, 3 Sep 2026 11:32:32 +0200 Subject: [PATCH] launcher: fix rare use after free bug --- src/launcher/include/configurationItem.h | 3 ++- src/launcher/src/mainDialog.cpp | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/launcher/include/configurationItem.h b/src/launcher/include/configurationItem.h index 219c56e25..b87eef007 100644 --- a/src/launcher/include/configurationItem.h +++ b/src/launcher/include/configurationItem.h @@ -3,6 +3,7 @@ #include "common.h" +#include #include #include @@ -14,7 +15,7 @@ class QTreeWidget; class QWidget; class Configuration; -class ConfigurationItem: public QTreeWidgetItem { +class ConfigurationItem: public QObject, public QTreeWidgetItem { public: explicit ConfigurationItem(std::unique_ptr info, QTreeWidget* parent); ~ConfigurationItem() override; diff --git a/src/launcher/src/mainDialog.cpp b/src/launcher/src/mainDialog.cpp index a9808a284..5bca29a45 100644 --- a/src/launcher/src/mainDialog.cpp +++ b/src/launcher/src/mainDialog.cpp @@ -15,6 +15,7 @@ #include #include #include +#include #include #include #include @@ -95,7 +96,7 @@ private: /*DetachableProcess*/ QProcess m_process; - ConfigurationItem* m_running_item = nullptr; + QPointer m_running_item; }; QByteArray MainDialogPrivate::g_last_geometry;