summaryrefslogtreecommitdiffstats
path: root/src/corelib/concurrent/qfuturewatcher.cpp
diff options
context:
space:
mode:
authorOlivier Goffart <olivier.goffart@nokia.com>2010-08-23 14:49:06 (GMT)
committerOlivier Goffart <olivier.goffart@nokia.com>2010-08-23 15:14:04 (GMT)
commitb7fd2930986a9be5dd6115bfc4a5c5c517344371 (patch)
tree48d4c43c0c2ea67fe48ca7370a520837ed3b1ddd /src/corelib/concurrent/qfuturewatcher.cpp
parentdae23694cb89b853785a5772cc7e0477f65ac5bf (diff)
downloadQt-b7fd2930986a9be5dd6115bfc4a5c5c517344371.zip
Qt-b7fd2930986a9be5dd6115bfc4a5c5c517344371.tar.gz
Qt-b7fd2930986a9be5dd6115bfc4a5c5c517344371.tar.bz2
QFutureWatcher: display a warning when connecting after calling setFuture()
Reviewed-by: brad
Diffstat (limited to 'src/corelib/concurrent/qfuturewatcher.cpp')
-rw-r--r--src/corelib/concurrent/qfuturewatcher.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/corelib/concurrent/qfuturewatcher.cpp b/src/corelib/concurrent/qfuturewatcher.cpp
index d4573c6..21b0789 100644
--- a/src/corelib/concurrent/qfuturewatcher.cpp
+++ b/src/corelib/concurrent/qfuturewatcher.cpp
@@ -359,6 +359,15 @@ void QFutureWatcherBase::connectNotify(const char * signal)
Q_D(QFutureWatcherBase);
if (qstrcmp(signal, SIGNAL(resultReadyAt(int))) == 0)
d->resultAtConnected.ref();
+#ifndef QT_NO_DEBUG
+ if (qstrcmp(signal, SIGNAL(finished())) == 0) {
+ if (futureInterface().isRunning()) {
+ //connections should be established before calling stFuture to avoid race.
+ // (The future could finish before the connection is made.)
+ qWarning("QFutureWatcher::connect: connecting after calling setFuture() is likely to produce race");
+ }
+ }
+#endif
}
void QFutureWatcherBase::disconnectNotify(const char * signal)