diff options
Diffstat (limited to 'src/corelib/io')
-rw-r--r-- | src/corelib/io/qabstractfileengine.cpp | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/src/corelib/io/qabstractfileengine.cpp b/src/corelib/io/qabstractfileengine.cpp index 08692c394c..1ab5194913 100644 --- a/src/corelib/io/qabstractfileengine.cpp +++ b/src/corelib/io/qabstractfileengine.cpp @@ -19,6 +19,13 @@ QT_BEGIN_NAMESPACE +static QString appendSlashIfNeeded(const QString &path) +{ + if (!path.isEmpty() && !path.endsWith(u'/')) + return QString{path + u'/'}; + return path; +} + /*! \class QAbstractFileEngineHandler \inmodule QtCore @@ -919,7 +926,7 @@ QString QAbstractFileEngineIterator::path() const */ void QAbstractFileEngineIterator::setPath(const QString &path) { - m_path = path; + m_path = appendSlashIfNeeded(path); } /*! @@ -960,15 +967,10 @@ QDir::Filters QAbstractFileEngineIterator::filters() const QString QAbstractFileEngineIterator::currentFilePath() const { QString name = currentFileName(); - if (!name.isNull()) { - QString tmp = path(); - if (!tmp.isEmpty()) { - if (!tmp.endsWith(u'/')) - tmp.append(u'/'); - name.prepend(tmp); - } - } - return name; + if (name.isNull()) + return name; + + return path() + name; } /*! |