commit - b4e0802fabd9a36f320a70b8aa668a66533cfb08
commit + 600b755ed0123e8da4404f6cf4354d152355ac4d
blob - c3c388afd5a6cd1ee493a25dae36c7e13d0845ce
blob + dce64b25f35227709c626d4d561698c07375c735
--- lib/pack_create.c
+++ lib/pack_create.c
struct got_object_id id;
char *path;
int obj_type;
+ off_t size;
time_t mtime;
/* The best delta we picked */
err = got_object_raw_open(&raw, repo, &m->id, 8192);
if (err)
goto done;
+ m->size = raw->size;
err = got_deltify_init(&m->dtab, raw->f, raw->hdrlen,
raw->size + raw->hdrlen);
off_t nd;
SHA1_CTX ctx;
struct got_pack_meta *m;
- struct got_raw_object *raw = NULL, *base_raw = NULL;
+ struct got_raw_object *raw = NULL;
FILE *delta_file = NULL;
char buf[32];
size_t outlen, n;
err = got_error_from_errno("fseeko");
goto done;
}
- err = got_object_raw_open(&base_raw, repo,
- &m->prev->id, 8192);
- if (err)
- goto done;
- err = encodedelta(m, raw, base_raw->size, delta_file);
+ err = encodedelta(m, raw, m->prev->size, delta_file);
if (err)
goto done;
nd = ftello(delta_file);
err = got_error_from_errno("fseeko");
goto done;
}
- got_object_raw_close(base_raw);
- base_raw = NULL;
if (use_offset_deltas && m->prev->off != 0) {
err = packhdr(&nh, buf, sizeof(buf),
GOT_OBJ_TYPE_OFFSET_DELTA, nd);
err = got_error_from_errno("fclose");
if (raw)
got_object_raw_close(raw);
- if (base_raw)
- got_object_raw_close(base_raw);
return err;
}