src/cmd/tar.c: avoid conflict with strnlen in libc

This commit is contained in:
Albert Lee 2008-12-01 19:41:36 -05:00
parent 112a2c5892
commit 1a22c43f78

View file

@ -423,7 +423,7 @@ isustar(Hdr *hp)
* be NUL.
*/
static int
strnlen(char *s, int n)
sstrnlen(char *s, int n)
{
return s[n - 1] != '\0'? n: strlen(s);
}
@ -437,7 +437,7 @@ name(Hdr *hp)
char *fullname;
fullname = fullnamebuf+2;
namlen = strnlen(hp->name, sizeof hp->name);
namlen = sstrnlen(hp->name, sizeof hp->name);
if (hp->prefix[0] == '\0' || !isustar(hp)) { /* old-style name? */
memmove(fullname, hp->name, namlen);
fullname[namlen] = '\0';
@ -445,7 +445,7 @@ name(Hdr *hp)
}
/* name is in two pieces */
pfxlen = strnlen(hp->prefix, sizeof hp->prefix);
pfxlen = sstrnlen(hp->prefix, sizeof hp->prefix);
memmove(fullname, hp->prefix, pfxlen);
fullname[pfxlen] = '/';
memmove(fullname + pfxlen + 1, hp->name, namlen);