# [PATCH] make sure enum object_type is signed

1 messages from 2007-02-28 to 2007-02-28. Participants: Nicolas Pitre.
Thread: https://gitlist.dev/t/7003

## Nicolas Pitre, 2007-02-28 01:38

Subject: [PATCH] make sure enum object_type is signed
Message-ID: <alpine.LRH.0.82.0702272028100.29426@xanadu.home>
URL: https://gitlist.dev/e/alpine.LRH.0.82.0702272028100.29426%40xanadu.home

```
This allows for keeping the common idiom which consists of using 
negative values to signal error conditions by ensuring that the enum 
will be a signed type.

Signed-off-by: Nicolas Pitre <nico@cam.org>
---

Per early discussion.

diff --git a/cache.h b/cache.h
index 0117b7e..ec72c0c 100644
--- a/cache.h
+++ b/cache.h
@@ -263,6 +263,7 @@ int safe_create_leading_directories(char *path);
 char *enter_repo(char *path, int strict);
 
 enum object_type {
+	OBJ_BAD = -1,
 	OBJ_NONE = 0,
 	OBJ_COMMIT = 1,
 	OBJ_TREE = 2,
@@ -271,7 +272,7 @@ enum object_type {
 	/* 5 for future expansion */
 	OBJ_OFS_DELTA = 6,
 	OBJ_REF_DELTA = 7,
-	OBJ_BAD,
+	OBJ_MAX,
 };
 
 /* Read and unpack a sha1 file into memory, write memory to a sha1 file */

```
