diff options
| -rw-r--r-- | interchange.c | 1 | ||||
| -rw-r--r-- | interchange/typedefs.h | 1 | ||||
| -rw-r--r-- | request.c | 2 | 
3 files changed, 4 insertions, 0 deletions
diff --git a/interchange.c b/interchange.c index 88d4d10..8a70bbb 100644 --- a/interchange.c +++ b/interchange.c @@ -110,6 +110,7 @@ void interchange_free_response(interchange_response *response)  #ifdef __EMSCRIPTEN__  	emscripten_fetch_close(response);  #else +	free(response->url);  	free(response->data);  	curl_easy_cleanup(response->curl);  	free(response); diff --git a/interchange/typedefs.h b/interchange/typedefs.h index 02a412f..a799671 100644 --- a/interchange/typedefs.h +++ b/interchange/typedefs.h @@ -9,6 +9,7 @@ typedef emscripten_fetch_t interchange_response;  #include <curl/curl.h>  typedef struct {  	void *userData; +	char *url;  	char *data;  	size_t numBytes;  	CURL *curl; @@ -160,6 +160,8 @@ void request(void (*handler)(interchange_response *), void (*callback)(void *),  	curl_easy_setopt(curl, CURLOPT_URL, url);  	curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, append);  	interchange_response *response = malloc(sizeof(interchange_response)); +	response->url = malloc(length + 1); +	strcpy(response->url, url);  	response->data = malloc(1);  	response->numBytes = 0;  	response->userData = callback;  |