mirror of
https://github.com/facebook/sapling.git
synced 2024-10-11 09:17:30 +03:00
ctreemanifest: replace fetcher.get() calls in diffrecurse
Summary: diffrecurse was still calling the fetcher directly. This caused it to not access 'resolved' manifests correctly in some cases. Let's change all uses to use entry->get_manifest() which handles this stuff correctly. Test Plan: Later patches worked Reviewers: #fastmanifest Subscribers: mjpieters Differential Revision: https://phabricator.intern.facebook.com/D3885016
This commit is contained in:
parent
f9d88db548
commit
8e46cac9f0
@ -132,12 +132,10 @@ void treemanifest_diffrecurse(
|
|||||||
selfentry->appendtopath(path);
|
selfentry->appendtopath(path);
|
||||||
|
|
||||||
if (selfbinnode != otherbinnode) {
|
if (selfbinnode != otherbinnode) {
|
||||||
Manifest *selfchildmanifest = fetcher.get(
|
Manifest *selfchildmanifest = selfentry->get_manifest(fetcher,
|
||||||
path.c_str(), path.size(),
|
path.c_str(), path.size());
|
||||||
selfbinnode);
|
Manifest *otherchildmanifest = otherentry->get_manifest(fetcher,
|
||||||
Manifest *otherchildmanifest = fetcher.get(
|
path.c_str(), path.size());
|
||||||
path.c_str(), path.size(),
|
|
||||||
otherbinnode);
|
|
||||||
|
|
||||||
treemanifest_diffrecurse(
|
treemanifest_diffrecurse(
|
||||||
selfchildmanifest,
|
selfchildmanifest,
|
||||||
@ -155,9 +153,8 @@ void treemanifest_diffrecurse(
|
|||||||
entry.addtodiff(diff, path);
|
entry.addtodiff(diff, path);
|
||||||
|
|
||||||
path.append(1, '/');
|
path.append(1, '/');
|
||||||
Manifest *selfchildmanifest = fetcher.get(
|
Manifest *selfchildmanifest = selfentry->get_manifest(fetcher,
|
||||||
path.c_str(), path.size(),
|
path.c_str(), path.size());
|
||||||
selfbinnode);
|
|
||||||
treemanifest_diffrecurse(selfchildmanifest, NULL, path, diff, fetcher);
|
treemanifest_diffrecurse(selfchildmanifest, NULL, path, diff, fetcher);
|
||||||
|
|
||||||
selfiter.next();
|
selfiter.next();
|
||||||
@ -169,9 +166,8 @@ void treemanifest_diffrecurse(
|
|||||||
entry.addtodiff(diff, path);
|
entry.addtodiff(diff, path);
|
||||||
|
|
||||||
path.append(1, '/');
|
path.append(1, '/');
|
||||||
Manifest *otherchildmanifest = fetcher.get(
|
Manifest *otherchildmanifest = otherentry->get_manifest(fetcher,
|
||||||
path.c_str(), path.size(),
|
path.c_str(), path.size()
|
||||||
otherbinnode
|
|
||||||
);
|
);
|
||||||
treemanifest_diffrecurse(NULL, otherchildmanifest, path, diff, fetcher);
|
treemanifest_diffrecurse(NULL, otherchildmanifest, path, diff, fetcher);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user