summaryrefslogtreecommitdiffstats
path: root/src/testlib/qtestcase.cpp
diff options
context:
space:
mode:
authorThiago Macieira <thiago.macieira@intel.com>2022-05-02 18:27:11 -0700
committerThiago Macieira <thiago.macieira@intel.com>2022-05-20 12:01:34 -0700
commit65ff731b62c2fa9ebc175471c55d49747f991b68 (patch)
treeb3fd52706b45e9107ceca6307a4eed430734dca6 /src/testlib/qtestcase.cpp
parent3bd1aa09b62684cb7b715d5d5d5a6def20f27597 (diff)
FatalSignalHandler: use std::optional instead of QScopedPointer
We get stack space reserved instead of using the heap. Pick-to: 6.3 Change-Id: I5ff8e16fcdcb4ffd9ab6fffd16eb73fff0174150 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Diffstat (limited to 'src/testlib/qtestcase.cpp')
-rw-r--r--src/testlib/qtestcase.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/testlib/qtestcase.cpp b/src/testlib/qtestcase.cpp
index 8c40d111b8..b034ae9dd5 100644
--- a/src/testlib/qtestcase.cpp
+++ b/src/testlib/qtestcase.cpp
@@ -1935,6 +1935,8 @@ public:
}
private:
+ Q_DISABLE_COPY_MOVE(FatalSignalHandler)
+
# ifdef SA_SIGINFO
static void signal(int signum, siginfo_t * /* info */, void * /* ucontext */)
# else
@@ -2105,10 +2107,10 @@ int QTest::qRun()
} else
#endif
{
- QScopedPointer<FatalSignalHandler> handler;
+ std::optional<FatalSignalHandler> handler;
prepareStackTrace();
if (!noCrashHandler)
- handler.reset(new FatalSignalHandler);
+ handler.emplace();
TestMethods::MetaMethods commandLineMethods;
commandLineMethods.reserve(static_cast<size_t>(QTest::testFunctions.size()));