mercurial/context.py
changeset 23301 c10dc5568069
parent 23257 37c57a7cf160
child 23302 24f67ad49da7
--- a/mercurial/context.py	Wed Nov 12 23:50:21 2014 -0800
+++ b/mercurial/context.py	Wed Nov 12 21:19:07 2014 -0800
@@ -304,9 +304,12 @@
         r = ctx2._buildstatus(ctx1, r, match, listignored, listclean,
                               listunknown)
 
+        r = scmutil.status(*r)
         if reversed:
-            # reverse added and removed
-            r[1], r[2] = r[2], r[1]
+            # Reverse added and removed. Clear deleted, unknown and ignored as
+            # these make no sense to reverse.
+            r = scmutil.status(r.modified, r.removed, r.added, [], [], [],
+                               r.clean)
 
         if listsubrepos:
             for subpath, sub in scmutil.itersubrepos(ctx1, ctx2):
@@ -325,8 +328,7 @@
         for l in r:
             l.sort()
 
-        # we return a tuple to signify that this list isn't changing
-        return scmutil.status(*r)
+        return r
 
 
 def makememctx(repo, parents, text, user, date, branch, files, store,