summaryrefslogtreecommitdiffstats
path: root/src/corelib/kernel/qwineventnotifier.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/corelib/kernel/qwineventnotifier.cpp')
-rw-r--r--src/corelib/kernel/qwineventnotifier.cpp12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/corelib/kernel/qwineventnotifier.cpp b/src/corelib/kernel/qwineventnotifier.cpp
index b48bd0c8cc..d81d1ec460 100644
--- a/src/corelib/kernel/qwineventnotifier.cpp
+++ b/src/corelib/kernel/qwineventnotifier.cpp
@@ -134,10 +134,12 @@ QWinEventNotifier::QWinEventNotifier(HANDLE hEvent, QObject *parent)
: QObject(*new QWinEventNotifierPrivate(hEvent, false), parent)
{
Q_D(QWinEventNotifier);
- QEventDispatcherWin32 *eventDispatcher = qobject_cast<QEventDispatcherWin32 *>(d->threadData->eventDispatcher);
- Q_ASSERT_X(eventDispatcher, "QWinEventNotifier::QWinEventNotifier()",
- "Cannot create a win event notifier without a QEventDispatcherWin32");
- eventDispatcher->registerEventNotifier(this);
+ QAbstractEventDispatcher *eventDispatcher = d->threadData->eventDispatcher;
+ if (!eventDispatcher) {
+ qWarning("QWinEventNotifier: Can only be used with threads started with QThread");
+ } else {
+ eventDispatcher->registerEventNotifier(this);
+ }
d->enabled = true;
}
@@ -205,7 +207,7 @@ void QWinEventNotifier::setEnabled(bool enable)
return;
d->enabled = enable;
- QEventDispatcherWin32 *eventDispatcher = qobject_cast<QEventDispatcherWin32 *>(d->threadData->eventDispatcher);
+ QAbstractEventDispatcher *eventDispatcher = d->threadData->eventDispatcher;
if (!eventDispatcher) // perhaps application is shutting down
return;