diff --git a/core/lib/Drupal/Core/EventSubscriber/DefaultExceptionHtmlSubscriber.php b/core/lib/Drupal/Core/EventSubscriber/DefaultExceptionHtmlSubscriber.php index 38cb895..b6b2b09 100644 --- a/core/lib/Drupal/Core/EventSubscriber/DefaultExceptionHtmlSubscriber.php +++ b/core/lib/Drupal/Core/EventSubscriber/DefaultExceptionHtmlSubscriber.php @@ -137,9 +137,12 @@ protected function makeSubrequest(GetResponseForExceptionEvent $event, $url, $st // The routing to the 404 page should be done as GET request because it is // restricted to GET and POST requests only. Otherwise a DELETE request // would for example trigger a method not allowed exception. - $request_context = clone ($this->accessUnawareRouter->getContext()); - $request_context->setMethod('GET'); - $this->accessUnawareRouter->setContext($request_context); + $original_request_context = $this->accessUnawareRouter->getContext(); + if ($original_request_context) { + $request_context = clone $original_request_context; + $request_context->setMethod('GET'); + $this->accessUnawareRouter->setContext($request_context); + } $sub_request->attributes->add($this->accessUnawareRouter->match($url));