summaryrefslogtreecommitdiffstats
path: root/src/widgets/kernel/qwidgetwindow.cpp
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@digia.com>2014-01-31 13:22:24 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-01-31 18:28:11 +0100
commit65b26acb7c86b8d278c4edb8308b09520ae09c9f (patch)
treea90afd64732ea7112eb965baa30b37685e89fd3e /src/widgets/kernel/qwidgetwindow.cpp
parent4dcb607aa96e8a5d05b483236417e171bbe06ff6 (diff)
Prevent crash and emit warning when receiving bogus drop events.
Task-number: QTBUG-33635 Change-Id: I6d436bc4d47d1d6b063fc2cf27d67fe4684e7491 Reviewed-by: Oliver Wolff <oliver.wolff@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Diffstat (limited to 'src/widgets/kernel/qwidgetwindow.cpp')
-rw-r--r--src/widgets/kernel/qwidgetwindow.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/widgets/kernel/qwidgetwindow.cpp b/src/widgets/kernel/qwidgetwindow.cpp
index 1cf13c880b1..c7f8e181183 100644
--- a/src/widgets/kernel/qwidgetwindow.cpp
+++ b/src/widgets/kernel/qwidgetwindow.cpp
@@ -659,6 +659,11 @@ void QWidgetWindow::handleDragLeaveEvent(QDragLeaveEvent *event)
void QWidgetWindow::handleDropEvent(QDropEvent *event)
{
+ if (m_dragTarget.isNull()) {
+ qWarning() << Q_FUNC_INFO << m_widget << ": No drag target set.";
+ event->ignore();
+ return;
+ }
const QPoint mapped = m_dragTarget.data()->mapFromGlobal(m_widget->mapToGlobal(event->pos()));
QDropEvent translated(mapped, event->possibleActions(), event->mimeData(), event->mouseButtons(), event->keyboardModifiers());
QGuiApplication::sendSpontaneousEvent(m_dragTarget.data(), &translated);