diff --git a/src/widgets/krun.cpp b/src/widgets/krun.cpp --- a/src/widgets/krun.cpp +++ b/src/widgets/krun.cpp @@ -127,7 +127,8 @@ static qint64 runProcessRunner(KProcess *p, const QString &executable, const KStartupInfoId &id, QWidget *widget) { auto *processRunner = new KProcessRunner(p, executable, id); - QObject::connect(processRunner, &KProcessRunner::error, widget, [widget](const QString &errorString) { + QObject *receiver = widget ? static_cast(widget) : static_cast(qApp); + QObject::connect(processRunner, &KProcessRunner::error, receiver, [widget](const QString &errorString) { QEventLoopLocker locker; KMessageBox::sorry(widget, errorString); });