hgext/states.py
changeset 65 7c8f992d567e
parent 64 6a7dc5ca05b8
child 66 b1e64d8783f0
--- a/hgext/states.py	Tue Sep 13 00:45:42 2011 +0200
+++ b/hgext/states.py	Tue Sep 13 00:58:18 2011 +0200
@@ -648,8 +648,10 @@
 def wraprebasebuildstate(orig, repo, *args, **kwargs):
    result = orig(repo, *args, **kwargs)
    if result is not None:
-        revs = result[2]
-        base = repo.changelog.node(min(result[2]))
+        # rebase.nullmerge is issued in the detach case
+        rebase = extensions.find('rebase')
+        rebased = [rev for rev, rbst in result[2].items() if rbst != rebase.nullmerge]
+        base = repo.changelog.node(min(rebased))
         state = repo.nodestate(base)
         if not state.properties & _MUTABLE:
             raise util.Abort(_('can not rebase published changeset %s')