histedit: ensure rules return short hex at all time
authorPierre-Yves David <pierre-yves.david@logilab.fr>
Thu, 18 Apr 2013 15:10:01 +0200
changeset 19045 080b801c34f1
parent 19044 f77c23ec09f7
child 19046 36adbbe960ca
histedit: ensure rules return short hex at all time Handling homogeneous data is both simpler and safer.
hgext/histedit.py
--- a/hgext/histedit.py	Thu Apr 18 13:51:27 2013 +0200
+++ b/hgext/histedit.py	Thu Apr 18 15:10:01 2013 +0200
@@ -724,11 +724,12 @@
         action, rest = r.split(' ', 1)
         ha = rest.strip().split(' ', 1)[0]
         try:
-            if repo[ha] not in ctxs:
-                raise util.Abort(
-                    _('may not use changesets other than the ones listed'))
+            ha = str(repo[ha])  # ensure its a short hash
         except error.RepoError:
             raise util.Abort(_('unknown changeset %s listed') % ha)
+        if repo[ha] not in ctxs:
+            raise util.Abort(
+                _('may not use changesets other than the ones listed'))
         if action not in actiontable:
             raise util.Abort(_('unknown action "%s"') % action)
         parsed.append([action, ha])