[PATCH 3/3] unpack-trees: remove redundant path search in verify_absent
- From
Clemens Buchacher <drizzd@aon.at>
- Date
- Jan 1, 2009, 20:54 UTC
- Message-ID
- <1230843273-11056-4-git-send-email-drizzd@aon.at>
- In-Reply-To
- <1230843273-11056-3-git-send-email-drizzd@aon.at>
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. --- unpack-trees.c | 8 ++------ 1 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/unpack-trees.c b/unpack-trees.c index f8e2484..c4dc6dc 100644 --- a/unpack-trees.c +++ b/unpack-trees.c @@ -495,7 +495,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; @@ -516,11 +516,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 ||
-- 1.6.1