summaryrefslogtreecommitdiff
path: root/src/raptor_www_curl.c
diff options
context:
space:
mode:
authorDave Beckett <dave@dajobe.org>2007-07-04 20:33:45 +0000
committerDave Beckett <dave@dajobe.org>2007-07-04 20:33:45 +0000
commit9a5647d6425c2eb0a6aba2808036d8ccbde52b25 (patch)
tree3e76b95c285079576b4cae4edc4f135e357965a8 /src/raptor_www_curl.c
parente477bc27566d79baedbd92512c0ad8b6f753ebe0 (diff)
downloadraptor-9a5647d6425c2eb0a6aba2808036d8ccbde52b25.tar.gz
(raptor_www_curl_header_callback): Handle multiple type headers
appearing, overwriting - such as during an HTTP redirect.
Diffstat (limited to 'src/raptor_www_curl.c')
-rw-r--r--src/raptor_www_curl.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/raptor_www_curl.c b/src/raptor_www_curl.c
index d9071f67..244587a5 100644
--- a/src/raptor_www_curl.c
+++ b/src/raptor_www_curl.c
@@ -106,7 +106,10 @@ raptor_www_curl_header_callback(void* ptr, size_t size, size_t nmemb,
char *type_buffer=(char*)RAPTOR_MALLOC(cstring, len+1);
strncpy(type_buffer, (char*)ptr+14, len);
type_buffer[len]='\0';
+ if(www->type)
+ RAPTOR_FREE(cstring, www->type);
www->type=type_buffer;
+ www->free_type=1;
#if RAPTOR_DEBUG > 2
RAPTOR_DEBUG3("Got content type '%s' (%d bytes)\n", type_buffer, len);