diff --git a/lib/Cake/Error/ExceptionRenderer.php b/lib/Cake/Error/ExceptionRenderer.php index 0a8490208..ad36fea3e 100644 --- a/lib/Cake/Error/ExceptionRenderer.php +++ b/lib/Cake/Error/ExceptionRenderer.php @@ -157,7 +157,13 @@ class ExceptionRenderer { } catch (Exception $e) { $startup = false; } - if ($startup === false && !empty($controller) && $controller->Components->enabled('RequestHandler')) { + // Retry RequestHandler, as another aspect of startupProcess() + // could have failed. Ignore any exceptions out of startup, as + // there could be userland input data parsers. + if ($startup === false && + !empty($controller) && + $controller->Components->enabled('RequestHandler') + ) { try { $controller->RequestHandler->startup($controller); } catch (Exception $e) {