diff --git a/src/libs/utils/fileutils.cpp b/src/libs/utils/fileutils.cpp index e1dfaea69db..61aff9d6932 100644 --- a/src/libs/utils/fileutils.cpp +++ b/src/libs/utils/fileutils.cpp @@ -291,7 +291,7 @@ bool FilePath::isEmpty() const QString FilePath::shortNativePath() const { if (HostOsInfo::isAnyUnixHost()) { - const FilePath home = FilePath::fromString(QDir::cleanPath(QDir::homePath())); + const FilePath home = FileUtils::homePath(); if (isChildOf(home)) { return QLatin1Char('~') + QDir::separator() + QDir::toNativeSeparators(relativeChildPath(home).toString()); @@ -468,6 +468,11 @@ QByteArray FileUtils::fileId(const FilePath &fileName) return result; } +FilePath FileUtils::homePath() +{ + return FilePath::fromString(QDir::cleanPath(QDir::homePath())); +} + QByteArray FileReader::fetchQrc(const QString &fileName) { QTC_ASSERT(fileName.startsWith(':'), return QByteArray()); @@ -1048,7 +1053,7 @@ FilePath FilePath::fromUserInput(const QString &filePath) { QString clean = QDir::fromNativeSeparators(filePath); if (clean.startsWith(QLatin1String("~/"))) - clean = QDir::homePath() + clean.mid(1); + return FileUtils::homePath().pathAppended(clean.mid(2)); return FilePath::fromString(clean); } diff --git a/src/libs/utils/fileutils.h b/src/libs/utils/fileutils.h index 3e584a41dd5..7d289c8b410 100644 --- a/src/libs/utils/fileutils.h +++ b/src/libs/utils/fileutils.h @@ -238,6 +238,7 @@ public: static bool isAbsolutePath(const QString &fileName) { return !isRelativePath(fileName); } static FilePath commonPath(const FilePath &oldCommonPath, const FilePath &fileName); static QByteArray fileId(const FilePath &fileName); + static FilePath homePath(); }; template