--- 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')