diff options
author | sgk@google.com <sgk@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-12-02 08:21:22 +0000 |
---|---|---|
committer | sgk@google.com <sgk@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-12-02 08:21:22 +0000 |
commit | 5c76d265d7dc6eaa1ce8b8690f7d2077f8724953 (patch) | |
tree | 4c623e11d858a7c66c50aa55e0dfe2fca51c041e /third_party/scons | |
parent | 7713d63d41fad819b4031c2f30422489469ead95 (diff) | |
download | chromium_src-5c76d265d7dc6eaa1ce8b8690f7d2077f8724953.zip chromium_src-5c76d265d7dc6eaa1ce8b8690f7d2077f8724953.tar.gz chromium_src-5c76d265d7dc6eaa1ce8b8690f7d2077f8724953.tar.bz2 |
Local fix to SCons bug:
If a Node exists explicitly in a repository directory but not in the
local working directory, SCons would throw an exception when globbing
the entry when it tried to extract the non-existent same-named entry
from the local working directory's entries dictionary. Since we know
we want to return local entry anyway, make sure it exists.
Review URL: http://codereview.chromium.org/13044
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6212 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'third_party/scons')
-rw-r--r-- | third_party/scons/scons-local/SCons/Node/FS.py | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/third_party/scons/scons-local/SCons/Node/FS.py b/third_party/scons/scons-local/SCons/Node/FS.py index 218542e..6bb6f59e 100644 --- a/third_party/scons/scons-local/SCons/Node/FS.py +++ b/third_party/scons/scons-local/SCons/Node/FS.py @@ -1897,6 +1897,10 @@ class Dir(Base): entry_names = filter(lambda n: n not in ('.', '..'), dir.entries.keys()) node_names = map(lambda n, e=dir.entries: e[n].name, entry_names) names.extend(node_names) + if not strings: + # Make sure the working directory (self) actually has + # entries for all Nodes in repositories or variant dirs. + map(self.Entry, node_names) if ondisk: try: disk_names = os.listdir(dir.abspath) |