Am 15.08.19 um 18:21 schrieb Varun Naik:
> diff --git a/unpack-trees.c b/unpack-trees.c
> index 50189909b8..5e6d88f36b 100644
> --- a/unpack-trees.c
> +++ b/unpack-trees.c
> @@ -1658,9 +1658,10 @@ static int same(const struct cache_entry *a, const 
> struct cache_entry *b)
>               return 0;
>       if (!a && !b)
>               return 1;
> -     if ((a->ce_flags | b->ce_flags) & CE_CONFLICTED)
> +     if ((a->ce_flags | b->ce_flags) & (CE_CONFLICTED | CE_INTENT_TO_ADD))
>               return 0;

If any of the two entries has the intent-to-add flag set, they won't be
considered the same and we exit early.

>       return a->ce_mode == b->ce_mode &&
> +            !ce_intent_to_add(a) == !ce_intent_to_add(b) &&

So if we reach this point, the flag can't be set, ce_intent_to_add()
returns 0 on both sides and thus the added condition is always true.
You might as well remove it.

>              oideq(&a->oid, &b->oid);
>  }
>
>

Reply via email to