Fix reading symlinks

The st_size field of a symlink doesn't have to be correct, e.g. for
/dev/fd symlinks.
This commit is contained in:
Eelco Dolstra 2016-02-28 03:26:46 +01:00
parent d0344dd2c1
commit 012f8d187c

View file

@ -209,7 +209,7 @@ Path readLink(const Path & path)
else if (rlsize > st.st_size)
throw Error(format("symbolic link %1% size overflow %2% > %3%")
% path % rlsize % st.st_size);
return string(buf, st.st_size);
return string(buf, rlsize);
}