From 304cc11c6566cf22e811aa791988c61b6d291973 Mon Sep 17 00:00:00 2001 From: Jeff King Date: Tue, 29 Mar 2011 16:56:53 -0400 Subject: notes: refactor display notes extra refs field There's no need to use an extra pointer, which just ends up leaking memory. The fact that the list is empty tells us the same thing. Signed-off-by: Jeff King Signed-off-by: Junio C Hamano --- notes.c | 4 ++-- notes.h | 4 +++- revision.c | 4 +--- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/notes.c b/notes.c index f6b9b6a72a..2ec604c1db 100644 --- a/notes.c +++ b/notes.c @@ -1066,9 +1066,9 @@ void init_display_notes(struct display_notes_opt *opt) git_config(notes_display_config, &load_config_refs); - if (opt && opt->extra_notes_refs) { + if (opt) { struct string_list_item *item; - for_each_string_list_item(item, opt->extra_notes_refs) + for_each_string_list_item(item, &opt->extra_notes_refs) string_list_add_refs_by_glob(&display_notes_refs, item->string); } diff --git a/notes.h b/notes.h index 60bdf289a3..7ae3eefe06 100644 --- a/notes.h +++ b/notes.h @@ -1,6 +1,8 @@ #ifndef NOTES_H #define NOTES_H +#include "string-list.h" + /* * Function type for combining two notes annotating the same object. * @@ -257,7 +259,7 @@ struct string_list; struct display_notes_opt { unsigned int suppress_default_notes:1; - struct string_list *extra_notes_refs; + struct string_list extra_notes_refs; }; /* diff --git a/revision.c b/revision.c index 5826e5d599..24b89ebfdc 100644 --- a/revision.c +++ b/revision.c @@ -1372,11 +1372,9 @@ static int handle_revision_opt(struct rev_info *revs, int argc, const char **arg struct strbuf buf = STRBUF_INIT; revs->show_notes = 1; revs->show_notes_given = 1; - if (!revs->notes_opt.extra_notes_refs) - revs->notes_opt.extra_notes_refs = xcalloc(1, sizeof(struct string_list)); strbuf_addstr(&buf, arg+13); expand_notes_ref(&buf); - string_list_append(revs->notes_opt.extra_notes_refs, + string_list_append(&revs->notes_opt.extra_notes_refs, strbuf_detach(&buf, NULL)); } else if (!strcmp(arg, "--no-notes")) { revs->show_notes = 0; -- cgit v1.2.1