From 2da5f17e523de482625b8a971aaa808cd2838656 Mon Sep 17 00:00:00 2001 From: Zeev Suraski Date: Sun, 6 Feb 2000 22:14:34 +0000 Subject: Fix buglet --- sapi/isapi/php4isapi.c | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) (limited to 'sapi/isapi/php4isapi.c') diff --git a/sapi/isapi/php4isapi.c b/sapi/isapi/php4isapi.c index c31ade74b8..6db380b675 100644 --- a/sapi/isapi/php4isapi.c +++ b/sapi/isapi/php4isapi.c @@ -462,7 +462,6 @@ DWORD WINAPI HttpExtensionProc(LPEXTENSION_CONTROL_BLOCK lpECB) static SYSTEM_INFO si; static MEMORY_BASIC_INFORMATION mi; static DWORD dwOldProtect; - HSE_SEND_HEADER_EX_INFO header_info; GetSystemInfo(&si); @@ -487,16 +486,20 @@ DWORD WINAPI HttpExtensionProc(LPEXTENSION_CONTROL_BLOCK lpECB) CG(unclean_shutdown)=1; - header_info.pszStatus = "500 Internal Server Error"; + if (!SG(headers_sent)) { + HSE_SEND_HEADER_EX_INFO header_info; + + header_info.pszStatus = "500 Internal Server Error"; #ifndef WITH_ZEUS - header_info.cchStatus = strlen(header_info.pszStatus); + header_info.cchStatus = strlen(header_info.pszStatus); #endif - header_info.pszHeader = "Content-Type: text/html\r\n\r\n"; - header_info.cchHeader = strlen(header_info.pszHeader); + header_info.pszHeader = "Content-Type: text/html\r\n\r\n"; + header_info.cchHeader = strlen(header_info.pszHeader); - lpECB->dwHttpStatusCode = 500; - lpECB->ServerSupportFunction(lpECB->ConnID, HSE_REQ_SEND_RESPONSE_HEADER_EX, &header_info, NULL, NULL); - SG(headers_sent)=1; + lpECB->dwHttpStatusCode = 500; + lpECB->ServerSupportFunction(lpECB->ConnID, HSE_REQ_SEND_RESPONSE_HEADER_EX, &header_info, NULL, NULL); + SG(headers_sent)=1; + } sapi_isapi_ub_write("Stack Overflow", sizeof("Stack Overflow")-1); } else { ExitThread(0); -- cgit v1.2.1