diff options
author | Evan Martin <martine@danga.com> | 2011-05-22 16:25:34 (GMT) |
---|---|---|
committer | Evan Martin <martine@danga.com> | 2011-05-22 16:26:06 (GMT) |
commit | e69d8bfda4b369717e67ff1d9bfa458b402c0e73 (patch) | |
tree | 8ee484567fc00f889fb82d7104b6a360d70daa4b /src/parsers.cc | |
parent | c1b5ace19665ee154add5fbe47faf45f16ce619e (diff) | |
download | Ninja-e69d8bfda4b369717e67ff1d9bfa458b402c0e73.zip Ninja-e69d8bfda4b369717e67ff1d9bfa458b402c0e73.tar.gz Ninja-e69d8bfda4b369717e67ff1d9bfa458b402c0e73.tar.bz2 |
include filename in subninja load err message
Diffstat (limited to 'src/parsers.cc')
-rw-r--r-- | src/parsers.cc | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/parsers.cc b/src/parsers.cc index d22dd97..e4402af 100644 --- a/src/parsers.cc +++ b/src/parsers.cc @@ -510,12 +510,11 @@ bool ManifestParser::ParseFileInclude(string* err) { string path; if (!tokenizer_.ReadIdent(&path)) return tokenizer_.ErrorExpected("path to ninja file", err); - if (!tokenizer_.Newline(err)) - return false; string contents; - if (!file_reader_->ReadFile(path, &contents, err)) - return false; + string read_err; + if (!file_reader_->ReadFile(path, &contents, &read_err)) + return tokenizer_.Error("loading " + path + ": " + read_err, err); ManifestParser subparser(state_, file_reader_); if (type == "subninja") { @@ -531,5 +530,8 @@ bool ManifestParser::ParseFileInclude(string* err) { if (!subparser.Parse(contents, &sub_err)) return tokenizer_.Error("in '" + path + "': " + sub_err, err); + if (!tokenizer_.Newline(err)) + return false; + return true; } |