diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/highlevel.c | 1 | ||||
-rw-r--r-- | lib/http.c | 3 | ||||
-rw-r--r-- | lib/urldata.h | 6 |
3 files changed, 7 insertions, 3 deletions
diff --git a/lib/highlevel.c b/lib/highlevel.c index b290d9ff6..add9735b8 100644 --- a/lib/highlevel.c +++ b/lib/highlevel.c @@ -722,6 +722,7 @@ CURLcode curl_transfer(CURL *curl) /* TBD: set the URL with curl_setopt() */ data->url = data->newurl; data->newurl = NULL; /* don't show! */ + data->bits.urlstringalloc = TRUE; /* the URL is allocated */ /* Disable both types of POSTs, since doing a second POST when following isn't what anyone would want! */ diff --git a/lib/http.c b/lib/http.c index 6c247792c..551fac339 100644 --- a/lib/http.c +++ b/lib/http.c @@ -254,7 +254,8 @@ CURLcode http_done(struct connectdata *conn) *bytecount = http->readbytecount + http->writebytecount; } - /* TBD: the HTTP struct remains allocated here */ + free(http); + data->proto.http=NULL; /* it is gone */ return CURLE_OK; } diff --git a/lib/urldata.h b/lib/urldata.h index 87e49a840..e5fcf16ff 100644 --- a/lib/urldata.h +++ b/lib/urldata.h @@ -304,16 +304,18 @@ struct Configbits { bool mute; bool no_body; bool proxy_user_passwd; - bool proxystringalloc; /* the http proxy string is malloc()'ed */ bool set_port; bool set_range; - bool rangestringalloc; /* the range string is malloc()'ed */ bool upload; bool use_netrc; bool user_passwd; bool verbose; bool this_is_a_follow; /* this is a followed Location: request */ bool krb4; /* kerberos4 connection requested */ + + bool proxystringalloc; /* the http proxy string is malloc()'ed */ + bool rangestringalloc; /* the range string is malloc()'ed */ + bool urlstringalloc; /* the URL string is malloc()'ed */ }; /* What type of interface that intiated this struct */ |