/* convert LF to CRLF if so asked */
if (data->set.crlf) {
+ if(data->state.scratch == NULL)
+ data->state.scratch = malloc(2*BUFSIZE);
+ if(data->state.scratch == NULL) {
+ failf (data, "Failed to alloc scratch buffer!");
+ return CURLE_OUT_OF_MEMORY;
+ }
for(i = 0, si = 0; i < nread; i++, si++) {
if (conn->upload_fromhere[i] == 0x0a) {
data->state.scratch[si++] = 0x0d;
if(data->state.auth_host)
free(data->state.auth_host);
+ if(data->state.scratch)
+ free(data->state.scratch);
+
if(data->change.proxy_alloc)
free(data->change.proxy);
struct curl_ssl_session *session; /* array of 'numsessions' size */
long sessionage; /* number of the most recent session */
- char scratch[BUFSIZE*2]; /* huge buffer when doing upload CRLF replacing */
+ char *scratch; /* huge buffer[BUFSIZE*2] when doing upload CRLF replacing */
bool errorbuf; /* Set to TRUE if the error buffer is already filled in.
This must be set to FALSE every time _easy_perform() is
called. */