mirror of
https://github.com/aljazceru/lightning.git
synced 2025-12-19 15:14:23 +01:00
libplugin-pay: fix (transitory) memleak which memleak detection complains about.
We assign this in the loop without freeing it first. ``` plugin-pay: MEMLEAK: 0x55792b155e18 plugin-pay: label=plugins/libplugin-pay.c:3274:struct short_channel_id_dir plugin-pay: backtrace: plugin-pay: ccan/ccan/tal/tal.c:442 (tal_alloc_) plugin-pay: plugins/libplugin-pay.c:3274 (direct_pay_listpeerchannels) plugin-pay: plugins/libplugin.c:860 (handle_rpc_reply) plugin-pay: plugins/libplugin.c:1036 (rpc_read_response_one) plugin-pay: plugins/libplugin.c:1060 (rpc_conn_read_response) plugin-pay: ccan/ccan/io/io.c:59 (next_plan) plugin-pay: ccan/ccan/io/io.c:407 (do_plan) plugin-pay: ccan/ccan/io/io.c:417 (io_ready) plugin-pay: ccan/ccan/io/poll.c:453 (io_loop) plugin-pay: plugins/libplugin.c:1893 (plugin_main) plugin-pay: plugins/pay.c:1294 (main) plugin-pay: ../sysdeps/nptl/libc_start_call_main.h:58 (__libc_start_call_main) plugin-pay: ../csu/libc-start.c:381 (__libc_start_main_impl) plugin-pay: parents: plugin-pay: plugins/libplugin-pay.c:3308:struct direct_pay_data plugin-pay: plugins/libplugin.c:1775:struct plugin ``` Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
This commit is contained in:
@@ -3270,6 +3270,7 @@ static struct command_result *direct_pay_listpeerchannels(struct command *cmd,
|
|||||||
/* Must have either a local alias for zeroconf
|
/* Must have either a local alias for zeroconf
|
||||||
* channels or a final scid. */
|
* channels or a final scid. */
|
||||||
assert(chan->alias[LOCAL] || chan->scid);
|
assert(chan->alias[LOCAL] || chan->scid);
|
||||||
|
tal_free(d->chan);
|
||||||
d->chan = tal(d, struct short_channel_id_dir);
|
d->chan = tal(d, struct short_channel_id_dir);
|
||||||
if (chan->scid) {
|
if (chan->scid) {
|
||||||
d->chan->scid = *chan->scid;
|
d->chan->scid = *chan->scid;
|
||||||
|
|||||||
Reference in New Issue
Block a user