hgext3rd/evolve/__init__.py
changeset 2667 e7079bba383d
parent 2659 166ca0aba0ea
child 2678 da2b3e5e4f69
--- a/hgext3rd/evolve/__init__.py	Tue Jun 27 09:49:35 2017 +0200
+++ b/hgext3rd/evolve/__init__.py	Tue Jun 27 15:21:38 2017 +0200
@@ -2637,6 +2637,12 @@
     finally:
         lockmod.release(tr, lock, wlock)
 
+def presplitupdate(repo, ui, prev, ctx):
+    """prepare the working directory for a split (for topic hooking)
+    """
+    hg.update(repo, prev)
+    commands.revert(ui, repo, rev=ctx.rev(), all=True)
+
 @eh.command(
     '^split',
     [('r', 'rev', [], _("revision to split")),
@@ -2682,9 +2688,9 @@
         if bookactive is not None:
             repo.ui.status(_("(leaving bookmark %s)\n") % repo._activebookmark)
         bookmarksmod.deactivate(repo)
-        hg.update(repo, prev)
-
-        commands.revert(ui, repo, rev=r, all=True)
+
+        # Prepare the working directory
+        presplitupdate(repo, ui, prev, ctx)
 
         def haschanges():
             modified, added, removed, deleted = repo.status()[:4]