summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoão Abecasis <joao.abecasis@nokia.com>2010-11-26 09:11:15 (GMT)
committerJoão Abecasis <joao.abecasis@nokia.com>2010-11-26 09:26:09 (GMT)
commit8d01c4a29b6b07a52f0aead33f108dac9e298a14 (patch)
tree401a3a9f36bb3850c7d82fd85f131ddd9d012826
parent9cadcb33ee35750d88ac11eee07b630bd8aa9c67 (diff)
downloadQt-8d01c4a29b6b07a52f0aead33f108dac9e298a14.zip
Qt-8d01c4a29b6b07a52f0aead33f108dac9e298a14.tar.gz
Qt-8d01c4a29b6b07a52f0aead33f108dac9e298a14.tar.bz2
QFileSystemWatcher: don't try to stop non-running thread
Task-Number: QTBUG-14435 Reviewed-by: Bradley T. Hughes
-rw-r--r--src/corelib/io/qfilesystemwatcher_kqueue.cpp2
-rw-r--r--tests/auto/qfilesystemwatcher/tst_qfilesystemwatcher.cpp1
2 files changed, 3 insertions, 0 deletions
diff --git a/src/corelib/io/qfilesystemwatcher_kqueue.cpp b/src/corelib/io/qfilesystemwatcher_kqueue.cpp
index 242c153..68994d2 100644
--- a/src/corelib/io/qfilesystemwatcher_kqueue.cpp
+++ b/src/corelib/io/qfilesystemwatcher_kqueue.cpp
@@ -208,6 +208,8 @@ QStringList QKqueueFileSystemWatcherEngine::removePaths(const QStringList &paths
QStringList p = paths;
{
QMutexLocker locker(&mutex);
+ if (pathToID.isEmpty())
+ return p;
QMutableListIterator<QString> it(p);
while (it.hasNext()) {
diff --git a/tests/auto/qfilesystemwatcher/tst_qfilesystemwatcher.cpp b/tests/auto/qfilesystemwatcher/tst_qfilesystemwatcher.cpp
index 82a6f88..648b7e9 100644
--- a/tests/auto/qfilesystemwatcher/tst_qfilesystemwatcher.cpp
+++ b/tests/auto/qfilesystemwatcher/tst_qfilesystemwatcher.cpp
@@ -137,6 +137,7 @@ void tst_QFileSystemWatcher::basicTest()
// create watcher, forcing it to use a specific backend
QFileSystemWatcher watcher;
watcher.setObjectName(QLatin1String("_qt_autotest_force_engine_") + backend);
+ watcher.removePath(testFile.fileName());
watcher.addPath(testFile.fileName());
QSignalSpy changedSpy(&watcher, SIGNAL(fileChanged(const QString &)));