From f5ea183cc6a6cd66fb3f804041fc112687e0a060 Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Tue, 16 Apr 2013 17:51:33 +0200 Subject: Prevent recursions when triggering menus in QToolButton With a global shortcut set it would be possible to let the button re-open the menu again and again, each time spinning an event loop. Task-number: QTBUG-30399 Change-Id: If7eddc115c77fef3df3e751fd72e7414cedaf272 Reviewed-by: Gabriel de Dietrich --- src/widgets/widgets/qtoolbutton.cpp | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/widgets/widgets/qtoolbutton.cpp') diff --git a/src/widgets/widgets/qtoolbutton.cpp b/src/widgets/widgets/qtoolbutton.cpp index 88690f8bff..f08689cb9b 100644 --- a/src/widgets/widgets/qtoolbutton.cpp +++ b/src/widgets/widgets/qtoolbutton.cpp @@ -680,6 +680,10 @@ void QToolButton::showMenu() d->menuButtonDown = false; return; // no menu to show } + // prevent recursions spinning another event loop + if (d->menuButtonDown) + return; + d->menuButtonDown = true; repaint(); -- cgit v1.2.3