diff --git a/ChangeLog b/ChangeLog index 8976268..5f61a31 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,6 @@ +2000-04-11 Karl Kraft + * Fixed a strcpy into a short malloc buffer in GSWAdaptors/common/GSWHTTPResponse.c + 2000-04-06 Karl Kraft * Added two checks for non-nil key before calling removeObjectForKey: diff --git a/GSWAdaptors/common/GSWHTTPResponse.c b/GSWAdaptors/common/GSWHTTPResponse.c index 6314074..949985c 100644 --- a/GSWAdaptors/common/GSWHTTPResponse.c +++ b/GSWAdaptors/common/GSWHTTPResponse.c @@ -123,11 +123,14 @@ GSWHTTPResponse* GSWHTTPResponse_BuildErrorResponse(GSWAppRequest* p_pAppRequest GSWString_Append(pBuffer,GSWTemplate_ErrorResponseText(TRUE)); GSWString_SearchReplace(pBuffer,"##TEXT##",pBufferMessage->pszData); GSWTemplate_ReplaceStd(pBuffer,pApp); + pHTTPResponse->uContentLength = GSWString_Len(pBuffer); - pHTTPResponse->pContent = malloc(pHTTPResponse->uContentLength); - strcpy(pHTTPResponse->pContent,pBuffer->pszData); + pHTTPResponse->pContent = pBuffer->pszData; + GSWString_Detach(pBuffer); GSWString_Free(pBuffer); pBuffer=NULL; + + GSWString_Free(pBufferMessage); pBufferMessage=NULL; sprintf(szBuffer,"%d",pHTTPResponse->uContentLength);