Add return code

This commit is contained in:
Weixuan XIAO 2019-11-16 13:44:52 +01:00 committed by Nicolas Fella
parent a8f080968c
commit be9260fcc2
3 changed files with 17 additions and 7 deletions

View file

@ -41,9 +41,11 @@ void IndicatorHelper::postInit() {}
void IndicatorHelper::iconPathHook() {} void IndicatorHelper::iconPathHook() {}
void IndicatorHelper::daemonHook(QProcess &kdeconnectd) int IndicatorHelper::daemonHook(QProcess &kdeconnectd)
{ {
Q_UNUSED(kdeconnectd); Q_UNUSED(kdeconnectd);
return 0;
} }
#ifdef QSYSTRAY #ifdef QSYSTRAY
@ -80,7 +82,7 @@ void MacOSIndicatorHelper::iconPathHook()
} }
} }
void MacOSIndicatorHelper::daemonHook(QProcess &kdeconnectd) int MacOSIndicatorHelper::daemonHook(QProcess &kdeconnectd)
{ {
// Unset launchctl env, avoid block // Unset launchctl env, avoid block
@ -97,6 +99,7 @@ void MacOSIndicatorHelper::daemonHook(QProcess &kdeconnectd)
i18n("Cannot find kdeconnectd"), i18n("Cannot find kdeconnectd"),
QMessageBox::Abort, QMessageBox::Abort,
QMessageBox::Abort); QMessageBox::Abort);
return -1;
} }
// Wait for dbus daemon env // Wait for dbus daemon env
@ -125,6 +128,7 @@ void MacOSIndicatorHelper::daemonHook(QProcess &kdeconnectd)
"KDE Connect will quit"), "KDE Connect will quit"),
QMessageBox::Abort, QMessageBox::Abort,
QMessageBox::Abort); QMessageBox::Abort);
return -2;
} else { } else {
QThread::sleep(3); // Retry after 3s QThread::sleep(3); // Retry after 3s
retry++; retry++;
@ -132,6 +136,8 @@ void MacOSIndicatorHelper::daemonHook(QProcess &kdeconnectd)
} while(true); } while(true);
m_splashScreen->showMessage(i18n("Loading modules") + QStringLiteral("\n"), Qt::AlignHCenter | Qt::AlignBottom, Qt::white); m_splashScreen->showMessage(i18n("Loading modules") + QStringLiteral("\n"), Qt::AlignHCenter | Qt::AlignBottom, Qt::white);
return 0;
} }
#ifdef QSYSTRAY #ifdef QSYSTRAY
@ -155,9 +161,10 @@ void MacOSIndicatorHelper::systrayIconHook(KStatusNotifierItem &systray)
WindowsIndicatorHelper::WindowsIndicatorHelper() {} WindowsIndicatorHelper::WindowsIndicatorHelper() {}
WindowsIndicatorHelper::~WindowsIndicatorHelper() {} WindowsIndicatorHelper::~WindowsIndicatorHelper() {}
void WindowsIndicatorHelper::daemonHook(QProcess &kdeconnectd) int WindowsIndicatorHelper::daemonHook(QProcess &kdeconnectd)
{ {
kdeconnectd.start(QStringLiteral("kdeconnectd.exe")); kdeconnectd.start(QStringLiteral("kdeconnectd.exe"));
return 0;
} }
#ifdef QSYSTRAY #ifdef QSYSTRAY

View file

@ -38,7 +38,7 @@ public:
virtual void iconPathHook(); virtual void iconPathHook();
virtual void daemonHook(QProcess &kdeconnectd); virtual int daemonHook(QProcess &kdeconnectd);
#ifdef QSYSTRAY #ifdef QSYSTRAY
virtual void systrayIconHook(QSystemTrayIcon &systray); virtual void systrayIconHook(QSystemTrayIcon &systray);
@ -56,7 +56,7 @@ public:
void iconPathHook(); void iconPathHook();
void daemonHook(QProcess &kdeconnectd); int daemonHook(QProcess &kdeconnectd);
#ifdef QSYSTRAY #ifdef QSYSTRAY
void systrayIconHook(QSystemTrayIcon &systray); void systrayIconHook(QSystemTrayIcon &systray);
@ -74,7 +74,7 @@ public:
WindowsIndicatorHelper(); WindowsIndicatorHelper();
~WindowsIndicatorHelper(); ~WindowsIndicatorHelper();
void daemonHook(QProcess &kdeconnectd); int daemonHook(QProcess &kdeconnectd);
#ifdef QSYSTRAY #ifdef QSYSTRAY
void systrayIconHook(QSystemTrayIcon &systray); void systrayIconHook(QSystemTrayIcon &systray);

View file

@ -66,7 +66,10 @@ int main(int argc, char** argv)
// Run Daemon initilization step // Run Daemon initilization step
QProcess kdeconnectd; QProcess kdeconnectd;
helper->daemonHook(kdeconnectd); if (helper->daemonHook(kdeconnectd)) {
delete helper;
return -1;
}
KDBusService dbusService(KDBusService::Unique); KDBusService dbusService(KDBusService::Unique);