ilya-biryukov added inline comments.

================
Comment at: clang-tools-extra/clangd/ClangdLSPServer.cpp:1000
     std::lock_guard<std::mutex> Lock(FixItsMutex);
     FixItsMap[File] = LocalFixIts;
   }
----------------
hokein wrote:
> 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. 
Added a comment. Thanks!


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

Reply via email to