Merge branch 'ps/leakfixes-part-6'
More leakfixes. * ps/leakfixes-part-6: (22 commits) builtin/repack: fix leaking keep-pack list merge-ort: fix two leaks when handling directory rename modifications match-trees: fix leaking prefixes in `shift_tree()` builtin/fmt-merge-msg: fix leaking buffers builtin/grep: fix leaking object context builtin/pack-objects: plug leaking list of keep-packs builtin/repack: fix leaking line buffer when packing promisors negotiator/skipping: fix leaking commit entries shallow: fix leaking members of `struct shallow_info` shallow: free grafts when unregistering them object: clear grafts when clearing parsed object pool gpg-interface: fix misdesigned signing key interfaces send-pack: fix leaking push cert nonce remote: fix leak in reachability check of a remote-tracking ref remote: fix leaking tracking refs builtin/submodule--helper: fix leaking refs on push-check submodule: fix leaking fetch task data upload-pack: fix leaking child process data on reachability checks builtin/push: fix leaking refspec query result send-pack: fix leaking common object IDs ...
This commit is contained in:
23
commit.c
23
commit.c
@ -183,7 +183,7 @@ int commit_graft_pos(struct repository *r, const struct object_id *oid)
|
||||
commit_graft_oid_access);
|
||||
}
|
||||
|
||||
static void unparse_commit(struct repository *r, const struct object_id *oid)
|
||||
void unparse_commit(struct repository *r, const struct object_id *oid)
|
||||
{
|
||||
struct commit *c = lookup_commit(r, oid);
|
||||
|
||||
@ -324,18 +324,6 @@ int for_each_commit_graft(each_commit_graft_fn fn, void *cb_data)
|
||||
return ret;
|
||||
}
|
||||
|
||||
void reset_commit_grafts(struct repository *r)
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i = 0; i < r->parsed_objects->grafts_nr; i++) {
|
||||
unparse_commit(r, &r->parsed_objects->grafts[i]->oid);
|
||||
free(r->parsed_objects->grafts[i]);
|
||||
}
|
||||
r->parsed_objects->grafts_nr = 0;
|
||||
r->parsed_objects->commit_graft_prepared = 0;
|
||||
}
|
||||
|
||||
struct commit_buffer {
|
||||
void *buffer;
|
||||
unsigned long size;
|
||||
@ -1156,11 +1144,14 @@ int add_header_signature(struct strbuf *buf, struct strbuf *sig, const struct gi
|
||||
|
||||
static int sign_commit_to_strbuf(struct strbuf *sig, struct strbuf *buf, const char *keyid)
|
||||
{
|
||||
char *keyid_to_free = NULL;
|
||||
int ret = 0;
|
||||
if (!keyid || !*keyid)
|
||||
keyid = get_signing_key();
|
||||
keyid = keyid_to_free = get_signing_key();
|
||||
if (sign_buffer(buf, sig, keyid))
|
||||
return -1;
|
||||
return 0;
|
||||
ret = -1;
|
||||
free(keyid_to_free);
|
||||
return ret;
|
||||
}
|
||||
|
||||
int parse_signed_commit(const struct commit *commit,
|
||||
|
Reference in New Issue
Block a user