mercurial/commands.py
branchstable
changeset 20107 2ca325ea57fa
parent 20093 1dee888b22f7
child 20108 af12f58e2aa0
child 20146 aa192af94321
--- a/mercurial/commands.py	Wed Nov 20 22:03:15 2013 +0100
+++ b/mercurial/commands.py	Wed Nov 06 19:01:14 2013 -0600
@@ -836,10 +836,12 @@
                     bookmarks.deletedivergent(repo, [target], mark)
                     return
 
+                # consider successor changesets as well
+                foreground = obsolete.foreground(repo, [marks[mark]])
                 deletefrom = [b for b in divs
                               if repo[b].rev() in anc or b == target]
                 bookmarks.deletedivergent(repo, deletefrom, mark)
-                if bmctx.rev() in anc:
+                if bmctx.rev() in anc or target in foreground:
                     ui.status(_("moving bookmark '%s' forward from %s\n") %
                               (mark, short(bmctx.node())))
                     return