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/toolchain.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/toolchain.cc')
-rw-r--r-- | tools/gn/toolchain.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/tools/gn/toolchain.cc b/tools/gn/toolchain.cc index 887fba2..eee458a 100644 --- a/tools/gn/toolchain.cc +++ b/tools/gn/toolchain.cc @@ -25,7 +25,8 @@ Toolchain::Tool::Tool() { Toolchain::Tool::~Tool() { } -Toolchain::Toolchain(const Label& label) : Item(label), is_default_(false) { +Toolchain::Toolchain(const Settings* settings, const Label& label) + : Item(settings, label) { } Toolchain::~Toolchain() { |