tSpurious checks for HTTP socket write-ready status removed - vaccinewars - be … | |
git clone git://src.adamsgaard.dk/vaccinewars | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit 19ef80f5719c9b6064678a2f2f3b1312eb9c0740 | |
parent fd337f75410505b0b71ed3d2bb5e7531f1cd3ad1 | |
Author: Ben Webb <[email protected]> | |
Date: Sun, 9 Sep 2001 22:51:44 +0000 | |
Spurious checks for HTTP socket write-ready status removed | |
Diffstat: | |
M src/gtk_client.c | 24 +++++++++++------------- | |
M src/message.c | 4 ++++ | |
M src/serverside.c | 7 +++++++ | |
3 files changed, 22 insertions(+), 13 deletions(-) | |
--- | |
diff --git a/src/gtk_client.c b/src/gtk_client.c | |
t@@ -1998,14 +1998,19 @@ static void HandleMetaSock(gpointer data,gint socket, | |
CloseHttpConnection(widgets->MetaConn); | |
widgets->MetaTag=0; widgets->MetaConn=NULL; | |
FillMetaServerList(widgets); | |
+ } else if (condition&GDK_INPUT_WRITE && | |
+ !widgets->MetaConn->NetBuf.WriteBuf.DataPresent) { | |
+/* If we've written out everything, no need to test for write-ready any more */ | |
+ gdk_input_remove(widgets->MetaTag); | |
+ widgets->MetaTag=gdk_input_add(widgets->MetaConn->NetBuf.fd, | |
+ GDK_INPUT_READ, | |
+ HandleMetaSock,(gpointer)widgets); | |
} | |
} | |
static void UpdateMetaServerList(GtkWidget *widget, | |
struct StartGameStruct *widgets) { | |
-/* char *MetaError; | |
- int HttpSock;*/ | |
- | |
+ GtkWidget *metaserv; | |
if (widgets->MetaTag) { | |
gdk_input_remove(widgets->MetaTag); | |
CloseHttpConnection(widgets->MetaConn); | |
t@@ -2015,20 +2020,13 @@ static void UpdateMetaServerList(GtkWidget *widget, | |
widgets->MetaConn = OpenMetaHttpConnection(); | |
if (widgets->MetaConn) { | |
+ metaserv=widgets->metaserv; | |
+ gtk_clist_clear(GTK_CLIST(metaserv)); | |
+ ClearServerList(); | |
widgets->MetaTag = gdk_input_add(widgets->MetaConn->NetBuf.fd, | |
GDK_INPUT_READ|GDK_INPUT_WRITE, | |
HandleMetaSock,(gpointer)widgets); | |
} | |
- | |
-/* MetaError=OpenMetaServerConnection(&HttpSock); | |
- | |
- if (MetaError) { | |
- return; | |
- } | |
- ReadMetaServerData(HttpSock); | |
- CloseMetaServerConnection(HttpSock); | |
- MetaServerRead=TRUE; | |
- FillMetaServerList(widgets);*/ | |
} | |
static void MetaServerConnect(GtkWidget *widget, | |
diff --git a/src/message.c b/src/message.c | |
t@@ -628,6 +628,10 @@ HttpConnection *OpenHttpConnection(gchar *HostName,unsign… | |
QueueMessageForSend(&conn->NetBuf,text->str); | |
if (conn->Headers) QueueMessageForSend(&conn->NetBuf,conn->Headers); | |
+ | |
+ g_string_sprintf(text,"User-Agent: dopewars/%s",VERSION); | |
+ QueueMessageForSend(&conn->NetBuf,text->str); | |
+ | |
QueueMessageForSend(&conn->NetBuf,"\n"); | |
if (conn->Body) QueueMessageForSend(&conn->NetBuf,conn->Body); | |
diff --git a/src/serverside.c b/src/serverside.c | |
t@@ -190,6 +190,7 @@ void RegisterWithMetaServer(gboolean Up,gboolean SendData, | |
MetaConn=OpenHttpConnection(MetaServer.Name,MetaServer.Port, | |
MetaServer.ProxyName,MetaServer.ProxyPort, | |
"POST",MetaServer.Path,headers->str,body->str); | |
+ g_print("Sending headers %s and body %s\n",headers->str,body->str); | |
g_string_free(headers,TRUE); | |
g_string_free(body,TRUE); | |
t@@ -1003,6 +1004,12 @@ void GuiHandleMeta(gpointer data,gint socket,GdkInputCo… | |
gdk_input_remove(MetaInputTag); | |
MetaInputTag=0; | |
if (IsServerShutdown()) GuiQuitServer(); | |
+ } else if (condition&GDK_INPUT_WRITE && | |
+ !MetaConn->NetBuf.WriteBuf.DataPresent) { | |
+/* If we've written out everything, no need to test for write-ready any more */ | |
+ gdk_input_remove(MetaInputTag); | |
+ MetaInputTag=gdk_input_add(MetaConn->NetBuf.fd, | |
+ GDK_INPUT_READ,GuiHandleMeta,NULL); | |
} | |
} | |