aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2003-12-15 14:48:37 +0000
committerDaniel Stenberg <daniel@haxx.se>2003-12-15 14:48:37 +0000
commit50e7545118dca4bb456d7c8120ac8f2f4c5bf6f5 (patch)
tree91fca17e234a5089bb1d99259ddd9d8b2a6349bb /lib
parent0839d6e6bc61f3fa035cd680056852cf3a6cd4e1 (diff)
Giuseppe Attardi fixed a really tricky bug
Diffstat (limited to 'lib')
-rw-r--r--lib/url.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/url.c b/lib/url.c
index 0dcc577af..d21cab247 100644
--- a/lib/url.c
+++ b/lib/url.c
@@ -3281,6 +3281,9 @@ CURLcode Curl_do(struct connectdata **connp)
conn->bits.close = TRUE; /* enforce close of this connetion */
result = Curl_done(conn); /* we are so done with this */
+
+ /* conn is no longer a good pointer */
+
if(CURLE_OK == result) {
bool async;
/* Now, redo the connect and get a new connection */
@@ -3288,6 +3291,7 @@ CURLcode Curl_do(struct connectdata **connp)
if(CURLE_OK == result) {
/* We have connected or sent away a name resolve query fine */
+ conn = *connp; /* setup conn to again point to something nice */
if(async) {
/* Now, if async is TRUE here, we need to wait for the name
to resolve */