Browse Source

Merge pull request #218 from maartenba/mb-perf-1

Convert LINQ to foreach in Helpers.VisitChildren - Reduce GC pressure
Marcin Ziąbek 3 years ago
parent
commit
3e485a572c
1 changed files with 8 additions and 3 deletions
  1. 8 3
      QuestPDF/Helpers/Helpers.cs

+ 8 - 3
QuestPDF/Helpers/Helpers.cs

@@ -46,9 +46,14 @@ namespace QuestPDF.Helpers
 
         internal static void VisitChildren(this Element? element, Action<Element?> handler)
         {
-            foreach (var child in element.GetChildren().Where(x => x != null))
-                VisitChildren(child, handler);
-            
+            if (element != null)
+            {
+                foreach (var child in element.GetChildren())
+                {
+                    if (child != null) VisitChildren(child, handler);
+                }
+            }
+
             handler(element);
         }
     }