From 7694599ef933b306d54116723adab0d5d8651ff5 Mon Sep 17 00:00:00 2001 From: Debao Zhang Date: Fri, 18 Nov 2011 22:40:47 +0800 Subject: Fix Memory leak related to Content Menu From Qt4.7 on, the contextmenu of QTextEdit/QPlainTextEdit/QLineEdit/QLabel/QMainWindow etc using QMenu::popup() instead of QMenu::exec(), but the setAttribute(Qt::WA_DeleteOnClose) does not work, as QMenu::close() isn't called when the menus disapper. And this causes a memory leak. This is a side effect of b7af368e86874d71ffc9071c9ef009814d6a3467 Task-number: QTBUG-22817 Task-number: QTBUG-19592 Change-Id: I4c2c3edb3f63ce914b7b57cd0fbcec20488c8315 Reviewed-by: Frederik Gladhorn --- src/widgets/widgets/qmenu.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/widgets') diff --git a/src/widgets/widgets/qmenu.cpp b/src/widgets/widgets/qmenu.cpp index b8ba2cdf5d..3bcba686be 100644 --- a/src/widgets/widgets/qmenu.cpp +++ b/src/widgets/widgets/qmenu.cpp @@ -500,7 +500,7 @@ void QMenuPrivate::hideMenu(QMenu *menu, bool justRegister) menu->blockSignals(false); #endif // QT_NO_EFFECTS if (!justRegister) - menu->hide(); + menu->close(); } void QMenuPrivate::popupAction(QAction *action, int delay, bool activateFirst) -- cgit v1.2.3