diff --git a/src/network/TCPSocket.cpp b/src/network/TCPSocket.cpp index 873fb86..b097c6f 100644 --- a/src/network/TCPSocket.cpp +++ b/src/network/TCPSocket.cpp @@ -23,12 +23,10 @@ bool TCPSocket::Connect(const IPAddress& address, unsigned short port) { if (this->GetStatus() == Connected) return true; - struct addrinfo hints = { 0 }, * result = nullptr; + struct addrinfo hints{}; + memset(&hints, 0, sizeof(addrinfo)); - if ((m_Handle = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP)) < 0) { - std::cerr << "Failed to create socket !\n"; - return false; - } + struct addrinfo* result = nullptr; hints.ai_family = AF_INET; hints.ai_socktype = SOCK_STREAM; @@ -39,11 +37,18 @@ bool TCPSocket::Connect(const IPAddress& address, unsigned short port) { return false; } + if ((m_Handle = ::socket(AF_INET, SOCK_STREAM, IPPROTO_TCP)) < 0) { + std::cerr << "Failed to create socket !\n"; + return false; + } + struct addrinfo* ptr = nullptr; for (ptr = result; ptr != nullptr; ptr = ptr->ai_next) { struct sockaddr_in* sockaddr = (struct sockaddr_in*)ptr->ai_addr; - if (::connect(m_Handle, (struct sockaddr*)sockaddr, sizeof(struct sockaddr_in)) != 0) + if (::connect(m_Handle, (struct sockaddr*)sockaddr, sizeof(struct sockaddr_in)) != 0) { + std::cerr << "Failed to connect with this address !\n"; continue; + } m_RemoteAddr = *sockaddr; break; } diff --git a/src/render/gui/TowerGui.cpp b/src/render/gui/TowerGui.cpp index 767c194..c322cf4 100644 --- a/src/render/gui/TowerGui.cpp +++ b/src/render/gui/TowerGui.cpp @@ -145,7 +145,7 @@ void renderMainMenu() { if (!startServer(port, worldFilePath)) { triedToCreate = true; } else { - client->connect("localhost", port); + client->connect("127.0.0.1", port); } } if (triedToCreate)