Using preprocessor constants rather than hardcoded numbers is considered a
good programming practice. Provide two constants, GIT_OID_RAWSZ and
GIT_OID_HEXSZ, which are the lengths of an SHA-1 object name in bytes and
hex digits, respectively. These names are the same as those used by
libgit2.
Signed-off-by: brian m. carlson <redacted>
---
object.h | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/object.h b/object.h
index 6e12f2c..f1cff2d 100644
--- a/object.h
+++ b/object.h
@@ -1,6 +1,13 @@
#ifndef OBJECT_H
#define OBJECT_H
+/*
+ * The length in bytes and in hex digits of an object name (SHA-1 value).
+ * These are the same names used by libgit2.
+ */
+#define GIT_OID_RAWSZ 20
+#define GIT_OID_HEXSZ 40
+
struct object_list {
struct object *item;
struct object_list *next;@@ -49,7 +56,7 @@ struct object {
unsigned used : 1;
unsigned type : TYPE_BITS;
unsigned flags : FLAG_BITS;
- unsigned char sha1[20];
+ unsigned char sha1[GIT_OID_RAWSZ];
};
extern const char *typename(unsigned int type);--
2.0.0.rc0