forked from qt-creator/qt-creator
Editors: Delete context menu if editor widget is deleted
...in CppEditor, QmlJSEditor and BinEditor. Addresses second crash reported at QTCREATORBUG-8775. The first one is already fixed. Task-number: QTCREATORBUG-8775 Change-Id: I11c1f030ebeb2b2cbec02503e8e225fc5600a101 Reviewed-by: David Schulz <david.schulz@digia.com> Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com> Reviewed-by: Orgad Shaneh <orgads@gmail.com>
This commit is contained in:
@@ -97,6 +97,7 @@
|
||||
#include <QDebug>
|
||||
#include <QTime>
|
||||
#include <QTimer>
|
||||
#include <QPointer>
|
||||
#include <QStack>
|
||||
#include <QSettings>
|
||||
#include <QSignalMapper>
|
||||
@@ -1642,7 +1643,7 @@ void CPPEditorWidget::contextMenuEvent(QContextMenuEvent *e)
|
||||
// ### enable
|
||||
// updateSemanticInfo(m_semanticHighlighter->semanticInfo(currentSource()));
|
||||
|
||||
QMenu *menu = new QMenu;
|
||||
QPointer<QMenu> menu(new QMenu(this));
|
||||
|
||||
Core::ActionContainer *mcontext = Core::ActionManager::actionContainer(Constants::M_CONTEXT);
|
||||
QMenu *contextMenu = mcontext->menu();
|
||||
@@ -1686,6 +1687,8 @@ void CPPEditorWidget::contextMenuEvent(QContextMenuEvent *e)
|
||||
appendStandardContextMenuActions(menu);
|
||||
|
||||
menu->exec(e->globalPos());
|
||||
if (!menu)
|
||||
return;
|
||||
m_quickFixes.clear();
|
||||
delete menu;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user