On Sun, Sep 12, 2021 at 06:39:26PM -0400, Jeff King wrote:
It only becomes apparent with the second patch. I would have found it
much easier to understand with something like the patch below. And then
a further patch to use strvec_pushv instead of manually looping (even
getting rid of the argc parameters entirely!), and one to convert
run_file_diff() to use a struct child_process (which fixes its memory
leak).
-- >8 --
difftool: prepare "diff" cmdline in cmd_difftool()
Note that this actually introduces a new leak of the strvec in the
caller. So it would probably want the "ret =" think I suggested to be
squashed in.
(I wasn't really planning to make a finished patch, but just trying to
illustrate what had confused me in your original. I ended up closer than
I had planned, though).
-Peff