From 0dd82d682039c00af22ffb6c83761f729b1b0489 Mon Sep 17 00:00:00 2001 From: catch <catch@35733.no-reply.drupal.org> Date: Fri, 15 Sep 2023 07:53:53 +0100 Subject: [PATCH] Issue #315302 by mstrelan, tacituseu, PaulMagrath, coltrane, yched, DamienMcKenna, quietone: Node Access Rebuild never finishes (infinite loop) (cherry picked from commit f221e075bba67d4b9d3e22120044fbd941c5d87a) --- core/modules/node/node.module | 5 +++-- core/phpstan-baseline.neon | 5 ----- 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/core/modules/node/node.module b/core/modules/node/node.module index a1160fa29d66..d9271feb9750 100644 --- a/core/modules/node/node.module +++ b/core/modules/node/node.module @@ -1179,10 +1179,11 @@ function _node_access_rebuild_batch_operation(&$context) { ->execute(); $node_storage->resetCache($nids); $nodes = Node::loadMultiple($nids); - foreach ($nodes as $nid => $node) { + foreach ($nids as $nid) { // To preserve database integrity, only write grants if the node // loads successfully. - if (!empty($node)) { + if (!empty($nodes[$nid])) { + $node = $nodes[$nid]; /** @var \Drupal\node\NodeAccessControlHandlerInterface $access_control_handler */ $access_control_handler = \Drupal::entityTypeManager()->getAccessControlHandler('node'); $grants = $access_control_handler->acquireGrants($node); diff --git a/core/phpstan-baseline.neon b/core/phpstan-baseline.neon index cf0e1578018b..113f73abdc04 100644 --- a/core/phpstan-baseline.neon +++ b/core/phpstan-baseline.neon @@ -1675,11 +1675,6 @@ parameters: count: 1 path: modules/node/node.module - - - message: "#^Variable \\$node in empty\\(\\) always exists and is not falsy\\.$#" - count: 1 - path: modules/node/node.module - - message: "#^Method Drupal\\\\node\\\\ConfigTranslation\\\\NodeTypeMapper\\:\\:setEntity\\(\\) should return bool but return statement is missing\\.$#" count: 1 -- GitLab