hgext/narrow/narrowcommands.py
changeset 41028 095a0a63ad88
parent 41027 74e023f5a922
child 41039 54c3b4bd01f2
--- a/hgext/narrow/narrowcommands.py	Fri Nov 23 22:12:04 2018 -0800
+++ b/hgext/narrow/narrowcommands.py	Wed Dec 05 15:30:56 2018 -0800
@@ -242,6 +242,10 @@
         repo.destroying()
 
         with repo.transaction("narrowing"):
+            # Update narrowspec before removing revlogs, so repo won't be
+            # corrupt in case of crash
+            repo.setnarrowpats(newincludes, newexcludes)
+
             for f in todelete:
                 ui.status(_('deleting %s\n') % f)
                 util.unlinkpath(repo.svfs.join(f))
@@ -249,7 +253,6 @@
 
             _narrowcleanupwdir(repo, oldincludes, oldexcludes, newincludes,
                                newexcludes, oldmatch, newmatch)
-            repo.setnarrowpats(newincludes, newexcludes)
 
         repo.destroyed()