DORMANTno replies

[PATCH 1/2] Use fixed-size integers for the on-disk pack structure.

From: Junio C Hamano <hidden>
Date: 2016-06-15 22:42:49
Subsystem: the rest · Maintainer: Linus Torvalds

From: Simon 'corecode' Schubert <redacted>
Date: Wed, 17 Jan 2007 09:07:23 +0100

Plain integer types without a fixed size can vary between platforms.  Even
though all common platforms use 32-bit ints, there is no guarantee that
this won't change at some point.  Furthermore, specifying an integer type
with explicit size makes the definition of structures more obvious.

Signed-off-by: Simon 'corecode' Schubert <redacted>
Signed-off-by: Junio C Hamano <redacted>
---

 * For wider review -- this _might_ have issues with "not quite
   POSIX" systems (such as AIX exporting something undesirable
   under _ALL_SOURCE for example).

 git-compat-util.h |    1 +
 pack.h            |    6 +++---
 2 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/git-compat-util.h b/git-compat-util.h
index 8d244d0..bf3ceb8 100644
--- a/git-compat-util.h
+++ b/git-compat-util.h
@@ -46,6 +46,7 @@
 #include <arpa/inet.h>
 #include <netdb.h>
 #include <pwd.h>
+#include <stdint.h>
 #undef _ALL_SOURCE /* AIX 5.3L defines a struct list with _ALL_SOURCE. */
 #include <grp.h>
 #define _ALL_SOURCE 1
diff --git a/pack.h b/pack.h
index 790ff4a..821706f 100644
--- a/pack.h
+++ b/pack.h
@@ -10,9 +10,9 @@
 #define PACK_VERSION 2
 #define pack_version_ok(v) ((v) == htonl(2) || (v) == htonl(3))
 struct pack_header {
-	unsigned int hdr_signature;
-	unsigned int hdr_version;
-	unsigned int hdr_entries;
+	uint32_t hdr_signature;
+	uint32_t hdr_version;
+	uint32_t hdr_entries;
 };
 
 /*
-- 
1.5.0.rc1.g05cf8
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help