Since commit
20ec1de214 ("MAJOR: cli: Refacor parsing and execution of
pipelined commands"), command not returning any response (e.g. "quit")
don't pass through the free_trash_chunk() call, possibly leaking the
cmdline buffer. A typical way to reproduce it is to loop on "quit" on
the CLI, though it very likely affects other specific commands.
Let's make sure in the release handler that we always release that
chunk in any case. This must be backported to 3.2.
*/
static void cli_release_handler(struct appctx *appctx)
{
+ free_trash_chunk(appctx->cli_ctx.cmdline);
+
if (appctx->cli_ctx.io_release) {
appctx->cli_ctx.io_release(appctx);
appctx->cli_ctx.io_release = NULL;