diff options
author | Junio C Hamano <gitster@pobox.com> | 2013-10-23 13:21:26 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2013-10-23 13:21:26 -0700 |
commit | eeb8e8373f68b706f5fc8a00760c3dedf239db70 (patch) | |
tree | 20e741eb0d3212b686cd23701dc259acc6c98da6 /builtin | |
parent | db9bdfbeb044f73a01f6325f4ad61413666a2ce0 (diff) | |
parent | 63cdcfa40f5791dd233c574f633e56e4058e5f8e (diff) | |
download | git-eeb8e8373f68b706f5fc8a00760c3dedf239db70.tar.gz git-eeb8e8373f68b706f5fc8a00760c3dedf239db70.tar.xz |
Merge branch 'jc/pack-objects'
* jc/pack-objects:
pack-objects: shrink struct object_entry
Diffstat (limited to 'builtin')
-rw-r--r-- | builtin/pack-objects.c | 23 |
1 files changed, 12 insertions, 11 deletions
diff --git a/builtin/pack-objects.c b/builtin/pack-objects.c index e86cd5729..36273dd6f 100644 --- a/builtin/pack-objects.c +++ b/builtin/pack-objects.c @@ -38,17 +38,18 @@ struct object_entry { void *delta_data; /* cached delta (uncompressed) */ unsigned long delta_size; /* delta data size (uncompressed) */ unsigned long z_delta_size; /* delta data size (compressed) */ - unsigned int hash; /* name hint hash */ enum object_type type; enum object_type in_pack_type; /* could be delta */ + uint32_t hash; /* name hint hash */ unsigned char in_pack_header_size; - unsigned char preferred_base; /* we do not pack this, but is available - * to be used as the base object to delta - * objects against. - */ - unsigned char no_try_delta; - unsigned char tagged; /* near the very tip of refs */ - unsigned char filled; /* assigned write-order */ + unsigned preferred_base:1; /* + * we do not pack this, but is available + * to be used as the base object to delta + * objects against. + */ + unsigned no_try_delta:1; + unsigned tagged:1; /* near the very tip of refs */ + unsigned filled:1; /* assigned write-order */ }; /* @@ -859,9 +860,9 @@ static void rehash_objects(void) } } -static unsigned name_hash(const char *name) +static uint32_t name_hash(const char *name) { - unsigned c, hash = 0; + uint32_t c, hash = 0; if (!name) return 0; @@ -908,7 +909,7 @@ static int add_object_entry(const unsigned char *sha1, enum object_type type, struct packed_git *p, *found_pack = NULL; off_t found_offset = 0; int ix; - unsigned hash = name_hash(name); + uint32_t hash = name_hash(name); ix = nr_objects ? locate_object_entry_hash(sha1) : -1; if (ix >= 0) { |