From db823d4a5a47d614895c959dce2a379a2364b677 Mon Sep 17 00:00:00 2001 From: Linus Torvalds Date: Thu, 5 May 2005 16:01:46 -0700 Subject: [PATCH] Fix symlink handling We really always want to have S_IFREG there for non-symlinks, otherwise we create corrupt index files. --- cache.h | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/cache.h b/cache.h index e6ce7312c..80f996705 100644 --- a/cache.h +++ b/cache.h @@ -89,11 +89,9 @@ struct cache_entry { #define ce_permissions(mode) (((mode) & 0100) ? 0755 : 0644) static inline unsigned int create_ce_mode(unsigned int mode) { - if (S_ISREG(mode)) - return htonl(S_IFREG | ce_permissions(mode)); if (S_ISLNK(mode)) return htonl(S_IFLNK); - return htonl(mode); + return htonl(S_IFREG | ce_permissions(mode)); } #define cache_entry_size(len) ((offsetof(struct cache_entry,name) + (len) + 8) & ~7) -- 2.45.2