svn commit: r216202 - head/usr.bin/stat

Doug Barton dougb at FreeBSD.org
Sun Dec 5 20:47:54 UTC 2010


Author: dougb
Date: Sun Dec  5 20:47:53 2010
New Revision: 216202
URL: http://svn.freebsd.org/changeset/base/216202

Log:
  Bring in the change from NetBSD 1.22:
  
  "Fix a trivial truncation case, and eliminate a corner case that might
  print a nul character."
  
  I am purposely bypassing the following versions:
  1.19	A build infrastructure change that does not apply to us
  1.20	A feature I am not interested in, but don't object if someone else
  	wants to pick it up
  1.21	A build infrastructure change that does not apply to us
  
  Obtained from:	atatat at NetBSD.org

Modified:
  head/usr.bin/stat/stat.c

Modified: head/usr.bin/stat/stat.c
==============================================================================
--- head/usr.bin/stat/stat.c	Sun Dec  5 20:47:36 2010	(r216201)
+++ head/usr.bin/stat/stat.c	Sun Dec  5 20:47:53 2010	(r216202)
@@ -30,7 +30,7 @@
 #include <sys/cdefs.h>
 #if 0
 #ifndef lint
-__RCSID("$NetBSD: stat.c,v 1.18 2004/05/28 04:48:31 atatat Exp $");
+__RCSID("$NetBSD: stat.c,v 1.22 2005/04/22 03:36:48 atatat Exp $");
 #endif
 #endif
 
@@ -381,7 +381,7 @@ output(const struct stat *st, const char
     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;
 
@@ -550,7 +550,7 @@ output(const struct stat *st, const char
 		     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;


More information about the svn-src-head mailing list