From fc42681eb5872c1ddc3008b35c7c662a46efe8bb Mon Sep 17 00:00:00 2001 From: Patrick McHardy Date: Fri, 20 Mar 2009 17:42:55 +0100 Subject: Fix some memory leaks Free nested chain handles and command structures when done. Signed-off-by: Patrick McHardy --- src/main.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'src/main.c') diff --git a/src/main.c b/src/main.c index 00f594f6..3daa294e 100644 --- a/src/main.c +++ b/src/main.c @@ -183,14 +183,16 @@ int main(int argc, char * const *argv) { struct netlink_ctx ctx; - struct cmd *cmd; + struct cmd *cmd, *next; - list_for_each_entry(cmd, &state.cmds, list) { + list_for_each_entry_safe(cmd, next, &state.cmds, list) { memset(&ctx, 0, sizeof(ctx)); ctx.msgs = &msgs; init_list_head(&ctx.list); if (do_command(&ctx, cmd) < 0) goto out; + list_del(&cmd->list); + cmd_free(cmd); } } out: -- cgit v1.2.3