--- a/mercurial/context.py Wed Apr 23 16:08:20 2014 -0500
+++ b/mercurial/context.py Thu Apr 24 17:31:20 2014 -0500
@@ -892,14 +892,7 @@
if user:
self._user = user
if changes:
- self._status = list(changes[:4])
- self._unknown = changes[4]
- self._ignored = changes[5]
- self._clean = changes[6]
- else:
- self._unknown = None
- self._ignored = None
- self._clean = None
+ self._status = changes
self._extra = {}
if extra:
@@ -974,7 +967,7 @@
copied = self._repo.dirstate.copies()
ff = self._flagfunc
- modified, added, removed, deleted = self._status
+ modified, added, removed, deleted = self._status[:4]
for i, l in (("a", added), ("m", modified)):
for f in l:
orig = copied.get(f, f)
@@ -992,7 +985,7 @@
@propertycache
def _status(self):
- return self._repo.status()[:4]
+ return self._repo.status()
@propertycache
def _user(self):
@@ -1023,14 +1016,11 @@
def deleted(self):
return self._status[3]
def unknown(self):
- assert self._unknown is not None # must call status first
- return self._unknown
+ return self._status[4]
def ignored(self):
- assert self._ignored is not None # must call status first
- return self._ignored
+ return self._status[5]
def clean(self):
- assert self._clean is not None # must call status first
- return self._clean
+ return self._status[6]
def branch(self):
return encoding.tolocal(self._extra['branch'])
def closesbranch(self):
@@ -1395,20 +1385,10 @@
listignored, listclean, listunknown = ignored, clean, unknown
s = self._dirstatestatus(match=match, ignored=listignored,
clean=listclean, unknown=listunknown)
- modified, added, removed, deleted, unknown, ignored, clean = s
- modified = self._filtersuspectsymlink(modified)
-
- self._unknown = self._ignored = self._clean = None
- if listunknown:
- self._unknown = unknown
- if listignored:
- self._ignored = ignored
- if listclean:
- self._clean = clean
- self._status = modified, added, removed, deleted
-
- return modified, added, removed, deleted, unknown, ignored, clean
+ s[0] = self._filtersuspectsymlink(s[0])
+ self._status = s
+ return s
class committablefilectx(basefilectx):