diff options
-rw-r--r-- | src/widgets/kernel/qgesturemanager.cpp | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/widgets/kernel/qgesturemanager.cpp b/src/widgets/kernel/qgesturemanager.cpp index 2e5c2c53bd..b2a4457add 100644 --- a/src/widgets/kernel/qgesturemanager.cpp +++ b/src/widgets/kernel/qgesturemanager.cpp @@ -143,10 +143,9 @@ void QGestureManager::unregisterGestureRecognizer(Qt::GestureType type) { QList<QGestureRecognizer *> list = m_recognizers.values(type); while (QGestureRecognizer *recognizer = m_recognizers.take(type)) { - if (!m_obsoleteGestures.contains(recognizer)) { - // inserting even an empty QSet will cause the recognizer to be deleted on destruction of the manager - m_obsoleteGestures.insert(recognizer, QSet<QGesture *>()); - } + // ensuring an entry exists causes the recognizer to be deleted on destruction of the manager + auto &gestures = m_obsoleteGestures[recognizer]; + Q_UNUSED(gestures); } foreach (QGesture *g, m_gestureToRecognizer.keys()) { QGestureRecognizer *recognizer = m_gestureToRecognizer.value(g); |