mercurial/revset.py
changeset 25307 4d1e56b29a91
parent 25270 61b3529e2377
child 25308 036c26b08b71
--- a/mercurial/revset.py	Sun Apr 26 18:05:23 2015 +0900
+++ b/mercurial/revset.py	Sun Apr 26 18:27:32 2015 +0900
@@ -2162,8 +2162,10 @@
     elif op == 'or':
         wa, ta = optimize(x[1], False)
         wb, tb = optimize(x[2], False)
-        if wb < wa:
-            wb, wa = wa, wb
+        # we can't reorder trees by weight because it would change the order.
+        # ("sort(a + b)" == "sort(b + a)", but "a + b" != "b + a")
+        #   if wb < wa:
+        #       tb, ta = ta, tb
         return max(wa, wb), (op, ta, tb)
     elif op == 'not':
         # Optimize not public() to _notpublic() because we have a fast version