revpair: handle odd ranges (
issue3474)
--- a/mercurial/scmutil.py Wed May 23 00:25:29 2012 +0900
+++ b/mercurial/scmutil.py Wed May 30 14:13:57 2012 -0500
@@ -524,9 +524,11 @@
l = revrange(repo, revs)
if len(l) == 0:
+ if revs:
+ raise util.Abort(_('empty revision range'))
return repo.dirstate.p1(), None
- if len(l) == 1:
+ if len(l) == 1 and len(revs) == 1 and _revrangesep not in revs[0]:
return repo.lookup(l[0]), None
return repo.lookup(l[0]), repo.lookup(l[-1])
--- a/tests/test-diff-change.t Wed May 23 00:25:29 2012 +0900
+++ b/tests/test-diff-change.t Wed May 30 14:13:57 2012 -0500
@@ -29,6 +29,12 @@
-first
+second
+Test dumb revspecs (issue3474)
+
+ $ hg diff -r 2:2
+ $ hg diff -r "2 and 1"
+ abort: empty revision range
+ [255]
Testing diff --change when merge: