summaryrefslogtreecommitdiffstats
path: root/src/corelib/io
diff options
context:
space:
mode:
authorSimon Hausmann <simon.hausmann@nokia.com>2009-04-29 06:18:27 (GMT)
committerSimon Hausmann <simon.hausmann@nokia.com>2009-04-29 06:18:27 (GMT)
commit68999af7823e80aa049c19f332045b1fb074fb96 (patch)
treeb18b30c870157e1da14b8cf21568bb0d4684e0cf /src/corelib/io
parentbad50f8a2ef285aa9943291400cd322a6ec7af82 (diff)
parent822114e976d7c6644f060ac366c08c92da1a4779 (diff)
downloadQt-68999af7823e80aa049c19f332045b1fb074fb96.zip
Qt-68999af7823e80aa049c19f332045b1fb074fb96.tar.gz
Qt-68999af7823e80aa049c19f332045b1fb074fb96.tar.bz2
Merge branch '4.5' of git@scm.dev.nokia.troll.no:qt/qt
Diffstat (limited to 'src/corelib/io')
-rw-r--r--src/corelib/io/qfsfileengine_win.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/corelib/io/qfsfileengine_win.cpp b/src/corelib/io/qfsfileengine_win.cpp
index 522be20..63506c2 100644
--- a/src/corelib/io/qfsfileengine_win.cpp
+++ b/src/corelib/io/qfsfileengine_win.cpp
@@ -346,8 +346,15 @@ bool QFSFileEnginePrivate::uncListSharesOnServer(const QString &server, QStringL
static bool isUncRoot(const QString &server)
{
QString localPath = QDir::toNativeSeparators(server);
- QStringList parts = localPath.split(QLatin1Char('\\'), QString::SkipEmptyParts);
- return localPath.startsWith(QLatin1String("\\\\")) && parts.count() <= 1;
+ if (!localPath.startsWith(QLatin1String("\\\\")))
+ return false;
+
+ int idx = localPath.indexOf(QLatin1Char('\\'), 2);
+ if (idx == -1 || idx + 1 == localPath.length())
+ return true;
+
+ localPath = localPath.right(localPath.length() - idx - 1).trimmed();
+ return localPath.isEmpty();
}
static bool isUncPath(const QString &path)