commit_packed_refs(): report errors rather than dying
[gitweb.git] / notes-utils.c
index 24a33616a47737e6ae8cf917080cbb314dcf2762..325ff3daa37c5a0ce26c608b2e7bfd8a94b7f396 100644 (file)
@@ -7,18 +7,18 @@ void create_notes_commit(struct notes_tree *t, struct commit_list *parents,
                         const char *msg, size_t msg_len,
                         unsigned char *result_sha1)
 {
-       unsigned char tree_sha1[20];
+       struct object_id tree_oid;
 
        assert(t->initialized);
 
-       if (write_notes_tree(t, tree_sha1))
+       if (write_notes_tree(t, tree_oid.hash))
                die("Failed to write notes tree to database");
 
        if (!parents) {
                /* Deduce parent commit from t->ref */
-               unsigned char parent_sha1[20];
-               if (!read_ref(t->ref, parent_sha1)) {
-                       struct commit *parent = lookup_commit(parent_sha1);
+               struct object_id parent_oid;
+               if (!read_ref(t->ref, parent_oid.hash)) {
+                       struct commit *parent = lookup_commit(&parent_oid);
                        if (parse_commit(parent))
                                die("Failed to find/parse commit %s", t->ref);
                        commit_list_insert(parent, &parents);
@@ -26,14 +26,14 @@ void create_notes_commit(struct notes_tree *t, struct commit_list *parents,
                /* else: t->ref points to nothing, assume root/orphan commit */
        }
 
-       if (commit_tree(msg, msg_len, tree_sha1, parents, result_sha1, NULL, NULL))
+       if (commit_tree(msg, msg_len, tree_oid.hash, parents, result_sha1, NULL, NULL))
                die("Failed to commit notes tree to database");
 }
 
 void commit_notes(struct notes_tree *t, const char *msg)
 {
        struct strbuf buf = STRBUF_INIT;
-       unsigned char commit_sha1[20];
+       struct object_id commit_oid;
 
        if (!t)
                t = &default_notes_tree;
@@ -46,9 +46,9 @@ void commit_notes(struct notes_tree *t, const char *msg)
        strbuf_addstr(&buf, msg);
        strbuf_complete_line(&buf);
 
-       create_notes_commit(t, NULL, buf.buf, buf.len, commit_sha1);
+       create_notes_commit(t, NULL, buf.buf, buf.len, commit_oid.hash);
        strbuf_insert(&buf, 0, "notes: ", 7); /* commit message starts at index 7 */
-       update_ref(buf.buf, t->update_ref, commit_sha1, NULL, 0,
+       update_ref(buf.buf, t->update_ref, commit_oid.hash, NULL, 0,
                   UPDATE_REFS_DIE_ON_ERR);
 
        strbuf_release(&buf);