From b089d462e533d2b304cc28b9ad277cbfa53f12ce Mon Sep 17 00:00:00 2001 From: Rusty Russell Date: Sat, 16 Mar 2019 14:57:05 +1030 Subject: [PATCH] io: don't leak memory on clean shutdown. Free the internal "always" array like we free "fds". Signed-off-by: Rusty Russell --- ccan/io/poll.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/ccan/io/poll.c b/ccan/io/poll.c index 95b61032..a02152e3 100644 --- a/ccan/io/poll.c +++ b/ccan/io/poll.c @@ -137,6 +137,12 @@ static void remove_from_always(const struct io_plan *plan) if (pos != num_always-1) always[pos] = always[num_always-1]; num_always--; + + /* Only free if no fds left either. */ + if (num_always == 0 && max_fds == 0) { + tal_free(always); + max_always = 0; + } } bool backend_new_always(struct io_plan *plan) -- 2.39.2