From 97ec97ff27c72ed6feb41a1d3d9264d3f36f36ad Mon Sep 17 00:00:00 2001 From: Jarek Kobus Date: Mon, 26 Feb 2024 13:12:45 +0100 Subject: [PATCH] ClangModelManagerSupport: Skip explicit call to waitForFinished() This is done by the FutureSynchronizer d'tor, so no need to call it explicitly. Move the FutureSynchronizer as the last field of ClangModelManagerSupport so that its d'tor is executed first. Change-Id: Id38b8ec08579be8e4ade99ecadb511850ff37f8c Reviewed-by: Christian Kandeler --- src/plugins/clangcodemodel/clangmodelmanagersupport.cpp | 5 +---- src/plugins/clangcodemodel/clangmodelmanagersupport.h | 2 +- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/src/plugins/clangcodemodel/clangmodelmanagersupport.cpp b/src/plugins/clangcodemodel/clangmodelmanagersupport.cpp index 53d0e6f3784..477ab9104b9 100644 --- a/src/plugins/clangcodemodel/clangmodelmanagersupport.cpp +++ b/src/plugins/clangcodemodel/clangmodelmanagersupport.cpp @@ -293,10 +293,7 @@ ClangModelManagerSupport::ClangModelManagerSupport() new ClangdQuickFixFactory(); // memory managed by CppEditor::g_cppQuickFixFactories } -ClangModelManagerSupport::~ClangModelManagerSupport() -{ - m_generatorSynchronizer.waitForFinished(); -} +ClangModelManagerSupport::~ClangModelManagerSupport() = default; void ClangModelManagerSupport::followSymbol(const CursorInEditor &data, const LinkHandler &processLinkCallback, diff --git a/src/plugins/clangcodemodel/clangmodelmanagersupport.h b/src/plugins/clangcodemodel/clangmodelmanagersupport.h index a598bea8bbd..67fc12868cb 100644 --- a/src/plugins/clangcodemodel/clangmodelmanagersupport.h +++ b/src/plugins/clangcodemodel/clangmodelmanagersupport.h @@ -94,10 +94,10 @@ private: void scheduleClientRestart(ClangdClient *client); static ClangdClient *clientWithProject(const ProjectExplorer::Project *project); - Utils::FutureSynchronizer m_generatorSynchronizer; QList> m_clientsToRestart; QTimer * const m_clientRestartTimer; QHash m_potentialShadowDocuments; + Utils::FutureSynchronizer m_generatorSynchronizer; // Keep me last }; } // namespace Internal