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

Re: [PATCHv3 3/6] line-log.c: fix a memleak

From
Junio C Hamano <gitster@pobox.com>
Date
Mar 31, 2015, 05:06 UTC
Message-ID
<xmqqsiclsqlz.fsf@gitster.dls.corp.google.com>
In-Reply-To
<1427764931-27745-4-git-send-email-sbeller@google.com>
Stefan Beller <sbeller@google.com> writes:
Show 16 quoted lines
> Signed-off-by: Stefan Beller <sbeller@google.com>
> ---
>  line-log.c | 3 +++
>  1 file changed, 3 insertions(+)
>
> diff --git a/line-log.c b/line-log.c
> index b43ac58..db6e58d 100644
> --- a/line-log.c
> +++ b/line-log.c
> @@ -1129,6 +1129,9 @@ static int process_ranges_ordinary_commit(struct rev_info *rev, struct commit *c
>  	changed = process_all_files(&parent_range, rev, &queue, range);
>  	if (parent)
>  		add_line_range(rev, parent, parent_range);
> +	else
> +		free_line_log_data(parent_range);
> +

Should this be in the else clause? From a cursory scan add-line-range feeds it to either line-log-data-merge or line-log-data-copy to create "new" that is a separate thing from the parent_range we are feeding it, and that copy is used by add-decoration. If add-line-range does not take ownership of parent_range from us, shouldn't we be freeing it whether we called it or not???

>  	return changed;
>  }
Previous: Torsten BögershausenNext: Stefan Beller
Message 7 of 16 in “[PATCHv3 0/6] Memory leaks once again”
  1. Stefan BellerMar 31, 2015
  2. 1/6 shallow: fix a memleakStefan Beller, Mar 31, 2015
  3. Eric SunshineMar 31, 2015
  4. 2/6 line-log.c: fix a memleakStefan Beller, Mar 31, 2015
  5. 3/6 line-log.c: fix a memleakStefan Beller, Mar 31, 2015
  6. Torsten BögershausenMar 31, 2015
  7. Junio C HamanoMar 31, 2015
  8. Stefan BellerMar 31, 2015
  9. Junio C HamanoMar 31, 2015
  10. 4/6 wt-status.c: fix a memleakStefan Beller, Mar 31, 2015
  11. 5/6 pack-bitmap.c: fix a memleakStefan Beller, Mar 31, 2015
  12. Jeff KingMar 31, 2015
  13. 6/6 entry.c: fix a memleakStefan Beller, Mar 31, 2015
  14. Junio C HamanoMar 31, 2015
  15. John KeepingMar 31, 2015
  16. Junio C HamanoMar 31, 2015

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.