diff --git a/src/plugins/clangcodemodel/clangdclient.cpp b/src/plugins/clangcodemodel/clangdclient.cpp index ae1e29a8eb8..c180710a340 100644 --- a/src/plugins/clangcodemodel/clangdclient.cpp +++ b/src/plugins/clangcodemodel/clangdclient.cpp @@ -540,8 +540,10 @@ public: void closeTempDocuments() { - for (const Utils::FilePath &fp : qAsConst(openedFiles)) - q->closeExtraFile(fp); + for (const Utils::FilePath &fp : qAsConst(openedFiles)) { + if (!q->documentForFilePath(fp)) + q->closeExtraFile(fp); + } openedFiles.clear(); } @@ -690,7 +692,6 @@ public: void sendGotoImplementationRequest(const Utils::Link &link); void handleGotoImplementationResult(const GotoImplementationRequest::Response &response); void handleDocumentInfoResults(); - void closeTempDocuments(); void handleDeclDefSwitchReplies();