diff options
author | Edward Welbourne <edward.welbourne@qt.io> | 2018-07-26 15:15:55 +0200 |
---|---|---|
committer | Edward Welbourne <edward.welbourne@qt.io> | 2018-07-30 15:05:16 +0000 |
commit | ed79462d997324d7adfeef21d1ffe386f8603967 (patch) | |
tree | f782e4d12578caa484be67ac3adcd47344decee2 /src/corelib | |
parent | a76a0afc1a23a54334070b08f8a4af5d1cc6676d (diff) |
QFSFileEngine::filename(): convert if/else-if chain to a switch
Makes clear that this is what it is; and ensures we'll get compiler
warnings if someone adds a new entry to the FileName enum without code
to handle it here.
Change-Id: I36e383066728cefcc75e0a760e36222cebd1dff0
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'src/corelib')
-rw-r--r-- | src/corelib/io/qfsfileengine_unix.cpp | 29 |
1 files changed, 16 insertions, 13 deletions
diff --git a/src/corelib/io/qfsfileengine_unix.cpp b/src/corelib/io/qfsfileengine_unix.cpp index b82415cb26..bf648cdfe0 100644 --- a/src/corelib/io/qfsfileengine_unix.cpp +++ b/src/corelib/io/qfsfileengine_unix.cpp @@ -530,29 +530,32 @@ QByteArray QFSFileEngine::id() const QString QFSFileEngine::fileName(FileName file) const { Q_D(const QFSFileEngine); - if (file == BundleName) { + switch (file) { + case BundleName: return QFileSystemEngine::bundleName(d->fileEntry); - } else if (file == BaseName) { + case BaseName: return d->fileEntry.fileName(); - } else if (file == PathName) { + case PathName: return d->fileEntry.path(); - } else if (file == AbsoluteName || file == AbsolutePathName) { + case AbsoluteName: + case AbsolutePathName: { QFileSystemEntry entry(QFileSystemEngine::absoluteName(d->fileEntry)); - if (file == AbsolutePathName) { - return entry.path(); - } - return entry.filePath(); - } else if (file == CanonicalName || file == CanonicalPathName) { + return file == AbsolutePathName ? entry.path() : entry.filePath(); + } + case CanonicalName: + case CanonicalPathName: { QFileSystemEntry entry(QFileSystemEngine::canonicalName(d->fileEntry, d->metaData)); - if (file == CanonicalPathName) - return entry.path(); - return entry.filePath(); - } else if (file == LinkName) { + return file == CanonicalPathName ? entry.path() : entry.filePath(); + } + case LinkName: if (d->isSymlink()) { QFileSystemEntry entry = QFileSystemEngine::getLinkTarget(d->fileEntry, d->metaData); return entry.filePath(); } return QString(); + case DefaultName: + case NFileNames: + break; } return d->fileEntry.filePath(); } |