Handle symlinks properly

Now it's really brown paper bag time...
This commit is contained in:
Eelco Dolstra 2013-02-28 14:51:08 +01:00
parent 88936411bc
commit f45c731cd7

View file

@ -536,7 +536,7 @@ static void canonicalisePathMetaData_(const Path & path, uid_t fromUid, InodesSe
if (inodesSeen.find(Inode(st.st_dev, st.st_ino)) == inodesSeen.end())
throw BuildError(format("invalid ownership on file `%1%'") % path);
mode_t mode = st.st_mode & ~S_IFMT;
assert(st.st_uid == geteuid() && (mode == 0444 || mode == 0555) && st.st_mtime == mtimeStore);
assert(st.st_uid == geteuid() && (S_ISLNK(st.st_mode) ? 1 : mode == 0444 || mode == 0555) && st.st_mtime == mtimeStore);
return;
}