summaryrefslogtreecommitdiffstats
path: root/src/parsers.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/parsers.cc')
-rw-r--r--src/parsers.cc6
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;
}
}