diff options
author | brettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-11-03 04:34:41 +0000 |
---|---|---|
committer | brettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-11-03 04:34:41 +0000 |
commit | 81ca22ea8eeafe919df5a6599884b6a664a08c62 (patch) | |
tree | 1ab24093476e6ca08bf4af21c21c47775ad14650 /tools/gn/setup.cc | |
parent | cd7ee14450d55866eaf4ec95eb735f22bf7dae92 (diff) | |
download | chromium_src-81ca22ea8eeafe919df5a6599884b6a664a08c62.zip chromium_src-81ca22ea8eeafe919df5a6599884b6a664a08c62.tar.gz chromium_src-81ca22ea8eeafe919df5a6599884b6a664a08c62.tar.bz2 |
GN: toolchain threading cleanup
Remove the thread-unsafe toolchain pointer on the otherwise-threadsafe Settings object. I replaced it with the toolchain label, and moved the is_default flag from the toolchain to the Settings object.
This required that I pass the toolchain around in a few more places, but also simplifies some other cases.
I removed the toolchain prefix from Ninja rules for the default toolchain since that's not necessary any more for GYP compat.
This fixes an annoying double-free in the toolchain manager. I think my current refactor will clean this up in a later phase.
R=scottmg@chromium.org
Review URL: https://codereview.chromium.org/51693002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@232657 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'tools/gn/setup.cc')
-rw-r--r-- | tools/gn/setup.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/tools/gn/setup.cc b/tools/gn/setup.cc index 8bce9b5..47a243a 100644 --- a/tools/gn/setup.cc +++ b/tools/gn/setup.cc @@ -202,9 +202,9 @@ bool CommonSetup::RunPostMessageLoop() { Setup::Setup() : CommonSetup(), - empty_toolchain_(Label()), - empty_settings_(&empty_build_settings_, &empty_toolchain_, std::string()), + empty_settings_(&empty_build_settings_, std::string()), dotfile_scope_(&empty_settings_) { + empty_settings_.set_toolchain_label(Label()); } Setup::~Setup() { |