diff options
author | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2016-02-28T02·26+0100 |
---|---|---|
committer | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2016-02-28T02·27+0100 |
commit | 012f8d187c1a4260ecd931ef69c7d4c83029d088 (patch) | |
tree | 58b9d48eb8dfac9010a3286a62be7c5f50fe17e9 | |
parent | d0344dd2c1ca5ea0a300bd9f407a8810e92f31a0 (diff) |
Fix reading symlinks
The st_size field of a symlink doesn't have to be correct, e.g. for /dev/fd symlinks.
-rw-r--r-- | src/libutil/util.cc | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/libutil/util.cc b/src/libutil/util.cc index 3becbbabc2bf..25246a3e89a9 100644 --- a/src/libutil/util.cc +++ b/src/libutil/util.cc @@ -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); } |