X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;ds=sidebyside;f=sha1_file.c;h=db2880e389e556dd3a5eef02aa8a3bb235528057;hb=2636f6143751a064e366cb7763d0705b296726e3;hp=d2f38f0cdc78d81ffb5a601eb603a81775586368;hpb=a44c9a5e2e6d4108452f2c64dbd11f74a83745af;p=git.git diff --git a/sha1_file.c b/sha1_file.c index d2f38f0c..db2880e3 100644 --- a/sha1_file.c +++ b/sha1_file.c @@ -73,7 +73,7 @@ char *sha1_file_name(const unsigned char *sha1) if (!base) { char *sha1_file_directory = getenv(DB_ENVIRONMENT) ? : DEFAULT_DB_ENVIRONMENT; int len = strlen(sha1_file_directory); - base = malloc(len + 60); + base = xmalloc(len + 60); memcpy(base, sha1_file_directory, len); memset(base+len, 0, 60); base[len] = '/'; @@ -161,9 +161,7 @@ void * unpack_sha1_file(void *map, unsigned long mapsize, char *type, unsigned l return NULL; bytes = strlen(buffer) + 1; - buf = malloc(*size); - if (!buf) - return NULL; + buf = xmalloc(*size); memcpy(buf, buffer + bytes, stream.total_out - bytes); bytes = stream.total_out - bytes; @@ -231,7 +229,7 @@ void *read_tree_with_tree_or_commit_sha1(const unsigned char *sha1, return buffer; } -int write_sha1_file(char *buf, unsigned len, const char *type, unsigned char *returnsha1) +int write_sha1_file(char *buf, unsigned long len, const char *type, unsigned char *returnsha1) { int size; char *compressed; @@ -243,7 +241,7 @@ int write_sha1_file(char *buf, unsigned len, const char *type, unsigned char *re int fd, hdrlen; /* Generate the header */ - hdrlen = sprintf(hdr, "%s %d", type, len)+1; + hdrlen = sprintf(hdr, "%s %lu", type, len)+1; /* Sha1.. */ SHA1_Init(&c); @@ -271,7 +269,7 @@ int write_sha1_file(char *buf, unsigned len, const char *type, unsigned char *re memset(&stream, 0, sizeof(stream)); deflateInit(&stream, Z_BEST_COMPRESSION); size = deflateBound(&stream, len+hdrlen); - compressed = malloc(size); + compressed = xmalloc(size); /* Compress it */ stream.next_out = compressed;