From b0971f4459fd37813dd4779f2ddaf9b38cf5f776 Mon Sep 17 00:00:00 2001 From: Perttu Ahola Date: Tue, 8 Feb 2011 11:24:07 +0200 Subject: [PATCH] local game connects to 127.0.0.1 instead of localhost (windows returns an ipv6 address sometimes which is not supported) --- minetest.vcproj | 8 ++++---- src/debug.cpp | 2 ++ src/irrlichtwrapper.cpp | 10 ++++++++++ src/main.cpp | 9 ++++----- src/socket.cpp | 8 ++++++++ src/socket.h | 2 ++ 6 files changed, 30 insertions(+), 9 deletions(-) diff --git a/minetest.vcproj b/minetest.vcproj index 34536e0e..8d49d2cd 100644 --- a/minetest.vcproj +++ b/minetest.vcproj @@ -39,8 +39,8 @@ /> @@ -136,7 +136,7 @@ /> getTexture(path.c_str()); + driver->renameTexture(t, texture_name.c_str()); + return t; + }*/ + video::IImage *image = driver->createImageFromFile(path.c_str()); if(image == NULL) diff --git a/src/main.cpp b/src/main.cpp index e1d8492f..74c93a70 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -116,8 +116,6 @@ FIXME: Some network errors on Windows that cause local game to not work - See siggjen's emails. - Is this the famous "windows 7 problem"? - Apparently there might be other errors too - - There is some problem with the menu system, something like the - .Parent of guiPauseMenu to end up being 0xfeeefeee Networking and serialization: ----------------------------- @@ -1626,8 +1624,8 @@ int main(int argc, char *argv[]) video::E_DRIVER_TYPE driverType; #ifdef _WIN32 - //driverType = video::EDT_DIRECT3D9; - driverType = video::EDT_OPENGL; + driverType = video::EDT_DIRECT3D9; + //driverType = video::EDT_OPENGL; #else driverType = video::EDT_OPENGL; //driverType = video::EDT_BURNINGSVIDEO; // Best software renderer @@ -1914,7 +1912,8 @@ int main(int argc, char *argv[]) Address connect_address(0,0,0,0, port); try{ if(address == "") - connect_address.Resolve("localhost"); + //connect_address.Resolve("localhost"); + connect_address.setAddress(127,0,0,1); else connect_address.Resolve(address.c_str()); } diff --git a/src/socket.cpp b/src/socket.cpp index 499ee504..b159fa14 100644 --- a/src/socket.cpp +++ b/src/socket.cpp @@ -26,7 +26,9 @@ with this program; if not, write to the Free Software Foundation, Inc., #include "utility.h" // Debug printing options +// Set to 1 for debug output #define DP 0 +// This is prepended to everything printed here #define DPS "" bool g_sockets_initialized = false; @@ -108,6 +110,12 @@ void Address::setAddress(unsigned int address) m_address = address; } +void Address::setAddress(unsigned int a, unsigned int b, + unsigned int c, unsigned int d) +{ + m_address = (a<<24) | (b<<16) | ( c<<8) | d; +} + void Address::setPort(unsigned short port) { m_port = port; diff --git a/src/socket.h b/src/socket.h index b6b58007..a56715d9 100644 --- a/src/socket.h +++ b/src/socket.h @@ -85,6 +85,8 @@ public: unsigned int getAddress() const; unsigned short getPort() const; void setAddress(unsigned int address); + void setAddress(unsigned int a, unsigned int b, + unsigned int c, unsigned int d); void setPort(unsigned short port); void print(std::ostream *s) const; void print() const; -- 2.30.2