summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/graph.cc5
-rw-r--r--src/util.cc1
2 files changed, 3 insertions, 3 deletions
diff --git a/src/graph.cc b/src/graph.cc
index 5c7507a..5320cfa 100644
--- a/src/graph.cc
+++ b/src/graph.cc
@@ -252,11 +252,10 @@ bool Edge::LoadDepFile(State* state, DiskInterface* disk_interface,
// Add all its in-edges.
for (vector<StringPiece>::iterator i = depfile.ins_.begin();
i != depfile.ins_.end(); ++i, ++implicit_dep) {
- string path(i->str_, i->len_);
- if (!CanonicalizePath(&path, err))
+ if (!CanonicalizePath(const_cast<char*>(i->str_), &i->len_, err))
return false;
- Node* node = state->GetNode(path);
+ Node* node = state->GetNode(*i);
*implicit_dep = node;
node->AddOutEdge(this);
diff --git a/src/util.cc b/src/util.cc
index 22bb81f..dbf7566 100644
--- a/src/util.cc
+++ b/src/util.cc
@@ -77,6 +77,7 @@ void Error(const char* msg, ...) {
}
bool CanonicalizePath(string* path, string* err) {
+ METRIC_RECORD("canonicalize str");
int len = path->size();
if (!CanonicalizePath(&(*path)[0], &len, err))
return false;