From 583d71680ec12349cd1bedea72ae136d55667ecb Mon Sep 17 00:00:00 2001 From: iphydf Date: Thu, 5 Jan 2017 18:19:05 +0000 Subject: [PATCH] Check that TCP connections aren't dropped in callbacks. They aren't, but it's unclear whether it's structurally impossible. --- toxcore/TCP_connection.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/toxcore/TCP_connection.c b/toxcore/TCP_connection.c index e8f512735..a92182101 100644 --- a/toxcore/TCP_connection.c +++ b/toxcore/TCP_connection.c @@ -29,6 +29,8 @@ #include "util.h" +#include + struct TCP_Connections { DHT *dht; @@ -1397,6 +1399,9 @@ static void do_tcp_conns(TCP_Connections *tcp_c, void *userdata) /* callbacks can change TCP connection address. */ tcp_con = get_tcp_connection(tcp_c, i); + // Make sure the TCP connection wasn't dropped in any of the callbacks. + assert(tcp_con != NULL); + if (tcp_con->connection->status == TCP_CLIENT_DISCONNECTED) { if (tcp_con->status == TCP_CONN_CONNECTED) { reconnect_tcp_relay_connection(tcp_c, i);