You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by bd...@apache.org on 2016/05/18 10:33:32 UTC
svn commit: r1744381 -
/sling/trunk/bundles/commons/json/src/main/java/org/apache/sling/commons/json/sling/ResourceTraversor.java
Author: bdelacretaz
Date: Wed May 18 10:33:32 2016
New Revision: 1744381
URL: http://svn.apache.org/viewvc?rev=1744381&view=rev
Log:
SLING-5578 - remove unnecessary recursion, patch contributed by Marius Petria, thanks! Tests pass now with -Dsling.test.ResourceTraversor.count=20000
Modified:
sling/trunk/bundles/commons/json/src/main/java/org/apache/sling/commons/json/sling/ResourceTraversor.java
Modified: sling/trunk/bundles/commons/json/src/main/java/org/apache/sling/commons/json/sling/ResourceTraversor.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/commons/json/src/main/java/org/apache/sling/commons/json/sling/ResourceTraversor.java?rev=1744381&r1=1744380&r2=1744381&view=diff
==============================================================================
--- sling/trunk/bundles/commons/json/src/main/java/org/apache/sling/commons/json/sling/ResourceTraversor.java (original)
+++ sling/trunk/bundles/commons/json/src/main/java/org/apache/sling/commons/json/sling/ResourceTraversor.java Wed May 18 10:33:32 2016
@@ -108,6 +108,11 @@ public class ResourceTraversor {
}
}
+ // do processing only at first level to avoid unnecessary recursion
+ if (currentLevel > 0) {
+ return -1;
+ }
+
while (!currentQueue.isEmpty() || !nextQueue.isEmpty()) {
if (currentQueue.isEmpty()) {
currentLevel++;