diff --git a/typo3/sysext/backend/Classes/Tree/Repository/PageTreeRepository.php b/typo3/sysext/backend/Classes/Tree/Repository/PageTreeRepository.php
index 6f2e764c4280d6cfacb8428d0c6a15fb2454ec0f..5875cc16175392b2d2af7d165a4c36e4f6d80d5c 100644
--- a/typo3/sysext/backend/Classes/Tree/Repository/PageTreeRepository.php
+++ b/typo3/sysext/backend/Classes/Tree/Repository/PageTreeRepository.php
@@ -142,7 +142,7 @@ class PageTreeRepository
         if (!isset($tree['_children'])) {
             return;
         }
-        foreach ($tree['_children'] as $k => $childPage) {
+        foreach ($tree['_children'] as $k => &$childPage) {
             if (!call_user_func_array($callback, [$childPage])) {
                 unset($tree['_children'][$k]);
                 continue;