Disallow executing Dolphin as root on Linux

Basically a copy of commit kate/9adcebd3c2e476c8a32e9b455cc99f46b0e12a7e which was
written by Martin Grässlin.
This commit is contained in:
Emmanuel Pescosta 2017-02-19 02:32:48 +01:00
parent bea831da52
commit 0bdd8e0b05
No known key found for this signature in database
GPG key ID: 67C7A6C81D838246

View file

@ -35,8 +35,21 @@
#include <KLocalizedString>
#include <Kdelibs4ConfigMigrator>
#ifndef Q_OS_WIN
#include <unistd.h>
#endif
#include <iostream>
extern "C" Q_DECL_EXPORT int kdemain(int argc, char **argv)
{
#ifndef Q_OS_WIN
// Check whether we are running as root
if (getuid() == 0) {
std::cout << "Executing Dolphin as root is not possible." << std::endl;
return EXIT_FAILURE;
}
#endif
QApplication app(argc, argv);
app.setAttribute(Qt::AA_UseHighDpiPixmaps, true);
app.setWindowIcon(QIcon::fromTheme(QStringLiteral("system-file-manager"), app.windowIcon()));