summaryrefslogtreecommitdiffstats
path: root/src/gui/kernel
diff options
context:
space:
mode:
authorDominik Holland <dominik.holland@nokia.com>2010-11-09 13:21:38 (GMT)
committerDominik Holland <dominik.holland@nokia.com>2010-11-09 14:56:28 (GMT)
commit7c59ffa73a569cb18acb05a1ee6c566f4878a1e2 (patch)
treee24f144b39ceccefec950a867cd617e809a52598 /src/gui/kernel
parent198d903fa18d9f1d51615974d71de8236e97c2cd (diff)
downloadQt-7c59ffa73a569cb18acb05a1ee6c566f4878a1e2.zip
Qt-7c59ffa73a569cb18acb05a1ee6c566f4878a1e2.tar.gz
Qt-7c59ffa73a569cb18acb05a1ee6c566f4878a1e2.tar.bz2
Fixed random crash in QGestureManager.
When the cachedGestures are cleaned, the Gestures should be removed in all QSets first, before the Delete. Task: QT-4013 Reviewed By: Frederik Gladhorn
Diffstat (limited to 'src/gui/kernel')
-rw-r--r--src/gui/kernel/qgesturemanager.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/gui/kernel/qgesturemanager.cpp b/src/gui/kernel/qgesturemanager.cpp
index 6dd8127..5e9a0cb 100644
--- a/src/gui/kernel/qgesturemanager.cpp
+++ b/src/gui/kernel/qgesturemanager.cpp
@@ -171,6 +171,10 @@ void QGestureManager::cleanupCachedGestures(QObject *target, Qt::GestureType typ
foreach (QGesture *g, gestures) {
m_deletedRecognizers.remove(g);
m_gestureToRecognizer.remove(g);
+ m_maybeGestures.remove(g);
+ m_activeGestures.remove(g);
+ m_gestureOwners.remove(g);
+ m_gestureTargets.remove(g);
}
qDeleteAll(gestures);