From dfc1a05cb2fed3c5ad28e522ec4d845204b5565d Mon Sep 17 00:00:00 2001 From: Lee Salzman Date: Tue, 7 Nov 2006 04:01:31 +0000 Subject: [PATCH] *** empty log message *** git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@516 e016b1c5-ed68-44aa-a2f7-31cac88cffde --- source/src/serverms.cpp | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/source/src/serverms.cpp b/source/src/serverms.cpp index b6a4d190..33f614f9 100644 --- a/source/src/serverms.cpp +++ b/source/src/serverms.cpp @@ -13,15 +13,25 @@ ENetSocket mssock = ENET_SOCKET_NULL; void httpgetsend(ENetAddress &ad, char *hostname, char *req, char *ref, char *agent) { + if(mssock!=ENET_SOCKET_NULL) + { + enet_socket_destroy(mssock); + mssock = ENET_SOCKET_NULL; + }; if(ad.host==ENET_HOST_ANY) { printf("looking up %s...\n", hostname); if(!resolverwait(hostname, &ad)) return; }; - if(mssock!=ENET_SOCKET_NULL) enet_socket_destroy(mssock); mssock = enet_socket_create(ENET_SOCKET_TYPE_STREAM, NULL); if(mssock==ENET_SOCKET_NULL) { printf("could not open socket\n"); return; }; - if(enet_socket_connect(mssock, &ad)<0) { printf("could not connect\n"); return; }; + if(enet_socket_connect(mssock, &ad)<0) + { + printf("could not connect\n"); + enet_socket_destroy(mssock); + mssock = ENET_SOCKET_NULL; + return; + }; ENetBuffer buf; s_sprintfd(httpget)("GET %s HTTP/1.0\nHost: %s\nReferer: %s\nUser-Agent: %s\n\n", req, hostname, ref, agent); buf.data = httpget;