summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Graveley <alex@ximian.com>2001-07-30 00:47:08 +0000
committerAlex Graveley <orph@src.gnome.org>2001-07-30 00:47:08 +0000
commit344b02337904cdbfdca67897976e3bf74377369e (patch)
tree6f58e46e8c976dedd6345914721b6381b7656dcc
parentc1bbcdc45f30bcf3378492a822c2f615937f3ca8 (diff)
downloadlibsoup-344b02337904cdbfdca67897976e3bf74377369e.tar.gz
strdup response_phrase.
2001-07-29 Alex Graveley <alex@ximian.com> * src/soup-core/soup-apache.c (soup_apache_message_create): strdup response_phrase. * src/soup-core/soup-httpd.c (soup_httpd_read_done_cb): Ditto. * src/soup-core/soup-message.c (soup_message_free): Free response_phrase. * src/soup-core/soup-context.c (soup_try_existing_connections): Revert accidental commit. * src/soup-core/soup-queue.c (soup_get_request_header): Only inhibit Content-Length for GET and HEAD if request.length is 0; (soup_message_queue): Free response_phrase on requeue. * src/soup-core/soup-socket.c (soup_address_new): Fix formatting.
-rw-r--r--ChangeLog20
-rw-r--r--libsoup/soup-context.c2
-rw-r--r--libsoup/soup-message.c5
-rw-r--r--libsoup/soup-message.h2
-rw-r--r--libsoup/soup-queue.c15
-rw-r--r--libsoup/soup-socket.c20
6 files changed, 47 insertions, 17 deletions
diff --git a/ChangeLog b/ChangeLog
index 17bead8b..eac61810 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,23 @@
+2001-07-29 Alex Graveley <alex@ximian.com>
+
+ * src/soup-core/soup-apache.c (soup_apache_message_create): strdup
+ response_phrase.
+
+ * src/soup-core/soup-httpd.c (soup_httpd_read_done_cb): Ditto.
+
+ * src/soup-core/soup-message.c (soup_message_free): Free
+ response_phrase.
+
+ * src/soup-core/soup-context.c (soup_try_existing_connections):
+ Revert accidental commit.
+
+ * src/soup-core/soup-queue.c (soup_get_request_header): Only
+ inhibit Content-Length for GET and HEAD if request.length is 0;
+ (soup_message_queue): Free response_phrase on requeue.
+
+ * src/soup-core/soup-socket.c (soup_address_new): Fix
+ formatting.
+
2001-07-26 Joe Shaw <joe@ximian.com>
* src/soup-core/soup-queue.c (soup_get_request_header): Don't display
diff --git a/libsoup/soup-context.c b/libsoup/soup-context.c
index aca1b275..90906b42 100644
--- a/libsoup/soup-context.c
+++ b/libsoup/soup-context.c
@@ -289,8 +289,6 @@ static SoupConnection *
soup_try_existing_connections (SoupContext *ctx)
{
GSList *conns = ctx->server->connections;
-
- return NULL;
while (conns) {
SoupConnection *conn = conns->data;
diff --git a/libsoup/soup-message.c b/libsoup/soup-message.c
index 458dd67f..cece7b8c 100644
--- a/libsoup/soup-message.c
+++ b/libsoup/soup-message.c
@@ -268,6 +268,11 @@ soup_message_free (SoupMessage *req)
g_hash_table_destroy (req->response_headers);
}
+ if (req->response_phrase) {
+ g_free (req->response_phrase);
+ req->response_phrase = NULL;
+ }
+
g_slist_foreach (req->priv->content_handlers, (GFunc) g_free, NULL);
g_slist_free (req->priv->content_handlers);
diff --git a/libsoup/soup-message.h b/libsoup/soup-message.h
index e5fa4ddf..42c368e9 100644
--- a/libsoup/soup-message.h
+++ b/libsoup/soup-message.h
@@ -64,7 +64,7 @@ struct _SoupMessage {
SoupDataBuffer response;
guint response_code;
- const gchar *response_phrase;
+ gchar *response_phrase;
GHashTable *response_headers;
const gchar *method;
diff --git a/libsoup/soup-queue.c b/libsoup/soup-queue.c
index d7e0f615..6bb4d0ca 100644
--- a/libsoup/soup-queue.c
+++ b/libsoup/soup-queue.c
@@ -322,8 +322,9 @@ soup_get_request_header (SoupMessage *req)
g_free (uri);
- if (g_strcasecmp (req->method, "GET") != 0 &&
- g_strcasecmp (req->method, "HEAD") != 0) {
+ if (req->request.length == 0 &&
+ (g_strcasecmp (req->method, "GET") != 0 &&
+ g_strcasecmp (req->method, "HEAD") != 0)) {
g_string_sprintfa (header,
"Content-Length: %d\r\n",
req->request.length);
@@ -349,7 +350,9 @@ soup_get_request_header (SoupMessage *req)
hdrs.content_type ? "" : "Content-Type: text/xml; ",
hdrs.content_type ? "" : "charset=utf-8\r\n",
hdrs.connection ? "" : "Connection: keep-alive\r\n",
- hdrs.user_agent ? "" : "User-Agent: Soup/"VERSION"\r\n");
+ hdrs.user_agent ?
+ "" :
+ "User-Agent: Soup/" VERSION "\r\n");
/* Proxy-Authorization from the proxy Uri */
if (!hdrs.proxy_auth && proxy && soup_context_get_uri (proxy)->user)
@@ -536,8 +539,12 @@ soup_message_queue (SoupMessage *req,
req->response_headers = NULL;
}
+ if (req->response_phrase) {
+ g_free (req->response_phrase);
+ req->response_phrase = NULL;
+ }
+
req->response_code = 0;
- req->response_phrase = NULL;
req->status = SOUP_STATUS_QUEUED;
soup_active_requests = g_slist_prepend (soup_active_requests, req);
diff --git a/libsoup/soup-socket.c b/libsoup/soup-socket.c
index 5ad85f22..8db1bb85 100644
--- a/libsoup/soup-socket.c
+++ b/libsoup/soup-socket.c
@@ -691,9 +691,9 @@ soup_address_new (const gchar* name,
}
/* Check to see if we are doing synchronous DNS lookups */
- if (getenv("SOUP_SYNC_DNS")) {
- if (!soup_gethostbyname(name, &sa, NULL)) {
- g_warning("Problem resolving host name");
+ if (getenv ("SOUP_SYNC_DNS")) {
+ if (!soup_gethostbyname (name, &sa, NULL)) {
+ g_warning ("Problem resolving host name");
(*func) (NULL, SOUP_ADDRESS_STATUS_ERROR, data);
return NULL;
}
@@ -703,11 +703,11 @@ soup_address_new (const gchar* name,
sa_in->sin_port = g_htons (port);
ia = g_new0(SoupAddress, 1);
- ia->name = g_strdup(name);
+ ia->name = g_strdup (name);
ia->ref_count = 1;
ia->sa = *((struct sockaddr *) &sa);
- (*func)(ia, SOUP_ADDRESS_STATUS_OK, data);
+ (*func) (ia, SOUP_ADDRESS_STATUS_OK, data);
return NULL;
}
@@ -734,16 +734,16 @@ soup_address_new (const gchar* name,
/* Else there was a goofy error */
g_warning ("Fork error: %s (%d)\n",
- g_strerror(errno),
+ g_strerror (errno),
errno);
- close(pipes[0]);
- close(pipes[1]);
+ close (pipes [0]);
+ close (pipes [1]);
(*func) (NULL, SOUP_ADDRESS_STATUS_ERROR, data);
return NULL;
case 0:
- close(pipes[0]);
+ close (pipes [0]);
/* Try to get the host by name (ie, DNS) */
if (soup_gethostbyname (name, &sa, NULL)) {
@@ -766,7 +766,7 @@ soup_address_new (const gchar* name,
/* Exit (we don't want atexit called, so do _exit instead) */
_exit (EXIT_SUCCESS);
default:
- close(pipes[1]);
+ close (pipes [1]);
/* Create a structure for the call back */
state = g_new0 (SoupAddressState, 1);