# HG changeset patch # User Augie Fackler # Date 1518547063 18000 # Node ID 53fe5a1a92bd693ae425dc811050f66d5ff888f9 # Parent c38e9248f5312384c541c260d65c108101039317 narrowmerge: iterate over a copy of dict items so we can mutate the dict Differential Revision: https://phab.mercurial-scm.org/D2238 diff -r c38e9248f531 -r 53fe5a1a92bd 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: