diff options
author | Hajimu UMEMOTO <ume@FreeBSD.org> | 2005-05-20 15:39:20 +0000 |
---|---|---|
committer | Hajimu UMEMOTO <ume@FreeBSD.org> | 2005-05-20 15:39:20 +0000 |
commit | 77cf61aeb05428c2fad1fae4ec11c96a0cabc9ad (patch) | |
tree | 1687b9122aa6fc403f4b4dd0f369816e897b3f0a /lib | |
parent | cfc967e66a7b2b9e7c003eb60ec58f1188c24c8a (diff) | |
download | src-77cf61aeb05428c2fad1fae4ec11c96a0cabc9ad.tar.gz src-77cf61aeb05428c2fad1fae4ec11c96a0cabc9ad.zip |
reduce strlen() call.
Notes
Notes:
svn path=/head/; revision=146455
Diffstat (limited to 'lib')
-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 f0a249e234c5..ed198eab5452 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); } |