diff --git a/src/Controller/FacetBlockAjaxController.php b/src/Controller/FacetBlockAjaxController.php index 6f67d803359e4e7c4249c1202501493aee4c870d..acb638a64a741115fbee10bce8834a0b5513c50d 100644 --- a/src/Controller/FacetBlockAjaxController.php +++ b/src/Controller/FacetBlockAjaxController.php @@ -10,12 +10,13 @@ use Drupal\Core\Block\Plugin\Block\Broken; use Drupal\Core\Controller\ControllerBase; use Drupal\Core\Path\CurrentPathStack; use Drupal\Core\PathProcessor\PathProcessorManager; +use Drupal\Core\Http\RequestStack as DrupalRequestStack; use Drupal\Core\Render\RendererInterface; use Drupal\Core\Routing\CurrentRouteMatch; use Drupal\facets\Plugin\Block\FacetBlock; use Symfony\Component\DependencyInjection\ContainerInterface; use Symfony\Component\HttpFoundation\Request; -use Symfony\Component\HttpFoundation\RequestStack; +use Symfony\Component\HttpFoundation\RequestStack as SymfonyRequestStack; use Symfony\Component\HttpKernel\Exception\NotFoundHttpException; use Symfony\Component\Routing\RouterInterface; @@ -137,7 +138,15 @@ class FacetBlockAjaxController extends ControllerBase { } $new_request = Request::create($path); - $request_stack = new RequestStack(); + // Support 9.3+ + // @todo remove after 9.3 or greater is required. + if (class_exists(\Drupal\Core\Http\RequestStack::class)) { + $request_stack = new DrupalRequestStack(); + } + // Legacy request stack. + else { + $request_stack = new SymfonyRequestStack(); + } $processed = $this->pathProcessor->processInbound($path, $new_request); $this->currentPath->setPath($processed);