merge-trees: let caller decide whether to renormalize
[gitweb.git] / sha1_file.c
index 72de38909ef6b05f0aa709b78fd803c632a02044..e42ef96d457f6aa12ab7d0057acf936db0335d40 100644 (file)
@@ -2525,3 +2525,13 @@ int read_pack_header(int fd, struct pack_header *header)
                return PH_ERROR_PROTOCOL;
        return 0;
 }
+
+void assert_sha1_type(const 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 (type != expect)
+               die("%s is not a valid '%s' object", sha1_to_hex(sha1),
+                   typename(expect));
+}