Browse Source

Abort normalization of traversables after 1000 items have been discovered, fixes #201

Jordi Boggiano 12 years ago
parent
commit
a43f926ffe
1 changed files with 5 additions and 0 deletions
  1. 5 0
      src/Monolog/Formatter/NormalizerFormatter.php

+ 5 - 0
src/Monolog/Formatter/NormalizerFormatter.php

@@ -61,7 +61,12 @@ class NormalizerFormatter implements FormatterInterface
         if (is_array($data) || $data instanceof \Traversable) {
             $normalized = array();
 
+            $count = 1;
             foreach ($data as $key => $value) {
+                if ($count++ >= 1000) {
+                    $normalized['...'] = 'Over 1000 items, aborting normalization';
+                    break;
+                }
                 $normalized[$key] = $this->normalize($value);
             }