mirror of
https://git.proxmox.com/git/libgit2
synced 2025-05-09 20:29:27 +00:00
commit
93b96ea705
@ -288,6 +288,7 @@ static int write_object(
|
||||
git_odb_object *obj = NULL;
|
||||
git_otype type;
|
||||
unsigned char hdr[10], *zbuf = NULL;
|
||||
void *delta_data = NULL;
|
||||
void *data;
|
||||
size_t hdr_len, zbuf_len = COMPRESS_BUFLEN, data_len;
|
||||
ssize_t written;
|
||||
@ -295,10 +296,11 @@ static int write_object(
|
||||
|
||||
if (po->delta) {
|
||||
if (po->delta_data)
|
||||
data = po->delta_data;
|
||||
else if ((error = get_delta(&data, pb->odb, po)) < 0)
|
||||
delta_data = po->delta_data;
|
||||
else if ((error = get_delta(&delta_data, pb->odb, po)) < 0)
|
||||
goto done;
|
||||
|
||||
data = delta_data;
|
||||
data_len = po->delta_size;
|
||||
type = GIT_OBJ_REF_DELTA;
|
||||
} else {
|
||||
@ -351,7 +353,7 @@ static int write_object(
|
||||
}
|
||||
|
||||
if (po->delta)
|
||||
git__free(data);
|
||||
git__free(delta_data);
|
||||
}
|
||||
|
||||
if (po->delta_data) {
|
||||
|
@ -70,7 +70,7 @@ int git_zstream_deflatebuf(git_buf *out, const void *in, size_t in_len)
|
||||
int error = 0;
|
||||
|
||||
if ((error = git_zstream_init(&zstream)) < 0)
|
||||
goto done;
|
||||
return error;
|
||||
|
||||
do {
|
||||
if (out->asize - out->size < BUFFER_SIZE)
|
||||
@ -89,7 +89,6 @@ int git_zstream_deflatebuf(git_buf *out, const void *in, size_t in_len)
|
||||
if (written < 0)
|
||||
error = written;
|
||||
|
||||
done:
|
||||
git_zstream_free(&zstream);
|
||||
return error;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user