diff options
author | Jan Niklas Hasse <jhasse@bixense.com> | 2019-09-21 20:41:37 (GMT) |
---|---|---|
committer | Jan Niklas Hasse <jhasse@bixense.com> | 2019-09-21 20:41:37 (GMT) |
commit | 95e0cb5156d295e0510b5296e441eecb1f8b1806 (patch) | |
tree | a0e9180bfb1177a8bb590ded14aedc871655f9de /src/graph.cc | |
parent | 2321fd711c4bbe7bdc23060f3549f2aea9a95580 (diff) | |
download | Ninja-95e0cb5156d295e0510b5296e441eecb1f8b1806.zip Ninja-95e0cb5156d295e0510b5296e441eecb1f8b1806.tar.gz Ninja-95e0cb5156d295e0510b5296e441eecb1f8b1806.tar.bz2 |
Fix crash when using MSVC in debug mode
Accessing inputs_[0] when it's empty results in an assert when running
in debug. Avoid it by using data() if available.
Diffstat (limited to 'src/graph.cc')
-rw-r--r-- | src/graph.cc | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/graph.cc b/src/graph.cc index b8b870b..facb76d 100644 --- a/src/graph.cc +++ b/src/graph.cc @@ -342,7 +342,11 @@ string EdgeEnv::LookupVariable(const string& var) { if (var == "in" || var == "in_newline") { int explicit_deps_count = edge_->inputs_.size() - edge_->implicit_deps_ - edge_->order_only_deps_; +#if __cplusplus >= 201103L + return MakePathList(edge_->inputs_.data(), explicit_deps_count, +#else return MakePathList(&edge_->inputs_[0], explicit_deps_count, +#endif var == "in" ? ' ' : '\n'); } else if (var == "out") { int explicit_outs_count = edge_->outputs_.size() - edge_->implicit_outs_; |