diff options
Diffstat (limited to 'src/parsers.cc')
-rw-r--r-- | src/parsers.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/parsers.cc b/src/parsers.cc index 567be6b..9ed2938 100644 --- a/src/parsers.cc +++ b/src/parsers.cc @@ -462,7 +462,8 @@ bool ManifestParser::ParseDefaults(string* err) { if (!eval.Parse(target, &eval_err)) return tokenizer_.Error(eval_err, err); string path = eval.Evaluate(env_); - CanonicalizePath(&path); + if (!CanonicalizePath(&path, &eval_err)) + return tokenizer_.Error(eval_err, err); if (!state_->AddDefault(path, &eval_err)) return tokenizer_.Error(eval_err, err); } while (tokenizer_.ReadIdent(&target)); @@ -566,7 +567,8 @@ bool ManifestParser::ParseEdge(string* err) { if (!eval.Parse(*i, &eval_err)) return tokenizer_.Error(eval_err, err); string path = eval.Evaluate(env); - CanonicalizePath(&path); + if (!CanonicalizePath(&path, &eval_err)) + return tokenizer_.Error(eval_err, err); *i = path; } } |