Commit 462fcad4198 for php.net
commit 462fcad4198c1bedef67184bf6c0bc90facb3a29
Author: Ilija Tovilo <ilija.tovilo@me.com>
Date: Thu Jan 15 23:46:41 2026 +0100
Avoid huge output in gh20840.phpt
This can trigger the memory limit in run-tests.php, which buffers the tests
output. Instead, only output "nesting level too deep" and discard the rest.
Closes GH-20946
diff --git a/ext/standard/tests/general_functions/gh20840.phpt b/ext/standard/tests/general_functions/gh20840.phpt
index 839b4728be1..ac0440a3bcd 100644
--- a/ext/standard/tests/general_functions/gh20840.phpt
+++ b/ext/standard/tests/general_functions/gh20840.phpt
@@ -28,11 +28,20 @@ class Node {
$node = $newNode;
}
+$buffer = '';
+ob_start(function ($chunk) use (&$buffer) {
+ $buffer .= $chunk;
+ $buffer = preg_replace('(\s*object\(Node\)#\d+ \(\d+\) \{\s*)', '', $buffer);
+ $buffer = preg_replace('(\s*\["next"\]=>\s*)', '', $buffer);
+ $buffer = preg_replace('(\s*\}\s*)', '', $buffer);
+});
var_dump($firstNode);
+ob_end_flush();
+echo $buffer;
while ($next = $firstNode->next) {
$firstNode->next = $next->next;
}
?>
---EXPECTREGEX--
-^object\(Node\)#\d+ \(\d+\).*(nesting level too deep|["\s}]*)$
+--EXPECT--
+nesting level too deep