diff options
author | Ken Moore <ken@ixsystems.com> | 2016-10-05 07:12:23 -0400 |
---|---|---|
committer | Ken Moore <ken@ixsystems.com> | 2016-10-05 07:12:23 -0400 |
commit | e87ef3b22057ab391dc051c20667ba5d69888723 (patch) | |
tree | bd86fe015338c5aa2971252ff26f5749f3807b74 /src-qt5/core/lumina-session/session.cpp | |
parent | Try to fix a scaling issue with desktop backgrounds on 4K systems. (diff) | |
download | lumina-e87ef3b22057ab391dc051c20667ba5d69888723.tar.gz lumina-e87ef3b22057ab391dc051c20667ba5d69888723.tar.bz2 lumina-e87ef3b22057ab391dc051c20667ba5d69888723.zip |
Add a couple more fixes/bypasses to the start-lumina-desktop routine.
1) Make sure when re-calling with xinit, that the full path of the binary is used
2) When starting the desktop, try to detect/launch a temporary dbus session so that Qt can function properly without crashing.
Diffstat (limited to 'src-qt5/core/lumina-session/session.cpp')
-rw-r--r-- | src-qt5/core/lumina-session/session.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src-qt5/core/lumina-session/session.cpp b/src-qt5/core/lumina-session/session.cpp index 937f05d0..20c55ec4 100644 --- a/src-qt5/core/lumina-session/session.cpp +++ b/src-qt5/core/lumina-session/session.cpp @@ -11,6 +11,8 @@ #include <QProcessEnvironment> #include <QDebug> #include <QSettings> +#include <QDir> + #include <LuminaUtils.h> #include <LuminaOS.h> @@ -56,6 +58,13 @@ void LSession::startProcess(QString ID, QString command, QStringList watchfiles) proc->setProcessChannelMode(QProcess::MergedChannels); proc->setProcessEnvironment( QProcessEnvironment::systemEnvironment() ); proc->setStandardOutputFile(logfile); + if(ID=="runtime"){ + //Bypass for a hidden dbus requirement for Qt itself (Qt 5.5.1) + QDir tmp = QDir::temp(); + if( tmp.entryList(QStringList() << "dbus-*").isEmpty() && LUtils::isValidBinary("dbus-launch")){ + command.prepend("dbus-launch --exit-with-session "); + } + } proc->start(command, QIODevice::ReadOnly); connect(proc, SIGNAL(finished(int, QProcess::ExitStatus)), this, SLOT(procFinished()) ); PROCS << proc; |