Fix a trivial truncation case, and eliminate a corner case that might
print a nul character.
This commit is contained in:
parent
f1fe53f0ac
commit
fab1a5fa39
@ -1,4 +1,4 @@
|
||||
/* $NetBSD: stat.c,v 1.21 2005/01/13 00:53:14 jmc Exp $ */
|
||||
/* $NetBSD: stat.c,v 1.22 2005/04/22 03:36:48 atatat Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2002 The NetBSD Foundation, Inc.
|
||||
@ -42,7 +42,7 @@
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
#if !defined(lint)
|
||||
__RCSID("$NetBSD: stat.c,v 1.21 2005/01/13 00:53:14 jmc Exp $");
|
||||
__RCSID("$NetBSD: stat.c,v 1.22 2005/04/22 03:36:48 atatat Exp $");
|
||||
#endif
|
||||
|
||||
#if ! HAVE_NBTOOL_CONFIG_H
|
||||
@ -357,7 +357,7 @@ output(const struct stat *st, const char *file,
|
||||
const char *statfmt, int fn, int nonl, int quiet)
|
||||
{
|
||||
int flags, size, prec, ofmt, hilo, what;
|
||||
char buf[PATH_MAX];
|
||||
char buf[PATH_MAX + 4 + 1];
|
||||
const char *subfmt;
|
||||
int nl, t, i;
|
||||
|
||||
@ -526,7 +526,7 @@ output(const struct stat *st, const char *file,
|
||||
buf, sizeof(buf),
|
||||
flags, size, prec, ofmt, hilo, what);
|
||||
|
||||
for (i = 0; i < t && i < sizeof(buf); i++)
|
||||
for (i = 0; i < t && i < sizeof(buf) - 1; i++)
|
||||
addchar(stdout, buf[i], &nl);
|
||||
|
||||
continue;
|
||||
|
Loading…
Reference in New Issue
Block a user