This revision was automatically updated to reflect the committed changes. Closed by commit rG152f2914607f: [clang][deps] Fix race condition (authored by jansvoboda11).
Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D143428/new/ https://reviews.llvm.org/D143428 Files: clang/tools/clang-scan-deps/ClangScanDeps.cpp Index: clang/tools/clang-scan-deps/ClangScanDeps.cpp =================================================================== --- clang/tools/clang-scan-deps/ClangScanDeps.cpp +++ clang/tools/clang-scan-deps/ClangScanDeps.cpp @@ -252,14 +252,17 @@ public: void mergeDeps(StringRef Input, TranslationUnitDeps TUDeps, size_t InputIndex) { + mergeDeps(std::move(TUDeps.ModuleGraph), InputIndex); + InputDeps ID; ID.FileName = std::string(Input); ID.ContextHash = std::move(TUDeps.ID.ContextHash); ID.FileDeps = std::move(TUDeps.FileDeps); ID.ModuleDeps = std::move(TUDeps.ClangModuleDeps); - mergeDeps(std::move(TUDeps.ModuleGraph), InputIndex); ID.DriverCommandLine = std::move(TUDeps.DriverCommandLine); ID.Commands = std::move(TUDeps.Commands); + + std::unique_lock<std::mutex> ul(Lock); Inputs.push_back(std::move(ID)); }
Index: clang/tools/clang-scan-deps/ClangScanDeps.cpp =================================================================== --- clang/tools/clang-scan-deps/ClangScanDeps.cpp +++ clang/tools/clang-scan-deps/ClangScanDeps.cpp @@ -252,14 +252,17 @@ public: void mergeDeps(StringRef Input, TranslationUnitDeps TUDeps, size_t InputIndex) { + mergeDeps(std::move(TUDeps.ModuleGraph), InputIndex); + InputDeps ID; ID.FileName = std::string(Input); ID.ContextHash = std::move(TUDeps.ID.ContextHash); ID.FileDeps = std::move(TUDeps.FileDeps); ID.ModuleDeps = std::move(TUDeps.ClangModuleDeps); - mergeDeps(std::move(TUDeps.ModuleGraph), InputIndex); ID.DriverCommandLine = std::move(TUDeps.DriverCommandLine); ID.Commands = std::move(TUDeps.Commands); + + std::unique_lock<std::mutex> ul(Lock); Inputs.push_back(std::move(ID)); }
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits