From d1b009cbbb06716a6c953184380c84e1cb4fbbf1 Mon Sep 17 00:00:00 2001 From: Andy Shaw Date: Tue, 20 Aug 2019 10:53:53 +0200 Subject: Remove the unregistered recognizer from the main list This amends 1320b2f64412f0d86bd09c66c22df845e13a94a1 to keep the behavior of removing from the main list but without re-introducing the memory leak. Fixes: QTBUG-77770 Change-Id: I91fa6cb71fab8d60baa35417fdb34322af11dbbb Reviewed-by: Friedemann Kleint Reviewed-by: Richard Moe Gustavsen (cherry picked from commit 7d73d4b9a93b3132c1a24aa3ae77f0a307e821fd) --- src/widgets/kernel/qgesturemanager.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/widgets/kernel/qgesturemanager.cpp b/src/widgets/kernel/qgesturemanager.cpp index 891858b035..cfa1759dd7 100644 --- a/src/widgets/kernel/qgesturemanager.cpp +++ b/src/widgets/kernel/qgesturemanager.cpp @@ -143,6 +143,7 @@ Qt::GestureType QGestureManager::registerGestureRecognizer(QGestureRecognizer *r void QGestureManager::unregisterGestureRecognizer(Qt::GestureType type) { QList list = m_recognizers.values(type); + m_recognizers.remove(type); foreach (QGesture *g, m_gestureToRecognizer.keys()) { QGestureRecognizer *recognizer = m_gestureToRecognizer.value(g); if (list.contains(recognizer)) { -- cgit v1.2.3