Merge branch 'ab/plug-leak-in-revisions'
commit2da81d1efb0166e1cec7a8582b837994dde6225b
authorJunio C Hamano <gitster@pobox.com>
Tue, 7 Jun 2022 21:10:56 +0000 (7 14:10 -0700)
committerJunio C Hamano <gitster@pobox.com>
Tue, 7 Jun 2022 21:10:56 +0000 (7 14:10 -0700)
tree43763a6b702eb4244724f3c7bedd3537f1f4406a
parentf31b624495077ab7b173b41f28cea52db874aa6b
parent54c8a7c379fc37a847b8a5ec5c419eae171322e1
Merge branch 'ab/plug-leak-in-revisions'

Plug the memory leaks from the trickiest API of all, the revision
walker.

* ab/plug-leak-in-revisions: (27 commits)
  revisions API: add a TODO for diff_free(&revs->diffopt)
  revisions API: have release_revisions() release "topo_walk_info"
  revisions API: have release_revisions() release "date_mode"
  revisions API: call diff_free(&revs->pruning) in revisions_release()
  revisions API: release "reflog_info" in release revisions()
  revisions API: clear "boundary_commits" in release_revisions()
  revisions API: have release_revisions() release "prune_data"
  revisions API: have release_revisions() release "grep_filter"
  revisions API: have release_revisions() release "filter"
  revisions API: have release_revisions() release "cmdline"
  revisions API: have release_revisions() release "mailmap"
  revisions API: have release_revisions() release "commits"
  revisions API users: use release_revisions() for "prune_data" users
  revisions API users: use release_revisions() with UNLEAK()
  revisions API users: use release_revisions() in builtin/log.c
  revisions API users: use release_revisions() in http-push.c
  revisions API users: add "goto cleanup" for release_revisions()
  stash: always have the owner of "stash_info" free it
  revisions API users: use release_revisions() needing REV_INFO_INIT
  revision.[ch]: document and move code declared around "init"
  ...
28 files changed:
builtin/add.c
builtin/bisect--helper.c
builtin/blame.c
builtin/checkout.c
builtin/commit.c
builtin/diff.c
builtin/fast-export.c
builtin/log.c
builtin/pack-objects.c
builtin/reflog.c
builtin/stash.c
builtin/submodule--helper.c
bundle.c
commit.c
http-push.c
merge-ort.c
merge-recursive.c
midx.c
pack-bitmap-write.c
ref-filter.c
remote.c
revision.c
revision.h
sequencer.c
shallow.c
submodule.c
t/t1411-reflog-show.sh
t/t9001-send-email.sh