aboutsummaryrefslogtreecommitdiff
path: root/src/IO
diff options
context:
space:
mode:
authorjcid <devnull@localhost>2008-03-13 14:52:27 +0100
committerjcid <devnull@localhost>2008-03-13 14:52:27 +0100
commita8f62360ef2f3f0d121a51ab20ba4b46ce8c9a28 (patch)
treec8148ed74d4b26f063f57ba45e1669f1de484633 /src/IO
parentb393f84a8a3f24c04443548204ae566eb43d96d1 (diff)
- Added support for "charset" in the META element.
Diffstat (limited to 'src/IO')
-rw-r--r--src/IO/http.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/IO/http.c b/src/IO/http.c
index 8645a411..658dcc3b 100644
--- a/src/IO/http.c
+++ b/src/IO/http.c
@@ -417,6 +417,7 @@ static int Http_must_use_proxy(const DilloUrl *url)
/*
* Callback function for the DNS resolver.
* Continue connecting the socket, or abort upon error condition.
+ * S->web is checked to assert the operation wasn't aborted while waiting.
*/
void a_Http_dns_cb(int Status, Dlist *addr_list, void *data)
{
@@ -425,7 +426,12 @@ void a_Http_dns_cb(int Status, Dlist *addr_list, void *data)
S = a_Klist_get_data(ValidSocks, SKey);
if (S) {
- if (Status == 0 && addr_list) {
+ if (!a_Web_valid(S->web)) {
+ a_Chain_fcb(OpAbort, S->Info, NULL, NULL);
+ dFree(S->Info);
+ Http_socket_free(SKey);
+
+ } else if (Status == 0 && addr_list) {
/* Successful DNS answer; save the IP */
S->addr_list = addr_list;
/* start connecting the socket */