mirror of
https://git.tartarus.org/simon/putty.git
synced 2025-01-10 01:48: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;
|
scp->head = node->next;
|
||||||
sfree(node);
|
sfree(node);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
delete_callbacks_for_context(scp);
|
||||||
|
|
||||||
sfree(scp);
|
sfree(scp);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1804,6 +1804,7 @@ void term_free(Terminal *term)
|
|||||||
sfree(term->tabs);
|
sfree(term->tabs);
|
||||||
|
|
||||||
expire_timer_context(term);
|
expire_timer_context(term);
|
||||||
|
delete_callbacks_for_context(term);
|
||||||
|
|
||||||
conf_free(term->conf);
|
conf_free(term->conf);
|
||||||
|
|
||||||
|
@ -128,6 +128,8 @@ static void sk_handle_close(Socket *s)
|
|||||||
CloseHandle(hs->recv_H);
|
CloseHandle(hs->recv_H);
|
||||||
bufchain_clear(&hs->inputdata);
|
bufchain_clear(&hs->inputdata);
|
||||||
|
|
||||||
|
delete_callbacks_for_context(hs);
|
||||||
|
|
||||||
sfree(hs);
|
sfree(hs);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1344,6 +1344,7 @@ static void sk_net_close(Socket *sock)
|
|||||||
p_closesocket(s->s);
|
p_closesocket(s->s);
|
||||||
if (s->addr)
|
if (s->addr)
|
||||||
sk_addr_free(s->addr);
|
sk_addr_free(s->addr);
|
||||||
|
delete_callbacks_for_context(s);
|
||||||
sfree(s);
|
sfree(s);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user