diff -r a1e4fa9330d8 -r 421c9b3f2f4e mercurial/commit.py --- a/mercurial/commit.py Thu Aug 01 11:43:10 2024 -0400 +++ b/mercurial/commit.py Thu Aug 01 13:38:31 2024 +0100 @@ -214,15 +214,15 @@ elif narrow_action == mergestate.CHANGE_ADDED: files.mark_added(f) added.append(f) - m[f] = m2[f] + fnode = m2[f] flags = m2ctx.find(f)[1] or b'' - m.setflag(f, flags) + m.set(f, fnode, flags) elif narrow_action == mergestate.CHANGE_MODIFIED: files.mark_touched(f) added.append(f) - m[f] = m2[f] + fnode = m2[f] flags = m2ctx.find(f)[1] or b'' - m.setflag(f, flags) + m.set(f, fnode, flags) else: msg = _(b"corrupted mergestate, unknown narrow action: %b") hint = _(b"restart the merge") @@ -234,7 +234,7 @@ removed.append(f) else: added.append(f) - m[f], is_touched = _filecommit( + fnode, is_touched = _filecommit( repo, fctx, m1, m2, linkrev, tr, writefilecopymeta, ms ) if is_touched: @@ -244,7 +244,7 @@ files.mark_merged(f) else: files.mark_touched(f) - m.setflag(f, fctx.flags()) + m.set(f, fnode, fctx.flags()) except OSError: repo.ui.warn(_(b"trouble committing %s!\n") % uipathfn(f)) raise