diff --git a/src/Plugin/GraphQL/DataProducer/Routing/RouteEntity.php b/src/Plugin/GraphQL/DataProducer/Routing/RouteEntity.php index 10ea4e607..9d4ff5d22 100644 --- a/src/Plugin/GraphQL/DataProducer/Routing/RouteEntity.php +++ b/src/Plugin/GraphQL/DataProducer/Routing/RouteEntity.php @@ -106,8 +106,13 @@ public function __construct( * The GraphQL field context. */ public function resolve($url, ?string $language, FieldContext $context): ?Deferred { - if ($url instanceof Url) { - [, $type] = explode('.', $url->getRouteName()); + if ($url instanceof Url && $url->isRouted()) { + [$route_type, $type] = explode('.', $url->getRouteName()); + // Check that this route is actually an entity route and make sure that + // entity type is not empty. + if ($route_type !== 'entity' || empty($type)) { + return NULL; + } $parameters = $url->getRouteParameters(); $id = $parameters[$type]; $resolver = $this->entityBuffer->add($type, $id);