Re: Segfault with merge-tree on multiple Git versions
John Keeping <john@keeping.me.uk> writes:
Show 22 quoted lines
> merge-tree: fix typo in merge-tree.c::unresolved
>
> When calculating whether there is a d/f conflict, the calculation of
> whether both sides are directories generates an incorrect references
> mask because it does not use the loop index to set the correct bit.
> Fix this typo.
>
> Signed-off-by: John Keeping <john@keeping.me.uk>
>
> diff --git a/builtin/merge-tree.c b/builtin/merge-tree.c
> index e0d0b7d..bc912e3 100644
> --- a/builtin/merge-tree.c
> +++ b/builtin/merge-tree.c
> @@ -245,7 +245,7 @@ static void unresolved(const struct traverse_info *info, struct name_entry n[3])
> unsigned dirmask = 0, mask = 0;
>
> for (i = 0; i < 3; i++) {
> - mask |= (1 << 1);
> + mask |= (1 << i);
> if (n[i].mode && S_ISDIR(n[i].mode))
> dirmask |= (1 << i);
> }--
Thomas Rast
trast@{inf,student}.ethz.ch