From 4861f5c1835d0de315dc1ec49e52eaa92a7a1eca Mon Sep 17 00:00:00 2001 From: Nikolai Kosjar Date: Wed, 2 May 2018 12:09:32 +0200 Subject: [PATCH] Clang: Fix heap-use-after-free in ClangCurrentDocumentFilter ...when closing editors fast (e.g. holding Ctrl+W). Due to the queued connection the slot was invoked after the deletion of the editor. There is no point in having a queued connection here, so remove it. Task-number: QTCREATORBUG-20191 Change-Id: I3872f8046b56f93c9aac832feccfd911d39e5995 Reviewed-by: Ivan Donchevskii --- src/plugins/clangcodemodel/clangcurrentdocumentfilter.cpp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/plugins/clangcodemodel/clangcurrentdocumentfilter.cpp b/src/plugins/clangcodemodel/clangcurrentdocumentfilter.cpp index 3b05722d6f8..dcfcf9e1b1f 100644 --- a/src/plugins/clangcodemodel/clangcurrentdocumentfilter.cpp +++ b/src/plugins/clangcodemodel/clangcurrentdocumentfilter.cpp @@ -59,11 +59,9 @@ ClangCurrentDocumentFilter::ClangCurrentDocumentFilter() Core::EditorManager *editorManager = Core::EditorManager::instance(); connect(editorManager, &Core::EditorManager::currentEditorChanged, - this, &ClangCurrentDocumentFilter::onCurrentEditorChanged, - Qt::QueuedConnection); + this, &ClangCurrentDocumentFilter::onCurrentEditorChanged); connect(editorManager, &Core::EditorManager::editorAboutToClose, - this, &ClangCurrentDocumentFilter::onEditorAboutToClose, - Qt::QueuedConnection); + this, &ClangCurrentDocumentFilter::onEditorAboutToClose); } static QString addType(const QString &signature, const ClangBackEnd::ExtraInfo &extraInfo)