diff options
| author | Markus Wick <degasus@users.noreply.github.com> | 2015-12-02 14:20:47 +0100 |
|---|---|---|
| committer | Markus Wick <degasus@users.noreply.github.com> | 2015-12-02 14:20:47 +0100 |
| commit | ec6a48ff7627130194f2bb4de8b6cde817f2a9d5 (patch) | |
| tree | c27ce3b3125e3b12245d504f7845b5ece208ac32 /Source/Core/Common/TraversalClient.cpp | |
| parent | b0dbb6ef46b431263320cb368c35c89a775c39e1 (diff) | |
| parent | 7ddfe713d5b1fba258ded4f4f731a0c6bc5d4637 (diff) | |
Merge pull request #2876 from CastellaFactory/master
[Netplay] Add "Force Netplay Listen Port" feature that was in old netplay branch
Diffstat (limited to 'Source/Core/Common/TraversalClient.cpp')
| -rw-r--r-- | Source/Core/Common/TraversalClient.cpp | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/Source/Core/Common/TraversalClient.cpp b/Source/Core/Common/TraversalClient.cpp index 002c8834aa..bb453ed25b 100644 --- a/Source/Core/Common/TraversalClient.cpp +++ b/Source/Core/Common/TraversalClient.cpp @@ -320,17 +320,19 @@ std::unique_ptr<ENetHost> g_MainNetHost; // need to know not just what port it's on, but whether it was // explicitly requested. static std::string g_OldServer; -static u16 g_OldPort; +static u16 g_OldServerPort; +static u16 g_OldListenPort; -bool EnsureTraversalClient(const std::string& server, u16 port) +bool EnsureTraversalClient(const std::string& server, u16 server_port, u16 listen_port) { - if (!g_MainNetHost || !g_TraversalClient || server != g_OldServer || port != g_OldPort) + if (!g_MainNetHost || !g_TraversalClient || server != g_OldServer || server_port != g_OldServerPort || listen_port != g_OldListenPort) { g_OldServer = server; - g_OldPort = port ; + g_OldServerPort = server_port; + g_OldListenPort = listen_port; - ENetAddress addr = { ENET_HOST_ANY, 0 }; + ENetAddress addr = { ENET_HOST_ANY, listen_port }; ENetHost* host = enet_host_create( &addr, // address 50, // peerCount @@ -343,7 +345,7 @@ bool EnsureTraversalClient(const std::string& server, u16 port) return false; } g_MainNetHost.reset(host); - g_TraversalClient.reset(new TraversalClient(g_MainNetHost.get(), server, port)); + g_TraversalClient.reset(new TraversalClient(g_MainNetHost.get(), server, server_port)); } return true; } |
