Free socket buffers on disconnect
Otherwise we would leak the memory on every reconnect (and exit).
This commit is contained in:
parent
daaa48108a
commit
74b2129e09
13
tcp.c
13
tcp.c
@ -613,6 +613,8 @@ tcp_connect(char *server)
|
|||||||
void
|
void
|
||||||
tcp_disconnect(void)
|
tcp_disconnect(void)
|
||||||
{
|
{
|
||||||
|
int i;
|
||||||
|
|
||||||
if (g_ssl)
|
if (g_ssl)
|
||||||
{
|
{
|
||||||
if (!g_network_error)
|
if (!g_network_error)
|
||||||
@ -625,6 +627,17 @@ tcp_disconnect(void)
|
|||||||
|
|
||||||
TCP_CLOSE(g_sock);
|
TCP_CLOSE(g_sock);
|
||||||
g_sock = -1;
|
g_sock = -1;
|
||||||
|
|
||||||
|
g_in.size = 0;
|
||||||
|
xfree(g_in.data);
|
||||||
|
g_in.data = NULL;
|
||||||
|
|
||||||
|
for (i = 0; i < STREAM_COUNT; i++)
|
||||||
|
{
|
||||||
|
g_out[i].size = 0;
|
||||||
|
xfree(g_out[i].data);
|
||||||
|
g_out[i].data = NULL;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
char *
|
char *
|
||||||
|
Loading…
Reference in New Issue
Block a user