From cb9bab4255a19b201d5bb13220421e687866484d Mon Sep 17 00:00:00 2001 From: Michael Stapelberg Date: Fri, 16 Oct 2009 00:25:05 +0200 Subject: [PATCH] Bugfix: Cast the integers to uint64_t *before* multiplying (Thanks msi) This fixes problems on 32-bit computers. --- src/print_disk_info.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/print_disk_info.c b/src/print_disk_info.c index 7ad27a4..11111db 100644 --- a/src/print_disk_info.c +++ b/src/print_disk_info.c @@ -51,17 +51,17 @@ void print_disk_info(const char *path, const char *format) { } if (BEGINS_WITH(walk+1, "free")) { - print_bytes_human(buf.f_bsize * buf.f_bfree); + print_bytes_human((uint64_t)buf.f_bsize * (uint64_t)buf.f_bfree); walk += strlen("free"); } if (BEGINS_WITH(walk+1, "used")) { - print_bytes_human(buf.f_bsize * (buf.f_blocks - buf.f_bfree)); + print_bytes_human((uint64_t)buf.f_bsize * ((uint64_t)buf.f_blocks - (uint64_t)buf.f_bfree)); walk += strlen("used"); } if (BEGINS_WITH(walk+1, "total")) { - print_bytes_human(buf.f_bsize * buf.f_blocks); + print_bytes_human((uint64_t)buf.f_bsize * (uint64_t)buf.f_blocks); walk += strlen("total"); } }