diff --git a/net/cpp/src/listener.cpp b/net/cpp/src/listener.cpp
index 6e76aa20e702dff5c9965822e2befeb0a6bb3804..3b1c4af0eac14102721cfd4f458a37e0f89fde45 100644
--- a/net/cpp/src/listener.cpp
+++ b/net/cpp/src/listener.cpp
@@ -36,6 +36,7 @@ int tcpListen(URI &uri) {
 	WSAData wsaData;
 	//If Win32 then load winsock
 	if (WSAStartup(MAKEWORD(1,1), &wsaData) != 0) {
+		LOG(ERROR) << "Could not initiate sockets";
 		return INVALID_SOCKET;
 	}
 	#endif
diff --git a/net/cpp/src/universe.cpp b/net/cpp/src/universe.cpp
index 6fe2891c1cc0bfd07b59e28ebc3f3e748efc36b8..066e7514d1e699a19895dcb61723a16e654ef52c 100644
--- a/net/cpp/src/universe.cpp
+++ b/net/cpp/src/universe.cpp
@@ -187,6 +187,15 @@ void Universe::__start(Universe * u) {
 void Universe::_run() {
 	timeval block;
 
+#ifdef WIN32
+	WSAData wsaData;
+	//If Win32 then load winsock
+	if (WSAStartup(MAKEWORD(1, 1), &wsaData) != 0) {
+		LOG(ERROR) << "Could not initiate sockets";
+		return;
+	}
+#endif
+
 	while (active_) {
 		int n = _setDescriptors();
 		int selres = 1;