narrowmerge: iterate over a copy of dict items so we can mutate the dict
authorAugie Fackler <augie@google.com>
Tue, 13 Feb 2018 13:37:43 -0500
changeset 36165 53fe5a1a92bd
parent 36164 c38e9248f531
child 36166 ccf7ae119769
narrowmerge: iterate over a copy of dict items so we can mutate the dict Differential Revision: https://phab.mercurial-scm.org/D2238
hgext/narrow/narrowmerge.py
--- a/hgext/narrow/narrowmerge.py	Tue Feb 13 18:00:59 2018 -0500
+++ b/hgext/narrow/narrowmerge.py	Tue Feb 13 13:37:43 2018 -0500
@@ -28,7 +28,9 @@
         nooptypes = set(['k']) # TODO: handle with nonconflicttypes
         nonconflicttypes = set('a am c cm f g r e'.split())
         narrowmatch = repo.narrowmatch()
-        for f, action in actions.items():
+        # We mutate the items in the dict during iteration, so iterate
+        # over a copy.
+        for f, action in list(actions.items()):
             if narrowmatch(f):
                 pass
             elif not branchmerge: