From 41a5d19198cb65cbe16f58acd6a3397a423b94f7 Mon Sep 17 00:00:00 2001 From: Rusty Russell Date: Mon, 18 Dec 2017 17:37:10 +1030 Subject: [PATCH] wallet: don't leak channel struct when peer freed. Signed-off-by: Rusty Russell --- wallet/wallet.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/wallet/wallet.c b/wallet/wallet.c index f47bb0274..a7d3ac31a 100644 --- a/wallet/wallet.c +++ b/wallet/wallet.c @@ -565,6 +565,8 @@ bool wallet_channels_load_active(struct wallet *w, struct list_head *peers) struct wallet_channel *c = talz(w, struct wallet_channel); ok &= wallet_stmt2channel(w, stmt, c); list_add(peers, &c->peer->list); + /* Peer owns channel. FIXME delete from db if peer freed! */ + tal_steal(c->peer, c); count++; } log_debug(w->log, "Loaded %d channels from DB", count);