diff -r abfe6a8e619b -r 1c46b18b0e1c mercurial/hbisect.py --- a/mercurial/hbisect.py Tue Nov 12 16:23:52 2013 +0900 +++ b/mercurial/hbisect.py Fri Nov 22 17:26:58 2013 -0600 @@ -63,7 +63,8 @@ badrev, ancestors = buildancestors(state['good'], state['bad']) bad = changelog.node(badrev) if not ancestors: # now we're confused - if len(state['bad']) == 1 and len(state['good']) == 1: + if (len(state['bad']) == 1 and len(state['good']) == 1 and + state['bad'] != state['good']): raise util.Abort(_("starting revisions are not directly related")) raise util.Abort(_("inconsistent state, %s:%s is good and bad") % (badrev, short(bad)))