From 43600334057fb350039e562ee90a148fc17169e1 Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Thu, 7 Feb 2019 14:34:03 +0100 Subject: [PATCH] Fixed const free warning. --- channels/cliprdr/server/cliprdr_main.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/channels/cliprdr/server/cliprdr_main.c b/channels/cliprdr/server/cliprdr_main.c index 118c2b0..c2a0f7a 100644 --- a/channels/cliprdr/server/cliprdr_main.c +++ b/channels/cliprdr/server/cliprdr_main.c @@ -929,6 +929,7 @@ static UINT cliprdr_server_receive_format_data_response( { CLIPRDR_FORMAT_DATA_RESPONSE formatDataResponse; UINT error = CHANNEL_RC_OK; + BYTE* requestedFormatData = NULL; WLog_DBG(TAG, "CliprdrClientFormatDataResponse"); formatDataResponse.msgType = CB_FORMAT_DATA_RESPONSE; formatDataResponse.msgFlags = header->msgFlags; @@ -943,8 +944,12 @@ static UINT cliprdr_server_receive_format_data_response( if (header->dataLen) { - formatDataResponse.requestedFormatData = (BYTE*) malloc(header->dataLen); - Stream_Read(s, formatDataResponse.requestedFormatData, header->dataLen); + requestedFormatData = (BYTE*) malloc(header->dataLen); + if (!requestedFormatData) + return ERROR_OUTOFMEMORY; + + Stream_Read(s, requestedFormatData, header->dataLen); + formatDataResponse.requestedFormatData = requestedFormatData; } IFCALLRET(context->ClientFormatDataResponse, error, context, @@ -953,7 +958,7 @@ static UINT cliprdr_server_receive_format_data_response( if (error) WLog_ERR(TAG, "ClientFormatDataResponse failed with error %"PRIu32"!", error); - free(formatDataResponse.requestedFormatData); + free(requestedFormatData); return error; } -- 2.7.4