Merge branch 'jk/bug-to-abort'
[gitweb.git] / bulk-checkin.c
index 7cffc3a579e4a02c1422284092cef18cd4b7d059..5be7ce5c730f128903ed226c45834dcb2c5c3214 100644 (file)
@@ -7,8 +7,6 @@
 #include "pack.h"
 #include "strbuf.h"
 
-static int pack_compression_level = Z_DEFAULT_COMPRESSION;
-
 static struct bulk_checkin_state {
        unsigned plugged:1;
 
@@ -71,7 +69,7 @@ static int already_written(struct bulk_checkin_state *state, unsigned char sha1[
 
        /* Might want to keep the list sorted */
        for (i = 0; i < state->nr_written; i++)
-               if (!hashcmp(state->written[i]->sha1, sha1))
+               if (!hashcmp(state->written[i]->oid.hash, sha1))
                        return 1;
 
        /* This is a new object we need to keep */
@@ -107,7 +105,7 @@ static int stream_to_pack(struct bulk_checkin_state *state,
 
        git_deflate_init(&s, pack_compression_level);
 
-       hdrlen = encode_in_pack_object_header(type, size, obuf);
+       hdrlen = encode_in_pack_object_header(obuf, sizeof(obuf), type, size);
        s.next_out = obuf + hdrlen;
        s.avail_out = sizeof(obuf) - hdrlen;
 
@@ -200,8 +198,8 @@ static int deflate_to_pack(struct bulk_checkin_state *state,
        if (seekback == (off_t) -1)
                return error("cannot find the current offset");
 
-       header_len = sprintf((char *)obuf, "%s %" PRIuMAX,
-                            typename(type), (uintmax_t)size) + 1;
+       header_len = xsnprintf((char *)obuf, sizeof(obuf), "%s %" PRIuMAX,
+                              typename(type), (uintmax_t)size) + 1;
        git_SHA1_Init(&ctx);
        git_SHA1_Update(&ctx, obuf, header_len);
 
@@ -244,7 +242,7 @@ static int deflate_to_pack(struct bulk_checkin_state *state,
                state->offset = checkpoint.offset;
                free(idx);
        } else {
-               hashcpy(idx->sha1, result_sha1);
+               hashcpy(idx->oid.hash, result_sha1);
                ALLOC_GROW(state->written,
                           state->nr_written + 1,
                           state->alloc_written);