From 5b79592a620f120695434906b83b256b7c7a6df9 Mon Sep 17 00:00:00 2001 From: Christian Ulrich Date: Tue, 17 Nov 2020 22:39:33 +0100 Subject: [PATCH] fix segfault --- server_connection.nim | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/server_connection.nim b/server_connection.nim index c28e72d..cf5318f 100644 --- a/server_connection.nim +++ b/server_connection.nim @@ -62,7 +62,9 @@ proc getEndpoint(srcPort: Port, serverHostname: string, serverPort: Port): proc initServerConnection*(serverHostname: string, serverPort: Port, srcPort: Port, probingServers: seq[Endpoint]): Future[ServerConnection] {.async.} = - result.srcPort = srcPort + result = ServerConnection(outMessages: newTable[string, Future[string]](), + peerNotifications: newFutureStream[string]("initServerConnection"), + srcPort: srcPort) for s in probingServers: let endpoint = await getEndpoint(srcPort, s.hostname, s.port) # FIXME: what if we get get different IPs from different servers @@ -70,8 +72,6 @@ proc initServerConnection*(serverHostname: string, serverPort: Port, result.probedSrcPorts.add(endpoint.port) result.sock = await asyncnet.dial(serverHostname, serverPort) - result.outMessages = newTable[string, Future[string]]() - result.peerNotifications = newFutureStream[string]("initServerConnection") proc handleServerMessages*(conn: ServerConnection) {.async.} = while true: