From 3d02e4020d013401b9a2de70f04fd3070c34018c Mon Sep 17 00:00:00 2001 From: Tobias Hunger Date: Wed, 4 May 2011 10:31:35 +0200 Subject: [PATCH] VCS: Make sure we have no .. in directories --- src/plugins/coreplugin/vcsmanager.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/plugins/coreplugin/vcsmanager.cpp b/src/plugins/coreplugin/vcsmanager.cpp index a2ea37a78da..1a785622eeb 100644 --- a/src/plugins/coreplugin/vcsmanager.cpp +++ b/src/plugins/coreplugin/vcsmanager.cpp @@ -38,6 +38,7 @@ #include #include +#include #include #include #include @@ -167,12 +168,15 @@ static bool longerThanPath(QPair &pair1, QPair pair2.first.size(); } -IVersionControl* VcsManager::findVersionControlForDirectory(const QString &directory, +IVersionControl* VcsManager::findVersionControlForDirectory(const QString &inputDirectory, QString *topLevelDirectory) { - if (directory.isEmpty()) + if (inputDirectory.isEmpty()) return 0; + // Make sure we a clean absolute path: + const QString directory = QDir(inputDirectory).absolutePath(); + VcsManagerPrivate::VcsInfo *cachedData = m_d->findInCache(directory); if (cachedData) { if (topLevelDirectory)