diff options
author | hjk <hjk@qt.io> | 2021-07-29 17:54:14 +0200 |
---|---|---|
committer | hjk <hjk@qt.io> | 2021-07-30 06:24:41 +0000 |
commit | 56520c770cc0c652da538c8e5e8d6e5cb68d3161 (patch) | |
tree | 886559b600aa5629800b4669e36e6c949e4ada63 /src/plugins/vcsbase/vcsbaseplugin.cpp | |
parent | edcedabed99849bd89022890b23a199ebb468ba5 (diff) | |
download | qt-creator-56520c770cc0c652da538c8e5e8d6e5cb68d3161.tar.gz |
Vcs: Replace findRepositoryForDirectory
By some function findRepositoryForFile operating on any file and
using FilePath.
Change-Id: I91b8aa38b1c6b33993b9b790fbc2ff4d378ad8a8
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Diffstat (limited to 'src/plugins/vcsbase/vcsbaseplugin.cpp')
-rw-r--r-- | src/plugins/vcsbase/vcsbaseplugin.cpp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/plugins/vcsbase/vcsbaseplugin.cpp b/src/plugins/vcsbase/vcsbaseplugin.cpp index ffa1e51ad1..16e7a2da60 100644 --- a/src/plugins/vcsbase/vcsbaseplugin.cpp +++ b/src/plugins/vcsbase/vcsbaseplugin.cpp @@ -695,15 +695,16 @@ bool VcsBasePluginPrivate::raiseSubmitEditor() const // AutoFS is used (due its automatically creating mountpoints when querying // a directory). In addition, bail out when reaching the home directory // of the user or root (generally avoid '/', where mountpoints are created). -QString findRepositoryForDirectory(const QString &dirS, const QString &checkFile) +FilePath findRepositoryForFile(const FilePath &fileOrDir, const QString &checkFile) { + const FilePath dirS = fileOrDir.isDir() ? fileOrDir : fileOrDir.parentDir(); qCDebug(findRepoLog) << ">" << dirS << checkFile; - QTC_ASSERT(!dirS.isEmpty() && !checkFile.isEmpty(), return QString()); + QTC_ASSERT(!dirS.isEmpty() && !checkFile.isEmpty(), return {}); const QString root = QDir::rootPath(); const QString home = QDir::homePath(); - QDir directory(dirS); + QDir directory(dirS.toString()); do { const QString absDirPath = directory.absolutePath(); if (absDirPath == root || absDirPath == home) @@ -711,11 +712,11 @@ QString findRepositoryForDirectory(const QString &dirS, const QString &checkFile if (QFileInfo(directory, checkFile).isFile()) { qCDebug(findRepoLog) << "<" << absDirPath; - return absDirPath; + return FilePath::fromString(absDirPath); } } while (!directory.isRoot() && directory.cdUp()); qCDebug(findRepoLog) << "< bailing out at" << directory.absolutePath(); - return QString(); + return {}; } // Is SSH prompt configured? |