git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 00/14] tree-wide: small fixes for memory leaks

From
Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Date
Mar 2, 2022, 17:10 UTC
Message-ID
<cover-00.14-00000000000-20220302T170718Z-avarab@gmail.com>

This is a collection of various otherwise unrelated tree-wide fixes for memory leaks.

In fixing more targeted memory leaks in specific areas I've run into small leaks here & there. Rather than submit e.g. a 2-series patch for just small bundle leaks, the same for range-diff etc. I thought it made sense to submit these together.

Ævar Arnfjörð Bjarmason (14):
  index-pack: fix memory leaks
  merge-base: free() allocated "struct commit **" list
  diff.c: free "buf" in diff_words_flush()
  urlmatch.c: add and use a *_release() function
  remote-curl.c: free memory in cmd_main()
  bundle: call strvec_clear() on allocated strvec
  transport: stop needlessly copying bundle header references
  submodule--helper: fix trivial leak in module_add()
  commit-graph: fix memory leak in misused string_list API
  commit-graph: stop fill_oids_from_packs() progress on error and free()
  lockfile API users: simplify and don't leak "path"
  range-diff: plug memory leak in common invocation
  range-diff: plug memory leak in read_patches()
  repository.c: free the "path cache" in repo_clear()
 apply.c                     |  7 ++++++-
 apply.h                     |  2 ++
 builtin/bundle.c            |  1 +
 builtin/commit-graph.c      |  6 +++---
 builtin/config.c            |  2 +-
 builtin/index-pack.c        |  5 +++++
 builtin/merge-base.c        |  5 ++++-
 builtin/sparse-checkout.c   |  3 +--
 builtin/submodule--helper.c |  5 ++++-
 commit-graph.c              | 18 +++++++++++-------
 commit-graph.h              |  2 +-
 credential.c                |  1 +
 diff.c                      |  1 +
 path.h                      | 14 --------------
 range-diff.c                | 30 +++++++++++++-----------------
 remote-curl.c               | 12 ++++++++----
 repository.c                | 16 ++++++++++++++++
 repository.h                | 14 +++++++++++++-
 transport.c                 | 27 ++++++++++++++++-----------
 urlmatch.c                  |  5 +++++
 urlmatch.h                  |  1 +
 21 files changed, 113 insertions(+), 64 deletions(-)
-- 
2.35.1.1228.g56895c6ee86
Next: Ævar Arnfjörð Bjarmason
Message 1 of 37 in “tree-wide: small fixes for memory leaks”
  1. 00/14 tree-wide: small fixes for memory leaksÆvar Arnfjörð Bjarmason, Mar 2, 2022
  2. 01/14 index-pack: fix memory leaksÆvar Arnfjörð Bjarmason, Mar 2, 2022
  3. Derrick StoleeMar 2, 2022
  4. Ævar Arnfjörð BjarmasonMar 3, 2022
  5. 02/14 merge-base: free() allocated "struct commit **" listÆvar Arnfjörð Bjarmason, Mar 2, 2022
  6. 03/14 diff.c: free "buf" in diff_words_flush()Ævar Arnfjörð Bjarmason, Mar 2, 2022
  7. 05/14 remote-curl.c: free memory in cmd_main()Ævar Arnfjörð Bjarmason, Mar 2, 2022
  8. 04/14 urlmatch.c: add and use a *_release() functionÆvar Arnfjörð Bjarmason, Mar 2, 2022
  9. 06/14 bundle: call strvec_clear() on allocated strvecÆvar Arnfjörð Bjarmason, Mar 2, 2022
  10. 08/14 submodule--helper: fix trivial leak in module_add()Ævar Arnfjörð Bjarmason, Mar 2, 2022
  11. 07/14 transport: stop needlessly copying bundle header referencesÆvar Arnfjörð Bjarmason, Mar 2, 2022
  12. Derrick StoleeMar 2, 2022
  13. Ævar Arnfjörð BjarmasonMar 3, 2022
  14. 09/14 commit-graph: fix memory leak in misused string_list APIÆvar Arnfjörð Bjarmason, Mar 2, 2022
  15. 10/14 commit-graph: stop fill_oids_from_packs() progress on error and free()Ævar Arnfjörð Bjarmason, Mar 2, 2022
  16. 11/14 lockfile API users: simplify and don't leak "path"Ævar Arnfjörð Bjarmason, Mar 2, 2022
  17. 12/14 range-diff: plug memory leak in common invocationÆvar Arnfjörð Bjarmason, Mar 2, 2022
  18. 14/14 repository.c: free the "path cache" in repo_clear()Ævar Arnfjörð Bjarmason, Mar 2, 2022
  19. 13/14 range-diff: plug memory leak in read_patches()Ævar Arnfjörð Bjarmason, Mar 2, 2022
  20. Derrick StoleeMar 2, 2022
  21. 00/14 tree-wide: small fixes for memory leaksÆvar Arnfjörð Bjarmason, Mar 4, 2022
  22. 01/14 index-pack: fix memory leaksÆvar Arnfjörð Bjarmason, Mar 4, 2022
  23. 02/14 merge-base: free() allocated "struct commit **" listÆvar Arnfjörð Bjarmason, Mar 4, 2022
  24. 03/14 diff.c: free "buf" in diff_words_flush()Ævar Arnfjörð Bjarmason, Mar 4, 2022
  25. 04/14 urlmatch.c: add and use a *_release() functionÆvar Arnfjörð Bjarmason, Mar 4, 2022
  26. 05/14 remote-curl.c: free memory in cmd_main()Ævar Arnfjörð Bjarmason, Mar 4, 2022
  27. 06/14 bundle: call strvec_clear() on allocated strvecÆvar Arnfjörð Bjarmason, Mar 4, 2022
  28. 07/14 transport: stop needlessly copying bundle header referencesÆvar Arnfjörð Bjarmason, Mar 4, 2022
  29. Derrick StoleeMar 4, 2022
  30. 09/14 commit-graph: fix memory leak in misused string_list APIÆvar Arnfjörð Bjarmason, Mar 4, 2022
  31. 12/14 range-diff: plug memory leak in common invocationÆvar Arnfjörð Bjarmason, Mar 4, 2022
  32. 13/14 range-diff: plug memory leak in read_patches()Ævar Arnfjörð Bjarmason, Mar 4, 2022
  33. 11/14 lockfile API users: simplify and don't leak "path"Ævar Arnfjörð Bjarmason, Mar 4, 2022
  34. 14/14 repository.c: free the "path cache" in repo_clear()Ævar Arnfjörð Bjarmason, Mar 4, 2022
  35. 10/14 commit-graph: stop fill_oids_from_packs() progress on error and free()Ævar Arnfjörð Bjarmason, Mar 4, 2022
  36. 08/14 submodule--helper: fix trivial leak in module_add()Ævar Arnfjörð Bjarmason, Mar 4, 2022
  37. Derrick StoleeMar 4, 2022

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.