[PATCH 2 of 2 stable] merge: fix crash on criss cross merge with dir move and delete (issue5020)
Mads Kiilerich
mads at kiilerich.com
Wed Feb 1 01:15:57 UTC 2017
On 01/31/2017 03:49 PM, Yuya Nishihara wrote:
>
>> @@ -1029,7 +1032,19 @@ def calculateupdates(repo, wctx, mctx, a
>> repo.ui.warn(_(' %s: ambiguous merge - picked %s action\n') %
>> (f, m))
>> actions[f] = l[0]
>> + if m == 'dm':
>> + dms.append(f)
>> continue
>> + # Work around 'dm' that can cause multiple actions for the same file
>> + for f in dms:
>> + dm, (f0, flags), msg = actions[f]
>> + assert dm == 'dm', dm
>> + m, args, msg = actions[f0]
> I was a bit worried whether actions[f0] always exist, but that seemed
> unnecessary concern.
I agree it doesn't seem to be a valid concern but I can't give a
convincing proof. I thus sent patch to make it more safe, just incase
the concern should be valid.
/Mads
More information about the Mercurial-devel
mailing list