diff options
author | ume <ume@FreeBSD.org> | 2005-05-20 15:39:20 +0000 |
---|---|---|
committer | ume <ume@FreeBSD.org> | 2005-05-20 15:39:20 +0000 |
commit | 1fe380f8488d90466b0f19b30c57f356e7716224 (patch) | |
tree | 1687b9122aa6fc403f4b4dd0f369816e897b3f0a /lib/libc | |
parent | e533045bcd0864cf0ff78791d82adf7264aa4594 (diff) | |
download | FreeBSD-src-1fe380f8488d90466b0f19b30c57f356e7716224.zip FreeBSD-src-1fe380f8488d90466b0f19b30c57f356e7716224.tar.gz |
reduce strlen() call.
Diffstat (limited to 'lib/libc')
-rw-r--r-- | lib/libc/gen/ttyname.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/lib/libc/gen/ttyname.c b/lib/libc/gen/ttyname.c index f0a249e..ed198ea 100644 --- a/lib/libc/gen/ttyname.c +++ b/lib/libc/gen/ttyname.c @@ -66,6 +66,7 @@ ttyname_r(int fd, char *buf, size_t len) { struct stat sb; struct fiodgname_arg fgn; + size_t used; *buf = '\0'; @@ -80,12 +81,13 @@ ttyname_r(int fd, char *buf, size_t len) return (ERANGE); strcpy(buf, _PATH_DEV); - fgn.len = len - strlen(buf); - fgn.buf = buf + strlen(buf); + used = strlen(buf); + fgn.len = len - used; + fgn.buf = buf + used; if (!_ioctl(fd, FIODGNAME, &fgn)) return (0); - devname_r(sb.st_rdev, S_IFCHR, - buf + strlen(buf), len - strlen(buf)); + used = strlen(buf); + devname_r(sb.st_rdev, S_IFCHR, buf + used, len - used); return (0); } |