threads / patch / 10399

patch, 2 partsUse PRIuMAX instead of 'unsigned long long' in show-index

Subject: [PATCH 1/2] Use PRIuMAX instead of 'unsigned long long' in show-index

## tl;dr

One message between Oct 21, 2007 and Oct 21, 2007. Diffs are folded; open one to read it.

replies: 0people: 1as markdown or json

Shawn O. Pearce· Oct 21, 2007, 05:25 UTC · lore

Elsewhere in Git we already use PRIuMAX and cast to uintmax_t when we need to display a value that is 'very big' and we're not exactly sure what the largest display size is for this platform.

This particular fix is needed so we can do the incredibly crazy temporary hack of:

    diff --git a/cache.h b/cache.h
    index e0abcd6..6637fd8 100644
    --- a/cache.h
    +++ b/cache.h
    @@ -6,6 +6,7 @@
     #include SHA1_HEADER
     #include <zlib.h>
    +#define long long long
     #if ZLIB_VERNUM < 0x1200
     #define deflateBound(c,s)  ((s) + (((s) + 7) >> 3) + (((s) + 63) >> 6) + 11)

allowing us to more easily look for locations where we are passing a pointer to an 8 byte value to a function that expects a 4 byte value. This can occur on some platforms where sizeof(long) == 8 and sizeof(size_t) == 4.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
---
 show-index.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
Show changes to show-index.c +1 −1
diff --git a/show-index.c b/show-index.c
index 57ed9e8..7253991 100644
--- a/show-index.c
+++ b/show-index.c
@@ -68,7 +68,7 @@ int main(int argc, char **argv)
 						     ntohl(off64[1]);
 				off64_nr++;
 			}
-			printf("%llu %s (%08x)\n", (unsigned long long) offset,
+			printf("%" PRIuMAX " %s (%08x)\n", (uintmax_t) offset,
 			       sha1_to_hex(entries[i].sha1),
 			       ntohl(entries[i].crc));
 		}
-- 
1.5.3.4.1270.g2fe543

← back to recent threads