diff options
| author | xiphon <xiphon@protonmail.com> | 2020-02-04 23:27:48 +0000 |
|---|---|---|
| committer | xiphon <xiphon@protonmail.com> | 2020-02-04 23:27:48 +0000 |
| commit | 0629f0615636458b97a0b526014b129b143e99dc (patch) | |
| tree | f6cea7b3263bc0db6b32f80a5ae66ded3b36b66e /src/daemon | |
| parent | 6de8547047d5801181b61cbbc707a44a4ee5e77b (diff) | |
| download | monzero-gui-0629f0615636458b97a0b526014b129b143e99dc.tar.gz monzero-gui-0629f0615636458b97a0b526014b129b143e99dc.tar.xz monzero-gui-0629f0615636458b97a0b526014b129b143e99dc.zip | |
DaemonManager: check monerod binary, error details on start failure
Diffstat (limited to 'src/daemon')
| -rw-r--r-- | src/daemon/DaemonManager.cpp | 10 | ||||
| -rw-r--r-- | src/daemon/DaemonManager.h | 2 |
2 files changed, 9 insertions, 3 deletions
diff --git a/src/daemon/DaemonManager.cpp b/src/daemon/DaemonManager.cpp index 74da6351..8d995458 100644 --- a/src/daemon/DaemonManager.cpp +++ b/src/daemon/DaemonManager.cpp @@ -63,6 +63,12 @@ DaemonManager *DaemonManager::instance(const QStringList *args) bool DaemonManager::start(const QString &flags, NetworkType::Type nettype, const QString &dataDir, const QString &bootstrapNodeAddress, bool noSync /* = false*/) { + if (!QFileInfo(m_monerod).isFile()) + { + emit daemonStartFailure("\"" + QDir::toNativeSeparators(m_monerod) + "\" " + tr("executable is missing")); + return false; + } + // prepare command line arguments and pass to monerod QStringList arguments; @@ -130,7 +136,7 @@ bool DaemonManager::start(const QString &flags, NetworkType::Type nettype, const if (!started) { qDebug() << "Daemon start error: " + m_daemon->errorString(); - emit daemonStartFailure(); + emit daemonStartFailure(m_daemon->errorString()); return false; } @@ -140,7 +146,7 @@ bool DaemonManager::start(const QString &flags, NetworkType::Type nettype, const emit daemonStarted(); m_noSync = noSync; } else { - emit daemonStartFailure(); + emit daemonStartFailure(tr("Timed out, local node is not responding after %1 seconds").arg(DAEMON_START_TIMEOUT_SECONDS)); } }); diff --git a/src/daemon/DaemonManager.h b/src/daemon/DaemonManager.h index a03d3d9b..4bbd3133 100644 --- a/src/daemon/DaemonManager.h +++ b/src/daemon/DaemonManager.h @@ -64,7 +64,7 @@ private: signals: void daemonStarted() const; void daemonStopped() const; - void daemonStartFailure() const; + void daemonStartFailure(const QString &error) const; void daemonConsoleUpdated(QString message) const; public slots: |
