Re: [PATCH] line-log: protect inner strbuf from free
- From
Jeff King <peff@peff.net>
- Date
- Oct 3, 2024, 21:02 UTC
- Message-ID
- <20241003210257.GA11180@coredump.intra.peff.net>
- In-Reply-To
- <cf5fea7a-c711-4d35-9c6e-fe96778a3f85@gmail.com>
On Thu, Oct 03, 2024 at 08:23:22AM -0400, Derrick Stolee wrote:
Show 18 quoted lines
> > The whole thing feels a bit over-engineered with the callback. The graph > > code is the only one that needs anything beyond a static string. And the > > way --line-prefix interacts with it is odd, since some callers override > > the callback (e.g., "range-diff --line-prefix=foo" is accepted, but > > doesn't do anything). I don't think there's a bug anybody cares about, > > but, well...it's not how I would have written it. ;) > > Thanks for exploring this with the diff you sent. It's subtle, but you > did a good job of recognizing that when the callback is used without > a 'graph' value, it returns opt->line_prefix. > > > + if (!graph) > > + return opt->line_prefix; > > I was wondering why there was no need to edit graph_setup_line_prefix() > in your diff, and this explains why. Your change is simple enough to > handle that change while being robust to a future assignment of the > callback data.
Yeah. I actually ended up pulling that into its own patch because it's sufficiently subtle. I'll send that along in a minute.
-Peff