summaryrefslogtreecommitdiffstats
path: root/pw/cpdir.c
diff options
context:
space:
mode:
authorAlexander Motin <mav@FreeBSD.org>2012-05-15 00:42:12 +0000
committerAlexander Motin <mav@FreeBSD.org>2012-05-15 00:42:12 +0000
commitece00476ae97c736665d4bf73a744a3ff57a4020 (patch)
tree428218f4293355ba7d1e99722d1676fbde7e6e10 /pw/cpdir.c
parent7c00ce99fd28d2f4e48085da6ba1d3946f80012d (diff)
parenta93fc7681bb6cbb582cc0c16fe440ae3087720be (diff)
downloadpw-darwin-ece00476ae97c736665d4bf73a744a3ff57a4020.tar.gz
pw-darwin-ece00476ae97c736665d4bf73a744a3ff57a4020.zip
MFC
Diffstat (limited to 'pw/cpdir.c')
-rw-r--r--pw/cpdir.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/pw/cpdir.c b/pw/cpdir.c
index c5534e5..0fd671b 100644
--- a/pw/cpdir.c
+++ b/pw/cpdir.c
@@ -84,7 +84,7 @@ copymkdir(char const * dir, char const * skel, mode_t mode, uid_t uid, gid_t gid
if (strcmp(e->d_name, ".") != 0 && strcmp(e->d_name, "..") != 0)
copymkdir(dst, src, st.st_mode & _DEF_DIRMODE, uid, gid);
chflags(dst, st.st_flags); /* propagate flags */
- } else if (S_ISLNK(st.st_mode) && (len = readlink(src, lnk, sizeof(lnk))) != -1) {
+ } else if (S_ISLNK(st.st_mode) && (len = readlink(src, lnk, sizeof(lnk) - 1)) != -1) {
lnk[len] = '\0';
symlink(lnk, dst);
lchown(dst, uid, gid);