From: Jim Meyering Date: Fri, 4 Nov 2005 10:08:51 +0000 (+0000) Subject: (process_file): Don't overflow for files of size >= 2^31 X-Git-Tag: v6.0~1401 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=933576b4401b9e33ac792aa441ee2a128eb04850;p=thirdparty%2Fcoreutils.git (process_file): Don't overflow for files of size >= 2^31 on systems with stat.st_blocks of a signed 32-bit type. This bug causes trouble on some AIX 5.1 systems. Report and trivial patch from Paul Townsend: --- diff --git a/src/du.c b/src/du.c index 12c21aa97a..361f676394 100644 --- a/src/du.c +++ b/src/du.c @@ -537,7 +537,7 @@ process_file (FTS *fts, FTSENT *ent) duinfo_set (&dui, (apparent_size ? sb->st_size - : ST_NBLOCKS (*sb) * ST_NBLOCKSIZE), + : (uintmax_t) ST_NBLOCKS (*sb) * ST_NBLOCKSIZE), (time_type == time_mtime ? get_stat_mtime (sb) : time_type == time_atime ? get_stat_atime (sb) : get_stat_ctime (sb)));