From patchwork Mon Mar 18 21:42:47 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [in, crew] applyupdates: assign variable before we try to use it (issue3855) From: Kevin Bullock X-Patchwork-Id: 1137 Message-Id: <0705ad73e87878304eb2.1363642967@opendoor.mincava.umn.edu> To: mercurial-devel@selenic.com Date: Mon, 18 Mar 2013 16:42:47 -0500 # HG changeset patch # User Kevin Bullock # Date 1363642640 18000 # Node ID 0705ad73e87878304eb21282feaf258f18cb2083 # Parent 9e39a717a23e5cf91593336b5949e01cc6958a93 applyupdates: assign variable before we try to use it (issue3855) The variable 'fd' was getting used with a value left over from a prior iteration, causing a KeyError: '.hgsubstate'. diff --git a/mercurial/merge.py b/mercurial/merge.py --- a/mercurial/merge.py +++ b/mercurial/merge.py @@ -471,11 +471,11 @@ def applyupdates(repo, actions, wctx, mc f, m, args, msg = a progress(_updating, z + i + 1, item=f, total=numupdates, unit=_files) if m == "m": # merge + f2, fd, move = args if fd == '.hgsubstate': # subrepo states need updating subrepo.submerge(repo, wctx, mctx, wctx.ancestor(mctx), overwrite) continue - f2, fd, move = args audit(fd) r = ms.resolve(fd, wctx, mctx) if r is not None and r > 0: