diff options
author | Jannis Voelker <jannis.voelker@basyskom.com> | 2024-01-30 13:46:20 +0100 |
---|---|---|
committer | Jannis Voelker <jannis.voelker@basyskom.com> | 2024-01-30 15:33:23 +0100 |
commit | 8f18ecaccd7b49272a19e643ffa9e7c018a1858e (patch) | |
tree | afc69417b110aa37c6e1229923cc1bc633a491ea | |
parent | fe3bfc5eeea7ed95e73837e0dbdc9f63f13d5c46 (diff) |
Fix race condition in tst_clientSetupInCpp
If the client is not deleted before the destructor
of the class registered for QML returns, a qDebug
call from inside the client causes a segfault.
Pick-to: 6.7 6.6
Change-Id: Idf26d0127103e9a30773bcbca3bddc4755b57cfa
Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
-rw-r--r-- | tests/auto/clientSetupInCpp/tst_clientSetupInCpp.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/tests/auto/clientSetupInCpp/tst_clientSetupInCpp.cpp b/tests/auto/clientSetupInCpp/tst_clientSetupInCpp.cpp index 56c03ae..1638660 100644 --- a/tests/auto/clientSetupInCpp/tst_clientSetupInCpp.cpp +++ b/tests/auto/clientSetupInCpp/tst_clientSetupInCpp.cpp @@ -30,6 +30,11 @@ public: MyClass (QObject* parent = nullptr) : QObject(parent) { } + ~MyClass() { + if (m_client) + delete m_client; + } + QOpcUaClient *connection() const { return m_client; } |