summaryrefslogtreecommitdiff
path: root/read-cache.c
diff options
context:
space:
mode:
authorNguyễn Thái Ngọc Duy <pclouds@gmail.com>2014-06-13 12:19:25 (GMT)
committerJunio C Hamano <gitster@pobox.com>2014-06-13 18:49:38 (GMT)
commitce51bf09f8f0de70673b7cbdbc0e0df0b07e1def (patch)
treeb86d45a04f0e5eb5b70c3e4cba78056c3dbde607 /read-cache.c
parent626f35c89332059980251f7cdf8e94bc49d68834 (diff)
downloadgit-ce51bf09f8f0de70673b7cbdbc0e0df0b07e1def.zip
git-ce51bf09f8f0de70673b7cbdbc0e0df0b07e1def.tar.gz
git-ce51bf09f8f0de70673b7cbdbc0e0df0b07e1def.tar.bz2
read-cache: store in-memory flags in the first 12 bits of ce_flags
We're running out of room for in-memory flags. But since b60e188 (Strip namelen out of ce_flags into a ce_namelen field - 2012-07-11), we copy the namelen (first 12 bits) to ce_namelen field. So those bits are free to use. Just make sure we do not accidentally write any in-memory flags back. Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'read-cache.c')
-rw-r--r--read-cache.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/read-cache.c b/read-cache.c
index a7b48a9..5e8c06c 100644
--- a/read-cache.c
+++ b/read-cache.c
@@ -1702,7 +1702,7 @@ static char *copy_cache_entry_to_ondisk(struct ondisk_cache_entry *ondisk,
ondisk->size = htonl(ce->ce_stat_data.sd_size);
hashcpy(ondisk->sha1, ce->sha1);
- flags = ce->ce_flags;
+ flags = ce->ce_flags & ~CE_NAMEMASK;
flags |= (ce_namelen(ce) >= CE_NAMEMASK ? CE_NAMEMASK : ce_namelen(ce));
ondisk->flags = htons(flags);
if (ce->ce_flags & CE_EXTENDED) {