From cb297b0a1b97a39b67984cf6ffbd9b3a80ef348b Mon Sep 17 00:00:00 2001 From: Rusty Russell Date: Thu, 11 Apr 2019 14:45:22 +0930 Subject: [PATCH] gossipd: free tmpctx children in gossip_store_load loop. We're accumulating children, and we'll get more in the successive patches. Signed-off-by: Rusty Russell --- gossipd/gossip_store.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gossipd/gossip_store.c b/gossipd/gossip_store.c index 2a26d72cc..b60e1fc22 100644 --- a/gossipd/gossip_store.c +++ b/gossipd/gossip_store.c @@ -438,7 +438,7 @@ void gossip_store_load(struct routing_state *rstate, struct gossip_store *gs) read(fd, &becsum, sizeof(becsum)) == sizeof(becsum)) { msglen = be32_to_cpu(belen); checksum = be32_to_cpu(becsum); - msg = tal_arr(gs, u8, msglen); + msg = tal_arr(tmpctx, u8, msglen); if (read(fd, msg, msglen) != msglen) { status_unusual("gossip_store: truncated file?"); @@ -496,7 +496,7 @@ void gossip_store_load(struct routing_state *rstate, struct gossip_store *gs) } gs->len += sizeof(belen) + sizeof(becsum) + msglen; gs->count++; - tal_free(msg); + clean_tmpctx(); } goto out;