aboutsummaryrefslogtreecommitdiff
path: root/unpack-trees.c
diff options
context:
space:
mode:
authorClemens Buchacher <drizzd@aon.at>2009-01-01 21:54:33 +0100
committerJunio C Hamano <gitster@pobox.com>2009-01-05 12:48:43 -0800
commit7b9e3ce0255002075809917e0384cba3a0d18589 (patch)
tree19ba55daca9cdb138afbf468059c3b6c268941c1 /unpack-trees.c
parent837e5fe95d9d6e597b748d338e45cca231f558fa (diff)
downloadgit-7b9e3ce0255002075809917e0384cba3a0d18589.tar.gz
git-7b9e3ce0255002075809917e0384cba3a0d18589.tar.xz
unpack-trees: remove redundant path search in verify_absent
Since the only caller, verify_absent, relies on the fact that o->pos points to the next index entry anyways, there is no need to recompute its position. Furthermore, if a nondirectory entry were found, this would return too early, because there could still be an untracked directory in the way. This is currently not a problem, because verify_absent is only called if the index does not have this entry. Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'unpack-trees.c')
-rw-r--r--unpack-trees.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/unpack-trees.c b/unpack-trees.c
index 48e538ab7..556813eca 100644
--- a/unpack-trees.c
+++ b/unpack-trees.c
@@ -493,7 +493,7 @@ static int verify_clean_subdirectory(struct cache_entry *ce, const char *action,
* anything in the existing directory there.
*/
int namelen;
- int pos, i;
+ int i;
struct dir_struct d;
char *pathbuf;
int cnt = 0;
@@ -514,11 +514,7 @@ static int verify_clean_subdirectory(struct cache_entry *ce, const char *action,
* in that directory.
*/
namelen = strlen(ce->name);
- pos = index_name_pos(o->src_index, ce->name, namelen);
- if (0 <= pos)
- return 0; /* we have it as nondirectory */
- pos = -pos - 1;
- for (i = pos; i < o->src_index->cache_nr; i++) {
+ for (i = o->pos; i < o->src_index->cache_nr; i++) {
struct cache_entry *ce2 = o->src_index->cache[i];
int len = ce_namelen(ce2);
if (len < namelen ||