X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=cache.h;h=88c2fa8d95b2cf6c0b2cd78c074659885625766d;hb=b8f80925e3cdf229f03245f2ebb02323ddd98118;hp=b48884225df02bd6343f889d46e9193d1514659c;hpb=fcf712e60e3221a7971cb2ad89e61c565172f524;p=git.git diff --git a/cache.h b/cache.h index b4888422..88c2fa8d 100644 --- a/cache.h +++ b/cache.h @@ -65,8 +65,14 @@ struct cache_entry { #define CE_NAMEMASK (0x0fff) #define CE_STAGEMASK (0x3000) +#define CE_STAGESHIFT 12 -#define create_ce_flags(len, stage) htons((len) | ((stage) << 12)) +#define create_ce_flags(len, stage) htons((len) | ((stage) << CE_STAGESHIFT)) +#define ce_namelen(ce) (CE_NAMEMASK & ntohs((ce)->ce_flags)) +#define ce_size(ce) cache_entry_size(ce_namelen(ce)) +#define ce_stage(ce) ((CE_STAGEMASK & ntohs((ce)->ce_flags)) >> CE_STAGESHIFT) + +#define cache_entry_size(len) ((offsetof(struct cache_entry,name) + (len) + 8) & ~7) const char *sha1_file_directory; struct cache_entry **active_cache; @@ -75,10 +81,6 @@ unsigned int active_nr, active_alloc; #define DB_ENVIRONMENT "SHA1_FILE_DIRECTORY" #define DEFAULT_DB_ENVIRONMENT ".git/objects" -#define cache_entry_size(len) ((offsetof(struct cache_entry,name) + (len) + 8) & ~7) -#define ce_namelen(ce) (CE_NAMEMASK & ntohs((ce)->ce_flags)) -#define ce_size(ce) cache_entry_size(ce_namelen(ce)) - #define alloc_nr(x) (((x)+16)*3/2) /* Initialize and use the cache information */