From 1403fad04ea26122cddd07d2a13192160929b43d Mon Sep 17 00:00:00 2001 From: Atlante45 Date: Tue, 14 Jun 2016 16:26:39 -0700 Subject: [PATCH] Add cmd line opt to disable settings reset popup --- interface/src/Application.cpp | 5 ++++- interface/src/CrashHandler.cpp | 6 +++++- interface/src/CrashHandler.h | 2 +- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/interface/src/Application.cpp b/interface/src/Application.cpp index 60c9de1223..8a38222abb 100644 --- a/interface/src/Application.cpp +++ b/interface/src/Application.cpp @@ -389,7 +389,10 @@ bool setupEssentials(int& argc, char** argv) { Setting::preInit(); - bool previousSessionCrashed = CrashHandler::checkForResetSettings(); + + static const auto SUPPRESS_SETTINGS_RESET = "--suppress-settings-reset"; + bool suppressPrompt = cmdOptionExists(argc, const_cast(argv), SUPPRESS_SETTINGS_RESET); + bool previousSessionCrashed = CrashHandler::checkForResetSettings(suppressPrompt); CrashHandler::writeRunningMarkerFiler(); qAddPostRoutine(CrashHandler::deleteRunningMarkerFile); diff --git a/interface/src/CrashHandler.cpp b/interface/src/CrashHandler.cpp index 8de6766c7a..3c5f03bef3 100644 --- a/interface/src/CrashHandler.cpp +++ b/interface/src/CrashHandler.cpp @@ -27,7 +27,7 @@ static const QString RUNNING_MARKER_FILENAME = "Interface.running"; -bool CrashHandler::checkForResetSettings() { +bool CrashHandler::checkForResetSettings(bool suppressPrompt) { QSettings::setDefaultFormat(QSettings::IniFormat); QSettings settings; settings.beginGroup("Developer"); @@ -42,6 +42,10 @@ bool CrashHandler::checkForResetSettings() { QFile runningMarkerFile(runningMarkerFilePath()); bool wasLikelyCrash = runningMarkerFile.exists(); + if (suppressPrompt) { + return wasLikelyCrash; + } + if (wasLikelyCrash || askToResetSettings) { if (displaySettingsResetOnCrash || askToResetSettings) { Action action = promptUserForAction(wasLikelyCrash); diff --git a/interface/src/CrashHandler.h b/interface/src/CrashHandler.h index 566b780d61..a65fed677d 100644 --- a/interface/src/CrashHandler.h +++ b/interface/src/CrashHandler.h @@ -17,7 +17,7 @@ class CrashHandler { public: - static bool checkForResetSettings(); + static bool checkForResetSettings(bool suppressPrompt = false); static void writeRunningMarkerFiler(); static void deleteRunningMarkerFile();