summaryrefslogtreecommitdiff
path: root/src/organizercore.cpp
diff options
context:
space:
mode:
authorLostDragonist <lost.dragonist@gmail.com>2018-12-08 11:15:16 -0600
committerLostDragonist <lost.dragonist@gmail.com>2018-12-08 11:15:16 -0600
commit93763a93640754f468d4a5d1aeaf5ad4effa6d56 (patch)
treea28d1393a514b47e242e3814d5fb646ac9da1039 /src/organizercore.cpp
parenta94977988bb587a290ae8c448baf742ed1eee79f (diff)
Add workaround setting to prevent the GUI from locking when running an executable
Diffstat (limited to 'src/organizercore.cpp')
-rw-r--r--src/organizercore.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/organizercore.cpp b/src/organizercore.cpp
index 4dbe7c86..1a5a9484 100644
--- a/src/organizercore.cpp
+++ b/src/organizercore.cpp
@@ -1223,7 +1223,7 @@ HANDLE OrganizerCore::spawnBinaryDirect(const QFileInfo &binary,
LPDWORD exitCode)
{
HANDLE processHandle = spawnBinaryProcess(binary, arguments, profileName, currentDirectory, steamAppID, customOverwrite);
- if (processHandle != INVALID_HANDLE_VALUE) {
+ if (Settings::instance().lockGUI() && processHandle != INVALID_HANDLE_VALUE) {
std::unique_ptr<LockedDialog> dlg;
ILockedWaitingForProcess* uilock = nullptr;
@@ -1485,6 +1485,9 @@ HANDLE OrganizerCore::startApplication(const QString &executable,
bool OrganizerCore::waitForApplication(HANDLE handle, LPDWORD exitCode)
{
+ if (!Settings::instance().lockGUI())
+ return true;
+
ILockedWaitingForProcess* uilock = nullptr;
if (m_UserInterface != nullptr) {
uilock = m_UserInterface->lock();