Merge branch 'kb/name-hash' into maint-1.8.1
* kb/name-hash: name-hash.c: fix endless loop with core.ignorecase=true
This commit is contained in:
@ -46,7 +46,7 @@ static void replace_index_entry(struct index_state *istate, int nr, struct cache
|
||||
{
|
||||
struct cache_entry *old = istate->cache[nr];
|
||||
|
||||
remove_name_hash(old);
|
||||
remove_name_hash(istate, old);
|
||||
set_index_entry(istate, nr, ce);
|
||||
istate->cache_changed = 1;
|
||||
}
|
||||
@ -456,7 +456,7 @@ int remove_index_entry_at(struct index_state *istate, int pos)
|
||||
struct cache_entry *ce = istate->cache[pos];
|
||||
|
||||
record_resolve_undo(istate, ce);
|
||||
remove_name_hash(ce);
|
||||
remove_name_hash(istate, ce);
|
||||
istate->cache_changed = 1;
|
||||
istate->cache_nr--;
|
||||
if (pos >= istate->cache_nr)
|
||||
@ -479,7 +479,7 @@ void remove_marked_cache_entries(struct index_state *istate)
|
||||
|
||||
for (i = j = 0; i < istate->cache_nr; i++) {
|
||||
if (ce_array[i]->ce_flags & CE_REMOVE)
|
||||
remove_name_hash(ce_array[i]);
|
||||
remove_name_hash(istate, ce_array[i]);
|
||||
else
|
||||
ce_array[j++] = ce_array[i];
|
||||
}
|
||||
@ -1511,8 +1511,7 @@ int discard_index(struct index_state *istate)
|
||||
istate->cache_changed = 0;
|
||||
istate->timestamp.sec = 0;
|
||||
istate->timestamp.nsec = 0;
|
||||
istate->name_hash_initialized = 0;
|
||||
free_hash(&istate->name_hash);
|
||||
free_name_hash(istate);
|
||||
cache_tree_free(&(istate->cache_tree));
|
||||
istate->initialized = 0;
|
||||
|
||||
|
Reference in New Issue
Block a user