diff options
author | Alex Graveley <alex@ximian.com> | 2001-07-30 00:47:08 +0000 |
---|---|---|
committer | Alex Graveley <orph@src.gnome.org> | 2001-07-30 00:47:08 +0000 |
commit | 344b02337904cdbfdca67897976e3bf74377369e (patch) | |
tree | 6f58e46e8c976dedd6345914721b6381b7656dcc /libsoup | |
parent | c1bbcdc45f30bcf3378492a822c2f615937f3ca8 (diff) | |
download | libsoup-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.
Diffstat (limited to 'libsoup')
-rw-r--r-- | libsoup/soup-context.c | 2 | ||||
-rw-r--r-- | libsoup/soup-message.c | 5 | ||||
-rw-r--r-- | libsoup/soup-message.h | 2 | ||||
-rw-r--r-- | libsoup/soup-queue.c | 15 | ||||
-rw-r--r-- | libsoup/soup-socket.c | 20 |
5 files changed, 27 insertions, 17 deletions
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); |