diff options
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/haskell/haskellmanager.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/plugins/haskell/haskellmanager.cpp b/plugins/haskell/haskellmanager.cpp index 2604341..dd6a371 100644 --- a/plugins/haskell/haskellmanager.cpp +++ b/plugins/haskell/haskellmanager.cpp @@ -111,11 +111,13 @@ void HaskellManager::openGhci(const FilePath &haskellFile) p->setTerminalMode(TerminalMode::On); p->setCommand({stackExecutable(), args}); p->setWorkingDirectory(haskellFile.absolutePath()); - connect(p, &QtcProcess::errorOccurred, p, [p] { - Core::MessageManager::writeDisrupting(tr("Failed to run GHCi: \"%1\".").arg(p->errorString())); + connect(p, &QtcProcess::done, p, [p] { + if (p->result() != ProcessResult::FinishedWithSuccess) { + Core::MessageManager::writeDisrupting( + tr("Failed to run GHCi: \"%1\".").arg(p->errorString())); + } p->deleteLater(); }); - connect(p, &QtcProcess::finished, p, &QObject::deleteLater); p->start(); } |