mirror of
https://git.tartarus.org/simon/putty.git
synced 2025-01-09 17:38:00 +00:00
Add further missing delete_callbacks_for_context.
Having explicitly _stated_ in commit 4dcc0fddf
the principle that if
you ever queue a toplevel callback on a freeable object then you
should also call delete_callbacks_for_context on that object before
freeing it, I realised I'd never actually gone through and checked
methodically at every call site of queue_toplevel_callback. So I did,
and naturally, I found several missing ones.
This commit is contained in:
parent
4dcc0fddf7
commit
108baae60e
@ -521,6 +521,9 @@ static void scp_source_free(ScpServer *s)
|
||||
scp->head = node->next;
|
||||
sfree(node);
|
||||
}
|
||||
|
||||
delete_callbacks_for_context(scp);
|
||||
|
||||
sfree(scp);
|
||||
}
|
||||
|
||||
|
@ -1804,6 +1804,7 @@ void term_free(Terminal *term)
|
||||
sfree(term->tabs);
|
||||
|
||||
expire_timer_context(term);
|
||||
delete_callbacks_for_context(term);
|
||||
|
||||
conf_free(term->conf);
|
||||
|
||||
|
@ -128,6 +128,8 @@ static void sk_handle_close(Socket *s)
|
||||
CloseHandle(hs->recv_H);
|
||||
bufchain_clear(&hs->inputdata);
|
||||
|
||||
delete_callbacks_for_context(hs);
|
||||
|
||||
sfree(hs);
|
||||
}
|
||||
|
||||
|
@ -1344,6 +1344,7 @@ static void sk_net_close(Socket *sock)
|
||||
p_closesocket(s->s);
|
||||
if (s->addr)
|
||||
sk_addr_free(s->addr);
|
||||
delete_callbacks_for_context(s);
|
||||
sfree(s);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user