hokein accepted this revision. hokein added inline comments. This revision is now accepted and ready to land.
================ Comment at: clang-tools-extra/clangd/ClangdLSPServer.cpp:1000 std::lock_guard<std::mutex> Lock(FixItsMutex); FixItsMap[File] = LocalFixIts; } ---------------- ilya-biryukov wrote: > hokein wrote: > > IIUC, it seems that we might have race condition here, considering: > > > > - open a file which will take a long time to get diagnostic > > - the file gets closed, we publish an empty diagnostic > > - we get the diagnostics of the file, and we cache them, and emit them to > > clients > We should be fine there, `TUScheduler` won't send diagnostics after the call > to `remove` returns. > This is ensured by calling `ASTWorker::stop()`, which sets the > `ASTWorker::ReportDiagnostics` flag to `false`. That makes sense, thanks for the clarification. Maybe add a comment in onDocumentDidClose for future readers. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D59757/new/ https://reviews.llvm.org/D59757 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits