mercurial/context.py
changeset 23302 24f67ad49da7
parent 23301 c10dc5568069
child 23303 3f269bd4826c
equal deleted inserted replaced
23301:c10dc5568069 23302:24f67ad49da7
   127         if removed:
   127         if removed:
   128             # need to filter files if they are already reported as removed
   128             # need to filter files if they are already reported as removed
   129             unknown = [fn for fn in unknown if fn not in mf1]
   129             unknown = [fn for fn in unknown if fn not in mf1]
   130             ignored = [fn for fn in ignored if fn not in mf1]
   130             ignored = [fn for fn in ignored if fn not in mf1]
   131 
   131 
   132         return [modified, added, removed, deleted, unknown, ignored, clean]
   132         return scmutil.status(modified, added, removed, deleted, unknown,
       
   133                               ignored, clean)
   133 
   134 
   134     @propertycache
   135     @propertycache
   135     def substate(self):
   136     def substate(self):
   136         return subrepo.state(self, self._repo.ui)
   137         return subrepo.state(self, self._repo.ui)
   137 
   138 
   302         match = ctx2._matchstatus(ctx1, match)
   303         match = ctx2._matchstatus(ctx1, match)
   303         r = [[], [], [], [], [], [], []]
   304         r = [[], [], [], [], [], [], []]
   304         r = ctx2._buildstatus(ctx1, r, match, listignored, listclean,
   305         r = ctx2._buildstatus(ctx1, r, match, listignored, listclean,
   305                               listunknown)
   306                               listunknown)
   306 
   307 
   307         r = scmutil.status(*r)
       
   308         if reversed:
   308         if reversed:
   309             # Reverse added and removed. Clear deleted, unknown and ignored as
   309             # Reverse added and removed. Clear deleted, unknown and ignored as
   310             # these make no sense to reverse.
   310             # these make no sense to reverse.
   311             r = scmutil.status(r.modified, r.removed, r.added, [], [], [],
   311             r = scmutil.status(r.modified, r.removed, r.added, [], [], [],
   312                                r.clean)
   312                                r.clean)
  1417 
  1417 
  1418             # update dirstate for files that are actually clean
  1418             # update dirstate for files that are actually clean
  1419             if fixup and listclean:
  1419             if fixup and listclean:
  1420                 clean += fixup
  1420                 clean += fixup
  1421 
  1421 
  1422         return [modified, added, removed, deleted, unknown, ignored, clean]
  1422         return scmutil.status(modified, added, removed, deleted, unknown,
       
  1423                               ignored, clean)
  1423 
  1424 
  1424     def _buildstatus(self, other, s, match, listignored, listclean,
  1425     def _buildstatus(self, other, s, match, listignored, listclean,
  1425                      listunknown):
  1426                      listunknown):
  1426         """build a status with respect to another context
  1427         """build a status with respect to another context
  1427 
  1428 
  1432         """
  1433         """
  1433         s = self._dirstatestatus(match, listignored, listclean, listunknown)
  1434         s = self._dirstatestatus(match, listignored, listclean, listunknown)
  1434         # Filter out symlinks that, in the case of FAT32 and NTFS filesytems,
  1435         # Filter out symlinks that, in the case of FAT32 and NTFS filesytems,
  1435         # might have accidentally ended up with the entire contents of the file
  1436         # might have accidentally ended up with the entire contents of the file
  1436         # they are susposed to be linking to.
  1437         # they are susposed to be linking to.
  1437         s[0] = self._filtersuspectsymlink(s[0])
  1438         s.modified[:] = self._filtersuspectsymlink(s.modified)
  1438         if other != self._repo['.']:
  1439         if other != self._repo['.']:
  1439             s = super(workingctx, self)._buildstatus(other, s, match,
  1440             s = super(workingctx, self)._buildstatus(other, s, match,
  1440                                                      listignored, listclean,
  1441                                                      listignored, listclean,
  1441                                                      listunknown)
  1442                                                      listunknown)
  1442         self._status = scmutil.status(*s)
  1443         self._status = s
  1443         return s
  1444         return s
  1444 
  1445 
  1445     def _matchstatus(self, other, match):
  1446     def _matchstatus(self, other, match):
  1446         """override the match method with a filter for directory patterns
  1447         """override the match method with a filter for directory patterns
  1447 
  1448