summaryrefslogtreecommitdiffstats
path: root/src/testlib/qtestcrashhandler.cpp
diff options
context:
space:
mode:
authorTor Arne Vestbø <tor.arne.vestbo@qt.io>2025-01-07 14:19:21 +0100
committerTor Arne Vestbø <tor.arne.vestbo@qt.io>2025-01-08 15:46:37 +0100
commit50d5914f28b535790f8eca6210adad24fe76940b (patch)
tree6ab162419b5086a73494ef973e27745a31efc5f2 /src/testlib/qtestcrashhandler.cpp
parent0ab44505c88c881499a245e27c198fa6c2fb70de (diff)
macOS: Completely disable lldb backtraces in QtTestLib on Apple Silicon
They result in lldb hanging, which was previously only a case when SIP was enabled, but can now be reproduced on macOS 15 even with SIP disabled. https://github.com/llvm/llvm-project/issues/53254 Pick-to: 6.9 6.8 Change-Id: Ifa09f8cf22522b5a1028db1f250ebe9e1543cf9d Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Diffstat (limited to 'src/testlib/qtestcrashhandler.cpp')
-rw-r--r--src/testlib/qtestcrashhandler.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/testlib/qtestcrashhandler.cpp b/src/testlib/qtestcrashhandler.cpp
index 2a62044b14e..bc4e1629dd9 100644
--- a/src/testlib/qtestcrashhandler.cpp
+++ b/src/testlib/qtestcrashhandler.cpp
@@ -258,10 +258,16 @@ void prepareStackTrace()
return;
#if defined(Q_OS_MACOS)
+ // Try to handle https://github.com/llvm/llvm-project/issues/53254,
+ // where LLDB will hang and fail to provide a valid stack trace.
+# if defined(Q_PROCESSOR_ARM)
+ return;
+ #else
#define CSR_ALLOW_UNRESTRICTED_FS (1 << 1)
std::optional<uint32_t> sipConfiguration = qt_mac_sipConfiguration();
if (!sipConfiguration || !(*sipConfiguration & CSR_ALLOW_UNRESTRICTED_FS))
- return; // LLDB will fail to provide a valid stack trace
+ return;
+# endif
#endif
#ifdef Q_OS_UNIX