From 785d76d681fecffd8941159daeef6fda0877a208 Mon Sep 17 00:00:00 2001 From: Steve Holme Date: Sun, 30 Nov 2014 14:45:20 +0000 Subject: [PATCH] transfer: Fixed existing scratch buffer being checked for NULL twice If the scratch buffer already existed when the CRLF conversion was performed then the buffer pointer would be checked twice for NULL. This second check is only necessary if the call to malloc() was performed by the first check. --- lib/transfer.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/lib/transfer.c b/lib/transfer.c index 84a7e2be4..2cc7f7881 100644 --- a/lib/transfer.c +++ b/lib/transfer.c @@ -910,11 +910,12 @@ static CURLcode readwrite_upload(struct SessionHandle *data, (data->set.prefer_ascii) || #endif (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; + data->state.scratch = malloc(2*BUFSIZE); + if(data->state.scratch == NULL) { + failf (data, "Failed to alloc scratch buffer!"); + return CURLE_OUT_OF_MEMORY; + } } /* * ASCII/EBCDIC Note: This is presumably a text (not binary)