From 5f6d7003c4be42477c92b79b7eb73272c31b1585 Mon Sep 17 00:00:00 2001
From: Thiago Macieira <thiago.macieira@intel.com>
Date: Thu, 2 Oct 2014 11:49:55 -0700
Subject: [PATCH] Don't always chmod the XDG_RUNTIME_DIR
Since the current user is the owner of the dir, we'll get 0x7700 as
permissions, not just 0x700. With the wrong check, we were always doing
an unnecessary chmod.
Task-number: QTBUG-41735
Change-Id: Ib1fc258fef4bf526baa9c71201f9b78d36f5454f
---
src/corelib/io/qstandardpaths_unix.cpp | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
|
|
|
138 | 138 | return QString(); |
139 | 139 | } |
140 | 140 | // "and he MUST be the only one having read and write access to it. Its Unix access mode MUST be 0700." |
| 141 | // since the current user is the owner, set both xxxUser and xxxOwner |
141 | 142 | QFile file(xdgRuntimeDir); |
142 | | const QFile::Permissions wantedPerms = QFile::ReadUser | QFile::WriteUser | QFile::ExeUser; |
| 143 | const QFile::Permissions wantedPerms = QFile::ReadUser | QFile::WriteUser | QFile::ExeUser |
| 144 | | QFile::ReadOwner | QFile::WriteOwner | QFile::ExeOwner; |
143 | 145 | if (file.permissions() != wantedPerms && !file.setPermissions(wantedPerms)) { |
144 | 146 | qWarning("QStandardPaths: wrong permissions on runtime directory %s", qPrintable(xdgRuntimeDir)); |
145 | 147 | return QString(); |