add: use separate ADD_CACHE_RENORMALIZE flag
authorJeff King <peff@peff.net>
Thu, 17 Jan 2019 16:27:11 +0000 (11:27 -0500)
committerJunio C Hamano <gitster@pobox.com>
Thu, 17 Jan 2019 21:40:21 +0000 (13:40 -0800)
commit9e5da3d055c558fc6492d3b996736ff7e8d115c3
tree926b700c6e2b8af1d0a206be0c5e27e88b2f739c
parent98cdfbb84ad2ed6a2eb43dafa357a70a4b0a0fad
add: use separate ADD_CACHE_RENORMALIZE flag

Commit 9472935d81 (add: introduce "--renormalize", 2017-11-16) taught
git-add to pass HASH_RENORMALIZE to add_to_index(), which then passes
the flag along to index_path(). However, the flags taken by
add_to_index() and the ones taken by index_path() are distinct
namespaces. We cannot take HASH_* flags in add_to_index(), because they
overlap with the ADD_CACHE_* flags we already take (in this case,
HASH_RENORMALIZE conflicts with ADD_CACHE_IGNORE_ERRORS).

We can solve this by adding a new ADD_CACHE_RENORMALIZE flag, and using
it to set HASH_RENORMALIZE within add_to_index(). In order to make it
clear that these two flags come from distinct sets, let's also change
the name "newflags" in the function to "hash_flags".

Reported-by: Dmitriy Smirnov <dmitriy.smirnov@jetbrains.com>
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/add.c
cache.h
read-cache.c
t/t0025-crlf-renormalize.sh