fix: windows connecting
This commit is contained in:
@@ -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;
|
||||
}
|
||||
|
||||
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user