Zev Weiss <zev@xxxxxxxxxxxxxxxxx> writes: > Subject: Re: [PATCH 3/5] log: Push to/cc handling down into show_log() s/Push/push/ cf. Documentation/SubmittingPatches[[summary-section]] This is common to all these patches. > @@ -1326,6 +1326,7 @@ static void make_cover_letter(struct rev_info *rev, int use_separate_file, > pp.rev = rev; > pp.print_email_subject = 1; > pp_user_info(&pp, NULL, &sb, committer, encoding); > + format_recipients(rev, &sb); This is where the two new members in the rev structure is used. > @@ -2028,9 +2029,8 @@ int cmd_format_patch(int argc, const char **argv, const char *prefix) > strbuf_addch(&buf, '\n'); > } > > - recipients_to_header_buf("To", &buf, &extra_to); > - recipients_to_header_buf("Cc", &buf, &extra_cc); > - > + rev.to_recipients = &extra_to; > + rev.cc_recipients = &extra_cc; > rev.extra_headers = to_free = strbuf_detach(&buf, NULL); And these two members point at borrowed memory. extra_to and extra_cc is freed after everything is done, near the end of the cmd_format_patch() function. We don't leak any extra memory by this change, which is good.