(svn r7830) -Codechange: let NetworkCoreInitialize return a bool, so we have to set _network_available only once.
authorrubidium
Thu, 04 Jan 2007 19:12:45 +0000
changeset 5524 93460e0fed07
parent 5523 623a8856e35b
child 5525 c4aadd23c749
(svn r7830) -Codechange: let NetworkCoreInitialize return a bool, so we have to set _network_available only once.
src/network/core/core.c
src/network/core/core.h
src/network/network.c
--- a/src/network/core/core.c	Thu Jan 04 18:50:40 2007 +0000
+++ b/src/network/core/core.c	Thu Jan 04 19:12:45 2007 +0000
@@ -13,7 +13,7 @@
 /**
  * Initializes the network core (as that is needed for some platforms
  */
-void NetworkCoreInitialize(void)
+bool NetworkCoreInitialize(void)
 {
 #if defined(__MORPHOS__) || defined(__AMIGA__)
 	/*
@@ -24,8 +24,7 @@
 	SocketBase = OpenLibrary("bsdsocket.library", 4);
 	if (SocketBase == NULL) {
 		DEBUG(net, 0, "[core] can't open bsdsocket.library version 4, network unavailable");
-		_network_available = false;
-		return;
+		return false;
 	}
 
 #if defined(__AMIGA__)
@@ -37,10 +36,9 @@
 			if (OpenDevice("timer.device", UNIT_MICROHZ, (struct IORequest*)TimerRequest, 0) == 0) {
 				TimerBase = TimerRequest->tr_node.io_Device;
 				if (TimerBase == NULL) {
-					// free ressources...
+					/* free ressources... */
 					DEBUG(net, 0, "[core] can't initialize timer, network unavailable");
-					_network_available = false;
-					return;
+					return false;
 				}
 			}
 		}
@@ -55,11 +53,12 @@
 		DEBUG(net, 3, "[core] loading windows socket library");
 		if (WSAStartup(MAKEWORD(2, 0), &wsa) != 0) {
 			DEBUG(net, 0, "[core] WSAStartup failed, network unavailable");
-			_network_available = false;
-			return;
+			return false;
 		}
 	}
 #endif /* WIN32 */
+
+	return true;
 }
 
 /**
--- a/src/network/core/core.h	Thu Jan 04 18:50:40 2007 +0000
+++ b/src/network/core/core.h	Thu Jan 04 19:12:45 2007 +0000
@@ -5,7 +5,7 @@
 
 #ifdef ENABLE_NETWORK
 
-void NetworkCoreInitialize(void);
+bool NetworkCoreInitialize(void);
 void NetworkCoreShutdown(void);
 
 #endif /* ENABLE_NETWORK */
--- a/src/network/network.c	Thu Jan 04 18:50:40 2007 +0000
+++ b/src/network/network.c	Thu Jan 04 19:12:45 2007 +0000
@@ -1336,20 +1336,18 @@
 	snprintf(_network_unique_id, sizeof(_network_unique_id), "%s", hex_output);
 }
 
-// This tries to launch the network for a given OS
+/** This tries to launch the network for a given OS */
 void NetworkStartUp(void)
 {
 	DEBUG(net, 3, "[core] starting network...");
 
-	// Network is available
-	_network_available = true;
+	/* Network is available */
+	_network_available = NetworkCoreInitialize();;
 	_network_dedicated = false;
 	_network_last_advertise_frame = 0;
 	_network_need_advertise = true;
 	_network_advertise_retries = 0;
 
-	NetworkCoreInitialize();
-
 	/* Load the ip from the openttd.cfg */
 	_network_server_bind_ip = inet_addr(_network_server_bind_ip_host);
 	/* And put the data back in it in case it was an invalid ip */
@@ -1375,7 +1373,7 @@
 	NetworkFindIPs();
 }
 
-// This shuts the network down
+/** This shuts the network down */
 void NetworkShutDown(void)
 {
 	NetworkDisconnect();