Remove use of synchronization/lock from tools/gn/command_gen Change-Id: I1daf264fe85c6cf8fd2caa3324620ab87496cc2d Reviewed-on: https://gn-review.googlesource.com/1720 Commit-Queue: Scott Graham <scottmg@chromium.org> Reviewed-by: Brett Wilson <brettw@chromium.org>
diff --git a/tools/gn/command_gen.cc b/tools/gn/command_gen.cc index 0b291f2..af5dd1f 100644 --- a/tools/gn/command_gen.cc +++ b/tools/gn/command_gen.cc
@@ -2,6 +2,8 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. +#include <mutex> + #include "base/bind.h" #include "base/command_line.h" #include "base/strings/string_number_conversions.h" @@ -50,7 +52,7 @@ // Collects Ninja rules for each toolchain. The lock protectes the rules. struct TargetWriteInfo { - base::Lock lock; + std::mutex lock; NinjaWriter::PerToolchainRules rules; }; @@ -60,7 +62,7 @@ DCHECK(!rule.empty()); { - base::AutoLock lock(write_info->lock); + std::lock_guard<std::mutex> lock(write_info->lock); write_info->rules[target->toolchain()].emplace_back(target, std::move(rule)); }