summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorKonstantin Ritt <ritt.ks@gmail.com>2011-08-30 12:34:31 +0400
committerQt by Nokia <qt-info@nokia.com>2011-09-12 12:55:27 +0200
commit549b2fa2465d19e52482a2df206f92db296434fd (patch)
treefe8ec2eeab459971a239f21e58e1e5643c7cfa03 /tests
parente8e2e26d5aa97b56519f5c7bea706aff0fd86326 (diff)
don't crash when destroying the shortcuts
as shortcutDestroyed(..) modifies the shortcuts list. disconnect from shortcutDestroyed() first, or operate on a detach()-ed list this was uncovered by QList::removaAll() optimization patch. (cherry picked from commit e95de30977291a251660f72baa84b5ff244711fb) Change-Id: Ie0b371c54458ce85f4d36430de8080a5e78d8b7f Reviewed-on: http://codereview.qt-project.org/4585 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Diffstat (limited to 'tests')
-rw-r--r--tests/auto/qshortcut/tst_qshortcut.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/tests/auto/qshortcut/tst_qshortcut.cpp b/tests/auto/qshortcut/tst_qshortcut.cpp
index a78e8cfd27..d761b19542 100644
--- a/tests/auto/qshortcut/tst_qshortcut.cpp
+++ b/tests/auto/qshortcut/tst_qshortcut.cpp
@@ -1124,7 +1124,8 @@ void tst_QShortcut::context()
// ------------------------------------------------------------------
void tst_QShortcut::clearAllShortcuts()
{
- qDeleteAll(shortcuts);
+ QList<QShortcut *> shortcutsCpy = shortcuts;
+ qDeleteAll(shortcutsCpy);
shortcuts.clear();
}