From a0dbfc61b688223e33c5330bb6452a0f2298d943 Mon Sep 17 00:00:00 2001 From: Ingo Schommer Date: Mon, 18 Nov 2013 16:02:12 +0100 Subject: [PATCH] FIX text/html type for Debug::friendlyError() in live mode Avoid unparsed HTML responses in case of httpError(4xx) or httpError(5xx) in live mode. The SS_HTTPResponse_Exception constructor automatically set "text/plain" a content type, which conflicts with the later choice of Debug::friendlyError() to return HTML. This is a hotfix, needs more work to properly separate logic flow from presentation concerns (e.g. through request processors). --- dev/Debug.php | 1 + 1 file changed, 1 insertion(+) diff --git a/dev/Debug.php b/dev/Debug.php index c17d68c82..46a0c430f 100644 --- a/dev/Debug.php +++ b/dev/Debug.php @@ -347,6 +347,7 @@ class Debug { ); if(file_exists($errorFilePath)) { $content = file_get_contents(ASSETS_PATH . "/error-$statusCode.html"); + if(!headers_sent()) header('Content-Type: text/html'); // $BaseURL is left dynamic in error-###.html, so that multi-domain sites don't get broken echo str_replace('$BaseURL', Director::absoluteBaseURL(), $content); }