Hi Phillip, On 23 April 2018 at 17:54, Phillip Wood <phillip.wood@xxxxxxxxxxxx> wrote: > I'm fine with leaving it, I've might get round to doing a small series to > clean things up slightly in a few weeks. At the moment > setup_unpack_trees_porcelain() leaks memory as it is called for each merge > and allocates new strings each time. It would also be nice if the error > messages reflected the command, so it said 'cherry-pick', 'revert' or > 'reset' rather than 'merge' This is a small patch series to introduce and use `clear_unpack_trees_porcelain()`. Since Elijah is doing substantial rewrites to one of the users of `setup_unpack_trees_porcelain()` [1], I think we should hold off on these for now to avoid a quite evil merge. (I haven't studied the details enough to be confident, but I think the calls to `setup_...()` and `clear_...()` might need to be moved up the call-chain.) I'm posting this so we don't repeat each other's work. If you feel like picking these up and running with them, go ahead. Otherwise, I will try to get them in as soon as Elijah's series lands. I'll keep you posted. [1] https://public-inbox.org/git/CAN0heSquJboMMgay+5XomqXCGoHtXxf1mJBmY_L7y+AA4eG0KA@xxxxxxxxxxxxxx/#t Martin Martin Ågren (2): merge: setup `opts` later in `checkout_fast_forward()` unpack_trees_options: free messages when done unpack-trees.h | 5 +++++ builtin/checkout.c | 1 + merge-recursive.c | 1 + merge.c | 35 ++++++++++++++++++++--------------- unpack-trees.c | 11 +++++++++++ 5 files changed, 38 insertions(+), 15 deletions(-) -- 2.17.0