svn commit: r226444 - head/usr.bin/look
Ed Schouten
ed at FreeBSD.org
Sun Oct 16 19:15:25 UTC 2011
Author: ed
Date: Sun Oct 16 19:15:25 2011
New Revision: 226444
URL: http://svn.freebsd.org/changeset/base/226444
Log:
Don't cast SIZE_T_MAX to off_t.
I focused so much on the 32-bits case where we have to cast SIZE_T_MAX
up in size, that I forgot about the 64-bits case, where off_t and size_t
are equal in size. Simply cast both numbers to uintmax_t, as we can
assume st_size is never negative.
Reported by: cperciva
Modified:
head/usr.bin/look/look.c
Modified: head/usr.bin/look/look.c
==============================================================================
--- head/usr.bin/look/look.c Sun Oct 16 17:59:28 2011 (r226443)
+++ head/usr.bin/look/look.c Sun Oct 16 19:15:25 2011 (r226444)
@@ -134,7 +134,7 @@ main(int argc, char *argv[])
do {
if ((fd = open(file, O_RDONLY, 0)) < 0 || fstat(fd, &sb))
err(2, "%s", file);
- if (sb.st_size > (off_t)SIZE_T_MAX)
+ if ((uintmax_t)sb.st_size > (uintmax_t)SIZE_T_MAX)
errx(2, "%s: %s", file, strerror(EFBIG));
if (sb.st_size == 0) {
close(fd);
More information about the svn-src-head
mailing list