summaryrefslogtreecommitdiff
path: root/builtin/update-index.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2012-07-23 20:55:16 -0700
committerJunio C Hamano <gitster@pobox.com>2012-07-23 20:55:21 -0700
commit30ea575876f61c38c59cd578afd8e8789857094b (patch)
tree581da17bd126cf8f6dc45325a80551c4818622ab /builtin/update-index.c
parent6da9ded763b69685149c2f9a752e2005261bf0c3 (diff)
parentb60e188c51242b72061b5f2f0d4df80397f6125a (diff)
downloadgit-30ea575876f61c38c59cd578afd8e8789857094b.tar.gz
Merge branch 'tg/ce-namelen-field'
Split lower bits of ce_flags field and creates a new ce_namelen field in the in-core index structure. * tg/ce-namelen-field: Strip namelen out of ce_flags into a ce_namelen field
Diffstat (limited to 'builtin/update-index.c')
-rw-r--r--builtin/update-index.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/builtin/update-index.c b/builtin/update-index.c
index 5a4e9ea55a..4ce341ceeb 100644
--- a/builtin/update-index.c
+++ b/builtin/update-index.c
@@ -95,7 +95,8 @@ static int add_one_path(struct cache_entry *old, const char *path, int len, stru
size = cache_entry_size(len);
ce = xcalloc(1, size);
memcpy(ce->name, path, len);
- ce->ce_flags = len;
+ ce->ce_flags = create_ce_flags(0);
+ ce->ce_namelen = len;
fill_stat_cache_info(ce, st);
ce->ce_mode = ce_mode_from_stat(old, st->st_mode);
@@ -229,7 +230,8 @@ static int add_cacheinfo(unsigned int mode, const unsigned char *sha1,
hashcpy(ce->sha1, sha1);
memcpy(ce->name, path, len);
- ce->ce_flags = create_ce_flags(len, stage);
+ ce->ce_flags = create_ce_flags(stage);
+ ce->ce_namelen = len;
ce->ce_mode = create_ce_mode(mode);
if (assume_unchanged)
ce->ce_flags |= CE_VALID;
@@ -427,7 +429,8 @@ static struct cache_entry *read_one_ent(const char *which,
hashcpy(ce->sha1, sha1);
memcpy(ce->name, path, namelen);
- ce->ce_flags = create_ce_flags(namelen, stage);
+ ce->ce_flags = create_ce_flags(stage);
+ ce->ce_namelen = namelen;
ce->ce_mode = create_ce_mode(mode);
return ce;
}