X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=cache.h;h=69801b02d535dbbe49535c876979cd093c6db2e1;hb=fc4c4cd21c783b6dc387002c6e018d26f7405e9f;hp=255e6b5cc7aa799eee892dcd3632cd0656e6dd1e;hpb=b9aa1f9e9d8f05f350c2e14d6389a5e8596033e9;p=git.git diff --git a/cache.h b/cache.h index 255e6b5c..69801b02 100644 --- a/cache.h +++ b/cache.h @@ -106,6 +106,9 @@ static inline unsigned int create_ce_mode(unsigned int mode) return htonl(S_IFLNK); return htonl(S_IFREG | ce_permissions(mode)); } +#define canon_mode(mode) \ + (S_ISREG(mode) ? (S_IFREG | ce_permissions(mode)) : \ + S_ISLNK(mode) ? S_IFLNK : S_IFDIR) #define cache_entry_size(len) ((offsetof(struct cache_entry,name) + (len) + 8) & ~7)