diff options
Diffstat (limited to 'tests/auto/testlib/selftests/crashes/tst_crashes.cpp')
-rw-r--r-- | tests/auto/testlib/selftests/crashes/tst_crashes.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/tests/auto/testlib/selftests/crashes/tst_crashes.cpp b/tests/auto/testlib/selftests/crashes/tst_crashes.cpp index abac42c723..38ed27d331 100644 --- a/tests/auto/testlib/selftests/crashes/tst_crashes.cpp +++ b/tests/auto/testlib/selftests/crashes/tst_crashes.cpp @@ -7,6 +7,8 @@ #ifdef Q_OS_WIN #include <qt_windows.h> +#else +#include <sys/resource.h> #endif class tst_Crashes: public QObject @@ -22,6 +24,12 @@ void tst_Crashes::crash() #if defined(Q_OS_WIN) //we avoid the error dialogbox to appear on windows SetErrorMode( SEM_NOGPFAULTERRORBOX | SEM_FAILCRITICALERRORS | SEM_NOOPENFILEERRORBOX); +#elif defined(RLIMIT_CORE) + // Unix: set our core dump limit to zero to request no dialogs. + if (struct rlimit rlim; getrlimit(RLIMIT_CORE, &rlim) == 0) { + rlim.rlim_cur = 0; + setrlimit(RLIMIT_CORE, &rlim); + } #endif /* We deliberately dereference an invalid but non-zero address; |