Cleanup check_valid in commit-tree.
PATCH 1/2 Cleanup check_valid in commit-tree.
This routine should be using the object_type enum rather than a string comparsion, as the expected type is always supplied and is known at compile time.
Signed-off-by Shawn O. Pearce <[email protected]>
---
On top of Nico's cleanups.
builtin-commit-tree.c | 10 +++++----- 1 files changed, 5 insertions(+), 5 deletions(-)
builtin-commit-tree.c +5 -5
@@ -45,14 +45,14 @@ static void add_buffer(char **bufp, unsigned int *sizep, const char *fmt, ...)memcpy (buf + size, one_line, len); } -static void check_valid (unsigned char *sha1,const char *expect) +static void check_valid (unsigned char *sha1,enum object_type expect) {enum object_type type =sha1_object_info (sha1,NULL );if (type <0 )die ("%s is not a valid object" ,sha1_to_hex (sha1)); -if (expect && type !=type_from_string (expect)) +if (type != expect)die ("%s is not a valid '%s' object" ,sha1_to_hex (sha1), - expect); +typename (expect)); }/*
@@ -100,7 +100,7 @@ int cmd_commit_tree(int argc, const char **argv, const char *prefix)if (get_sha1 (argv[1 ], tree_sha1))die ("Not a valid object name %s" , argv[1 ]); -check_valid (tree_sha1, tree_type); +check_valid (tree_sha1,OBJ_TREE );for (i =2 ; i < argc; i +=2 ) {const char *a, *b; a = argv[i]; b = argv[i+1 ];
@@ -111,7 +111,7 @@ int cmd_commit_tree(int argc, const char **argv, const char *prefix)die ("Too many parents (%d max)" ,MAXPARENT );if (get_sha1 (b, parent_sha1[parents]))die ("Not a valid object name %s" , b); -check_valid (parent_sha1[parents], commit_type); +check_valid (parent_sha1[parents],OBJ_COMMIT );if (new_parent (parents)) parents++; }
Signature · 1 line
1.5.0.2.775.g1a500