aboutsummaryrefslogtreecommitdiffstats
path: root/src/libs/utils/fileutils.cpp
diff options
context:
space:
mode:
authorEike Ziller <[email protected]>2012-10-05 20:51:31 +0200
committerEike Ziller <[email protected]>2012-10-05 20:51:31 +0200
commit68c796e2449673a85f7ebbd79360b52623beed2b (patch)
tree052963a86224a5290438e67aebd018fa9a9b4fda /src/libs/utils/fileutils.cpp
parent43f2c77a42d6f50dd5b21aeee88ef0a78eae41ee (diff)
parent0fc9e7c87735d5cc4ecadbe6d4656f620e2259cd (diff)
Merge origin/2.6
Conflicts: src/libs/utils/fileutils.cpp src/plugins/cmakeprojectmanager/cmakebuildconfiguration.cpp src/plugins/cmakeprojectmanager/cmakeopenprojectwizard.cpp src/plugins/cmakeprojectmanager/cmakeopenprojectwizard.h src/plugins/cmakeprojectmanager/cmakeproject.cpp src/plugins/cmakeprojectmanager/cmakeprojectmanager.cpp src/plugins/cmakeprojectmanager/makestep.cpp src/plugins/qtsupport/baseqtversion.cpp Change-Id: I153295bad2d97609d96d28945e9f942c5b46b2da
Diffstat (limited to 'src/libs/utils/fileutils.cpp')
-rw-r--r--src/libs/utils/fileutils.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/libs/utils/fileutils.cpp b/src/libs/utils/fileutils.cpp
index d252f5f1067..ca012c77d38 100644
--- a/src/libs/utils/fileutils.cpp
+++ b/src/libs/utils/fileutils.cpp
@@ -535,10 +535,16 @@ bool FileName::operator>=(const FileName &other) const
/// \returns whether FileName is a child of \a s
bool FileName::isChildOf(const FileName &s) const
{
+ if (s.isEmpty())
+ return false;
if (!QString::startsWith(s, HostOsInfo::fileNameCaseSensitivity()))
return false;
if (size() <= s.size())
return false;
+ // s is root, '/' was already tested in startsWith
+ if (s.QString::endsWith(QLatin1Char('/')))
+ return true;
+ // s is a directory, next character should be '/' (/tmpdir is NOT a child of /tmp)
return at(s.size()) == QLatin1Char('/');
}