diff options
Diffstat (limited to 'src/daemon/response.c')
-rw-r--r-- | src/daemon/response.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/daemon/response.c b/src/daemon/response.c index b816a8a5..0326a15b 100644 --- a/src/daemon/response.c +++ b/src/daemon/response.c | |||
@@ -168,7 +168,14 @@ MHD_create_response_from_callback(size_t size, | |||
168 | memset(retVal, | 168 | memset(retVal, |
169 | 0, | 169 | 0, |
170 | sizeof(struct MHD_Response)); | 170 | sizeof(struct MHD_Response)); |
171 | retVal->data = malloc(MHD_BUF_INC_SIZE); | ||
172 | if (retVal->data == NULL) { | ||
173 | free(retVal); | ||
174 | return NULL; | ||
175 | } | ||
176 | retVal->data_buffer_size = MHD_BUF_INC_SIZE; | ||
171 | if (pthread_mutex_init(&retVal->mutex, NULL) != 0) { | 177 | if (pthread_mutex_init(&retVal->mutex, NULL) != 0) { |
178 | free(retVal->data); | ||
172 | free(retVal); | 179 | free(retVal); |
173 | return NULL; | 180 | return NULL; |
174 | } | 181 | } |
@@ -258,6 +265,8 @@ MHD_destroy_response(struct MHD_Response * response) { | |||
258 | free(pos->value); | 265 | free(pos->value); |
259 | free(pos); | 266 | free(pos); |
260 | } | 267 | } |
268 | if (response->crc != NULL) | ||
269 | free(response->data); | ||
261 | free(response); | 270 | free(response); |
262 | } | 271 | } |
263 | 272 | ||