aboutsummaryrefslogtreecommitdiff
path: root/name-hash.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2008-03-21 15:53:00 -0700
committerJunio C Hamano <gitster@pobox.com>2008-04-09 01:22:25 -0700
commitdf292c791ab790340cc9e3577a073bcb9d1900ea (patch)
treed3f1995f5d8c7c46779bd071703eb8ea6a46e3ed /name-hash.c
parent96872bc200c41407607019c1f0fb005840f576a2 (diff)
downloadgit-df292c791ab790340cc9e3577a073bcb9d1900ea.tar.gz
git-df292c791ab790340cc9e3577a073bcb9d1900ea.tar.xz
Make "index_name_exists()" return the cache_entry it found
This allows verify_absent() in unpack_trees() to use the hash chains rather than looking it up using the binary search. Perhaps more importantly, it's also going to be useful for the next phase, where we actually start looking at the cache entry when we do case-insensitive lookups and checking the result. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'name-hash.c')
-rw-r--r--name-hash.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/name-hash.c b/name-hash.c
index e56eb16c2..267814893 100644
--- a/name-hash.c
+++ b/name-hash.c
@@ -54,7 +54,7 @@ void add_name_hash(struct index_state *istate, struct cache_entry *ce)
hash_index_entry(istate, ce);
}
-int index_name_exists(struct index_state *istate, const char *name, int namelen)
+struct cache_entry *index_name_exists(struct index_state *istate, const char *name, int namelen)
{
unsigned int hash = hash_name(name, namelen);
struct cache_entry *ce;
@@ -65,9 +65,9 @@ int index_name_exists(struct index_state *istate, const char *name, int namelen)
while (ce) {
if (!(ce->ce_flags & CE_UNHASHED)) {
if (!cache_name_compare(name, namelen, ce->name, ce->ce_flags))
- return 1;
+ return ce;
}
ce = ce->next;
}
- return 0;
+ return NULL;
}