Commit cd350852 by Edward Thomson

object_type: GIT_OBJECT_BAD is now GIT_OBJECT_INVALID

We use the term "invalid" to refer to bad or malformed data, eg
`GIT_REF_INVALID` and `GIT_EINVALIDSPEC`.  Since we're changing the
names of the `git_object_t`s in this release, update it to be
`GIT_OBJECT_INVALID` instead of `BAD`.
parent 90046899
......@@ -69,7 +69,7 @@ typedef int64_t git_time_t;
/** Basic type (loose or packed) of any Git object. */
typedef enum {
GIT_OBJECT_ANY = -2, /**< Object can be any of the following */
GIT_OBJECT_BAD = -1, /**< Object is invalid. */
GIT_OBJECT_INVALID = -1, /**< Object is invalid. */
GIT_OBJECT_COMMIT = 1, /**< A commit object. */
GIT_OBJECT_TREE = 2, /**< A tree (directory listing) object. */
GIT_OBJECT_BLOB = 3, /**< A file revision object. */
......@@ -451,7 +451,7 @@ typedef struct git_mailmap git_mailmap;
/**@{*/
GIT_DEPRECATED(static const int) GIT_OBJ_ANY = GIT_OBJECT_ANY;
GIT_DEPRECATED(static const int) GIT_OBJ_BAD = GIT_OBJECT_BAD;
GIT_DEPRECATED(static const int) GIT_OBJ_BAD = GIT_OBJECT_INVALID;
GIT_DEPRECATED(static const int) GIT_OBJ__EXT1 = 0;
GIT_DEPRECATED(static const int) GIT_OBJ_COMMIT = GIT_OBJECT_COMMIT;
GIT_DEPRECATED(static const int) GIT_OBJ_TREE = GIT_OBJECT_TREE;
......
......@@ -288,7 +288,7 @@ const char *git_object_type2string(git_object_t type)
git_object_t git_object_string2type(const char *str)
{
if (!str)
return GIT_OBJECT_BAD;
return GIT_OBJECT_INVALID;
return git_object_stringn2type(str, strlen(str));
}
......@@ -298,14 +298,14 @@ git_object_t git_object_stringn2type(const char *str, size_t len)
size_t i;
if (!str || !len || !*str)
return GIT_OBJECT_BAD;
return GIT_OBJECT_INVALID;
for (i = 0; i < ARRAY_SIZE(git_objects_table); i++)
if (*git_objects_table[i].str &&
!git__prefixncmp(str, len, git_objects_table[i].str))
return (git_object_t)i;
return GIT_OBJECT_BAD;
return GIT_OBJECT_INVALID;
}
int git_object_typeisloose(git_object_t type)
......
......@@ -62,7 +62,7 @@ GIT_INLINE(git_object_t) git_object__type_from_filemode(git_filemode_t mode)
case GIT_FILEMODE_LINK:
return GIT_OBJECT_BLOB;
default:
return GIT_OBJECT_BAD;
return GIT_OBJECT_INVALID;
}
}
......
......@@ -63,7 +63,7 @@ static git_object_t odb_hardcoded_type(const git_oid *id)
if (!git_oid_cmp(id, &empty_tree))
return GIT_OBJECT_TREE;
return GIT_OBJECT_BAD;
return GIT_OBJECT_INVALID;
}
static int odb_read_hardcoded(bool *found, git_rawobj *raw, const git_oid *id)
......@@ -72,7 +72,7 @@ static int odb_read_hardcoded(bool *found, git_rawobj *raw, const git_oid *id)
*found = false;
if ((type = odb_hardcoded_type(id)) == GIT_OBJECT_BAD)
if ((type = odb_hardcoded_type(id)) == GIT_OBJECT_INVALID)
return 0;
raw->type = type;
......@@ -945,7 +945,7 @@ static int odb_read_header_1(
bool passthrough = false;
int error;
if (!only_refreshed && (ht = odb_hardcoded_type(id)) != GIT_OBJECT_BAD) {
if (!only_refreshed && (ht = odb_hardcoded_type(id)) != GIT_OBJECT_INVALID) {
*type_p = ht;
*len_p = 0;
return 0;
......
......@@ -351,7 +351,7 @@ static int read_loose(git_rawobj *out, git_buf *loc)
out->data = NULL;
out->len = 0;
out->type = GIT_OBJECT_BAD;
out->type = GIT_OBJECT_INVALID;
if ((error = git_futils_readbuffer(&obj, loc->ptr)) < 0)
goto done;
......@@ -583,7 +583,7 @@ static int loose_backend__read_header(size_t *len_p, git_object_t *type_p, git_o
assert(backend && oid);
raw.len = 0;
raw.type = GIT_OBJECT_BAD;
raw.type = GIT_OBJECT_INVALID;
if (locate_object(&object_path, (loose_backend *)backend, oid) < 0) {
error = git_odb__error_notfound("no matching loose object",
......@@ -989,7 +989,7 @@ static int loose_backend__readstream(
backend = (loose_backend *)_backend;
*stream_out = NULL;
*len_out = 0;
*type_out = GIT_OBJECT_BAD;
*type_out = GIT_OBJECT_INVALID;
if (locate_object(&object_path, backend, oid) < 0) {
error = git_odb__error_notfound("no matching loose object",
......
......@@ -644,7 +644,7 @@ int git_packfile_unpack(
obj->data = NULL;
obj->len = 0;
obj->type = GIT_OBJECT_BAD;
obj->type = GIT_OBJECT_INVALID;
/* let's point to the right stack */
stack = chain.ptr ? chain.ptr : small_stack;
......@@ -726,7 +726,7 @@ int git_packfile_unpack(
base = *obj;
obj->data = NULL;
obj->len = 0;
obj->type = GIT_OBJECT_BAD;
obj->type = GIT_OBJECT_INVALID;
error = git_delta_apply(&obj->data, &obj->len, base.data, base.len, delta.data, delta.len);
obj->type = base_type;
......
......@@ -369,7 +369,7 @@ static git_object_t parse_obj_type(const char *str)
if (!strcmp(str, "tag"))
return GIT_OBJECT_TAG;
return GIT_OBJECT_BAD;
return GIT_OBJECT_INVALID;
}
static int dereference_to_non_tag(git_object **out, git_object *obj)
......@@ -515,7 +515,7 @@ static int handle_caret_curly_syntax(git_object **out, git_object *obj, const ch
expected_type = parse_obj_type(curly_braces_content);
if (expected_type == GIT_OBJECT_BAD)
if (expected_type == GIT_OBJECT_INVALID)
return GIT_EINVALIDSPEC;
return git_object_peel(out, obj, expected_type);
......
......@@ -84,7 +84,7 @@ static int tag_parse(git_tag *tag, const char *buffer, const char *buffer_end)
return tag_error("type field not found");
buffer += 5;
tag->type = GIT_OBJECT_BAD;
tag->type = GIT_OBJECT_INVALID;
for (i = 1; i < ARRAY_SIZE(tag_types); ++i) {
size_t type_length = strlen(tag_types[i]);
......@@ -99,7 +99,7 @@ static int tag_parse(git_tag *tag, const char *buffer, const char *buffer_end)
}
}
if (tag->type == GIT_OBJECT_BAD)
if (tag->type == GIT_OBJECT_INVALID)
return tag_error("invalid object type");
if (buffer + 4 >= buffer_end)
......
......@@ -319,5 +319,5 @@ static git_rawobj some_obj = {
static git_rawobj junk_obj = {
NULL,
0,
GIT_OBJECT_BAD
GIT_OBJECT_INVALID
};
......@@ -6,7 +6,7 @@
void test_object_raw_type2string__convert_type_to_string(void)
{
cl_assert_equal_s(git_object_type2string(GIT_OBJECT_BAD), "");
cl_assert_equal_s(git_object_type2string(GIT_OBJECT_INVALID), "");
cl_assert_equal_s(git_object_type2string(0), ""); /* EXT1 */
cl_assert_equal_s(git_object_type2string(GIT_OBJECT_COMMIT), "commit");
cl_assert_equal_s(git_object_type2string(GIT_OBJECT_TREE), "tree");
......@@ -23,8 +23,8 @@ void test_object_raw_type2string__convert_type_to_string(void)
void test_object_raw_type2string__convert_string_to_type(void)
{
cl_assert(git_object_string2type(NULL) == GIT_OBJECT_BAD);
cl_assert(git_object_string2type("") == GIT_OBJECT_BAD);
cl_assert(git_object_string2type(NULL) == GIT_OBJECT_INVALID);
cl_assert(git_object_string2type("") == GIT_OBJECT_INVALID);
cl_assert(git_object_string2type("commit") == GIT_OBJECT_COMMIT);
cl_assert(git_object_string2type("tree") == GIT_OBJECT_TREE);
cl_assert(git_object_string2type("blob") == GIT_OBJECT_BLOB);
......@@ -32,13 +32,13 @@ void test_object_raw_type2string__convert_string_to_type(void)
cl_assert(git_object_string2type("OFS_DELTA") == GIT_OBJECT_OFS_DELTA);
cl_assert(git_object_string2type("REF_DELTA") == GIT_OBJECT_REF_DELTA);
cl_assert(git_object_string2type("CoMmIt") == GIT_OBJECT_BAD);
cl_assert(git_object_string2type("hohoho") == GIT_OBJECT_BAD);
cl_assert(git_object_string2type("CoMmIt") == GIT_OBJECT_INVALID);
cl_assert(git_object_string2type("hohoho") == GIT_OBJECT_INVALID);
}
void test_object_raw_type2string__check_type_is_loose(void)
{
cl_assert(git_object_typeisloose(GIT_OBJECT_BAD) == 0);
cl_assert(git_object_typeisloose(GIT_OBJECT_INVALID) == 0);
cl_assert(git_object_typeisloose(0) == 0); /* EXT1 */
cl_assert(git_object_typeisloose(GIT_OBJECT_COMMIT) == 1);
cl_assert(git_object_typeisloose(GIT_OBJECT_TREE) == 1);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment