summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgodzilla80@gmx.net <>2009-06-27 07:10:41 +0000
committergodzilla80@gmx.net <>2009-06-27 07:10:41 +0000
commitb01079441a4a57380c70943e8d0bb3da0b1be9b7 (patch)
tree3b84dead1841a8171f71c02a49acd13ede32977a
parent5eca5a71c6d3ce82bb15bce57a06f7d84b011c8f (diff)
TCallbackErrorHandler::displayException() force HTTP status "500 Internal Server Error" to ensure TCallbackOptions.ClientSide.OnFailure is raised
-rw-r--r--HISTORY1
-rw-r--r--framework/Web/UI/ActiveControls/TActivePageAdapter.php4
2 files changed, 3 insertions, 2 deletions
diff --git a/HISTORY b/HISTORY
index 8a2138da..93a857fc 100644
--- a/HISTORY
+++ b/HISTORY
@@ -5,6 +5,7 @@ BUG: Issue#164 - CultureInfo::validCulture should be declared as a static method
BUG: Issue#168 - TSqlMapXmlConfiguration: CacheModel properties are not set (Yves)
ENH: Issue#174 - TErrorHandler: HTTP error messages contains sensitive information (Yves)
ENH: Issue#175 - TBulletedList: Introduce TBulletStyle::None (Yves)
+BUG: TCallbackErrorHandler::displayException() force HTTP status "500 Internal Server Error" to ensure TCallbackOptions.ClientSide.OnFailure is raised (Yves)
ENH: TAssetManager: introduce protected property "Published" to allow subclasses access (Yves)
ENH: TFirePhpLogRoute: bypass to TBrowserLogRoute if headers already sent / php.ini (output_buffering=Off, implicit_flush=On) (Yves)
diff --git a/framework/Web/UI/ActiveControls/TActivePageAdapter.php b/framework/Web/UI/ActiveControls/TActivePageAdapter.php
index 90eed970..b91da695 100644
--- a/framework/Web/UI/ActiveControls/TActivePageAdapter.php
+++ b/framework/Web/UI/ActiveControls/TActivePageAdapter.php
@@ -316,13 +316,13 @@ class TCallbackErrorHandler extends TErrorHandler
{
$response = $this->getApplication()->getResponse();
$trace = TJavaScript::jsonEncode($this->getExceptionStackTrace($exception));
- $response->appendHeader('HTTP/1.0 500 Internal Error');
+ $response->setStatusCode(500, 'Internal Server Error');
$response->appendHeader(TActivePageAdapter::CALLBACK_ERROR_HEADER.': '.$trace);
}
else
{
error_log("Error happened while processing an existing error:\n".$exception->__toString());
- header('HTTP/1.0 500 Internal Error');
+ header('HTTP/1.0 500 Internal Server Error', true, 500);
}
$this->getApplication()->getResponse()->flush();
}