summaryrefslogtreecommitdiffstats
path: root/src/gui
diff options
context:
space:
mode:
authorKonstantin Ritt <ritt.ks@gmail.com>2015-04-07 16:46:40 +0400
committerKonstantin Ritt <ritt.ks@gmail.com>2015-06-25 16:53:57 +0000
commit9901bfe914ab58655f0cc95ddea08d2d171af459 (patch)
treed357162b02bfe365b68c46ca2cd843c6a6c79b3a /src/gui
parenta79dd87f3f0a46cdabe1683b7e2411071c627ba2 (diff)
Simplify permission flag handling a bit
Change-Id: I753f7a398c39e7300821658f27e4813c591eebc3 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Diffstat (limited to 'src/gui')
-rw-r--r--src/gui/text/qzip.cpp24
1 files changed, 6 insertions, 18 deletions
diff --git a/src/gui/text/qzip.cpp b/src/gui/text/qzip.cpp
index edd3447357..25e4db0969 100644
--- a/src/gui/text/qzip.cpp
+++ b/src/gui/text/qzip.cpp
@@ -162,17 +162,11 @@ static void writeMSDosDate(uchar *dest, const QDateTime& dt)
static quint32 permissionsToMode(QFile::Permissions perms)
{
quint32 mode = 0;
- if (perms & QFile::ReadOwner)
+ if (perms & (QFile::ReadOwner | QFile::ReadUser))
mode |= S_IRUSR;
- if (perms & QFile::WriteOwner)
+ if (perms & (QFile::WriteOwner | QFile::WriteUser))
mode |= S_IWUSR;
- if (perms & QFile::ExeOwner)
- mode |= S_IXUSR;
- if (perms & QFile::ReadUser)
- mode |= S_IRUSR;
- if (perms & QFile::WriteUser)
- mode |= S_IWUSR;
- if (perms & QFile::ExeUser)
+ if (perms & (QFile::ExeOwner | QFile::ExeUser))
mode |= S_IXUSR;
if (perms & QFile::ReadGroup)
mode |= S_IRGRP;
@@ -257,17 +251,11 @@ static QFile::Permissions modeToPermissions(quint32 mode)
{
QFile::Permissions ret;
if (mode & S_IRUSR)
- ret |= QFile::ReadOwner;
- if (mode & S_IWUSR)
- ret |= QFile::WriteOwner;
- if (mode & S_IXUSR)
- ret |= QFile::ExeOwner;
- if (mode & S_IRUSR)
- ret |= QFile::ReadUser;
+ ret |= QFile::ReadOwner | QFile::ReadUser;
if (mode & S_IWUSR)
- ret |= QFile::WriteUser;
+ ret |= QFile::WriteOwner | QFile::WriteUser;
if (mode & S_IXUSR)
- ret |= QFile::ExeUser;
+ ret |= QFile::ExeOwner | QFile::ExeUser;
if (mode & S_IRGRP)
ret |= QFile::ReadGroup;
if (mode & S_IWGRP)