mirror of
https://github.com/git/git.git
synced 2024-09-22 03:12:08 +02:00
Fix symlink handling
We really always want to have S_IFREG there for non-symlinks, otherwise we create corrupt index files.
This commit is contained in:
parent
ed4eeaf203
commit
db823d4a5a
4
cache.h
4
cache.h
@ -89,11 +89,9 @@ struct cache_entry {
|
|||||||
#define ce_permissions(mode) (((mode) & 0100) ? 0755 : 0644)
|
#define ce_permissions(mode) (((mode) & 0100) ? 0755 : 0644)
|
||||||
static inline unsigned int create_ce_mode(unsigned int mode)
|
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))
|
if (S_ISLNK(mode))
|
||||||
return htonl(S_IFLNK);
|
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)
|
#define cache_entry_size(len) ((offsetof(struct cache_entry,name) + (len) + 8) & ~7)
|
||||||
|
Loading…
Reference in New Issue
Block a user