##// END OF EJS Templates
largefiles: look at unfiltered().lfstatus to allow status() to be filtered...
Matt Harbison -
r23659:67d63ec8 default
parent child Browse files
Show More
@@ -34,7 +34,7 b' def reposetup(ui, repo):'
34 34 # their actual contents.
35 35 def __getitem__(self, changeid):
36 36 ctx = super(lfilesrepo, self).__getitem__(changeid)
37 if self.lfstatus:
37 if self.unfiltered().lfstatus:
38 38 class lfilesmanifestdict(manifest.manifestdict):
39 39 def __contains__(self, filename):
40 40 orig = super(lfilesmanifestdict, self).__contains__
@@ -72,19 +72,20 b' def reposetup(ui, repo):'
72 72 # appropriate list in the result. Also removes standin files
73 73 # from the listing. Revert to the original status if
74 74 # self.lfstatus is False.
75 # XXX large file status is buggy when used on repo proxy.
76 # XXX this needs to be investigated.
77 @localrepo.unfilteredmethod
78 75 def status(self, node1='.', node2=None, match=None, ignored=False,
79 76 clean=False, unknown=False, listsubrepos=False):
80 77 listignored, listclean, listunknown = ignored, clean, unknown
81 78 orig = super(lfilesrepo, self).status
82 if not self.lfstatus:
79
80 # When various overrides set repo.lfstatus, the change is redirected
81 # to the unfiltered repo, and self.lfstatus is always false when
82 # this repo is filtered.
83 if not self.unfiltered().lfstatus:
83 84 return orig(node1, node2, match, listignored, listclean,
84 85 listunknown, listsubrepos)
85 86
86 87 # some calls in this function rely on the old version of status
87 self.lfstatus = False
88 self.unfiltered().lfstatus = False
88 89 ctx1 = self[node1]
89 90 ctx2 = self[node2]
90 91 working = ctx2.rev() is None
@@ -240,7 +241,7 b' def reposetup(ui, repo):'
240 241 if wlock:
241 242 wlock.release()
242 243
243 self.lfstatus = True
244 self.unfiltered().lfstatus = True
244 245 return scmutil.status(*result)
245 246
246 247 def commitctx(self, ctx, *args, **kwargs):
General Comments 0
You need to be logged in to leave comments. Login now