aboutsummaryrefslogtreecommitdiffstats
path: root/src/tools
diff options
context:
space:
mode:
authorNikolai Kosjar <nikolai.kosjar@qt.io>2019-07-04 15:12:55 +0200
committerNikolai Kosjar <nikolai.kosjar@qt.io>2019-07-05 06:13:40 +0000
commit8d84e2f2e163bceec8870893d7de55d14174f333 (patch)
treede36683eb536e04600b049a19ed9c4703cca7c53 /src/tools
parent29a5ea808258b4deeb4439c0847c4bd9fcd90c60 (diff)
CrashHandler: Allow enabling per executable
...by specifying the executable names in QTC_USE_CRASH_HANDLER. Examples: # enable for all supported executables QTC_USE_CRASH_HANDLER=1 QTC_USE_CRASH_HANDLER=yes QTC_USE_CRASH_HANDLER=all # enable for specific executables QTC_USE_CRASH_HANDLER=qtcreator,clangbackend Change-Id: Ie6f1ad001cea077b8b90b89356f597a4c11378b9 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Diffstat (limited to 'src/tools')
-rw-r--r--src/tools/qtcreatorcrashhandler/crashhandlersetup.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/tools/qtcreatorcrashhandler/crashhandlersetup.cpp b/src/tools/qtcreatorcrashhandler/crashhandlersetup.cpp
index 6f1baff4c7..fd24e6b543 100644
--- a/src/tools/qtcreatorcrashhandler/crashhandlersetup.cpp
+++ b/src/tools/qtcreatorcrashhandler/crashhandlersetup.cpp
@@ -34,6 +34,7 @@
#ifdef BUILD_CRASH_HANDLER
#include <QApplication>
+#include <QFileInfo>
#include <QString>
#include <stdlib.h>
@@ -95,8 +96,14 @@ CrashHandlerSetup::CrashHandlerSetup(const QString &appName,
const QString &executableDirPath)
{
#ifdef BUILD_CRASH_HANDLER
- if (qEnvironmentVariableIsEmpty("QTC_USE_CRASH_HANDLER"))
+ const QString value = qEnvironmentVariable("QTC_USE_CRASH_HANDLER");
+ if (value.trimmed().isEmpty())
return;
+ if (!QStringList{"1", "all", "yes"}.contains(value)) {
+ const QString binaryName = QFileInfo(QCoreApplication::applicationFilePath()).fileName();
+ if (!value.split(",", QString::SkipEmptyParts).contains(binaryName))
+ return;
+ }
appNameC = qstrdup(qPrintable(appName));