merge with stable
authorMatt Mackall <mpm@selenic.com>
Wed, 06 Jul 2011 19:25:53 -0500
changeset 14844 7aaae5466ad3
parent 14840 11b5a5d2ca8b (current diff)
parent 14843 e9264b45237d (diff)
child 14845 677339529a53
merge with stable
--- a/hgext/win32mbcs.py	Tue Jul 05 14:36:33 2011 +0300
+++ b/hgext/win32mbcs.py	Wed Jul 06 19:25:53 2011 -0500
@@ -129,7 +129,8 @@
 funcs = '''os.path.join os.path.split os.path.splitext
  os.path.splitunc os.path.normpath os.path.normcase os.makedirs
  mercurial.util.endswithsep mercurial.util.splitpath mercurial.util.checkcase
- mercurial.util.fspath mercurial.util.pconvert mercurial.util.normpath'''
+ mercurial.util.fspath mercurial.util.pconvert mercurial.util.normpath
+ mercurial.util.checkwinfilename mercurial.util.checkosfilename'''
 
 # codec and alias names of sjis and big5 to be faked.
 problematic_encodings = '''big5 big5-tw csbig5 big5hkscs big5-hkscs
--- a/mercurial/revset.py	Tue Jul 05 14:36:33 2011 +0300
+++ b/mercurial/revset.py	Wed Jul 06 19:25:53 2011 -0500
@@ -928,6 +928,14 @@
     elif op == 'group':
         return optimize(x[1], small)
     elif op in 'range list parent ancestorspec':
+        if op == 'parent':
+            # x^:y means (x^) : y, not x ^ (:y)
+            post = ('parentpost', x[1])
+            if x[2][0] == 'dagrangepre':
+                return optimize(('dagrange', post, x[2][1]), small)
+            elif x[2][0] == 'rangepre':
+                return optimize(('range', post, x[2][1]), small)
+
         wa, ta = optimize(x[1], small)
         wb, tb = optimize(x[2], small)
         return wa + wb, (op, ta, tb)