mercurial/revset.py
changeset 26143 42bb1812686f
parent 26102 5618858dce26
child 26212 0d8df1f510c6
--- a/mercurial/revset.py	Mon Aug 31 23:29:15 2015 +0900
+++ b/mercurial/revset.py	Tue Sep 01 16:46:05 2015 -0700
@@ -2067,14 +2067,17 @@
             r = int(t)
             if str(r) != t or r not in cl:
                 raise ValueError
+            revs = [r]
         except ValueError:
-            r = repo[t].rev()
-        if r in seen:
-            continue
-        if (r in subset
-            or r == node.nullrev and isinstance(subset, fullreposet)):
-            ls.append(r)
-        seen.add(r)
+            revs = stringset(repo, subset, t)
+
+        for r in revs:
+            if r in seen:
+                continue
+            if (r in subset
+                or r == node.nullrev and isinstance(subset, fullreposet)):
+                ls.append(r)
+            seen.add(r)
     return baseset(ls)
 
 # for internal use