This is an automated email from the ASF dual-hosted git repository.

thiagohp pushed a commit to branch javax
in repository https://gitbox.apache.org/repos/asf/tapestry-5.git


The following commit(s) were added to refs/heads/javax by this push:
     new 7f4c85a6c TAP5-2779: some little adjustments
7f4c85a6c is described below

commit 7f4c85a6c2cfd8649891ada7d27bfcd0175bce5f
Author: Thiago H. de Paula Figueiredo <thi...@arsmachina.com.br>
AuthorDate: Sun Nov 24 21:05:31 2024 -0300

    TAP5-2779: some little adjustments
---
 .../services/ComponentDependencyRegistryImpl.java     | 19 +++++++++++++------
 .../tapestry5/internal/services/PageSourceImpl.java   | 12 ------------
 2 files changed, 13 insertions(+), 18 deletions(-)

diff --git 
a/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentDependencyRegistryImpl.java
 
b/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentDependencyRegistryImpl.java
index 24c0b2a89..23f9105b2 100644
--- 
a/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentDependencyRegistryImpl.java
+++ 
b/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/ComponentDependencyRegistryImpl.java
@@ -707,18 +707,25 @@ public class ComponentDependencyRegistryImpl implements 
ComponentDependencyRegis
             for (String resource : resources) 
             {
                 
-                final Set<String> dependents = getDependents(resource);
-                for (String furtherDependent : dependents) 
+                // Avoid resource invalidations
+                if (!resource.contains(":"))
                 {
-                    if (!resources.contains(furtherDependent) && 
!furtherDependents.contains(furtherDependent))
+                
+                    final Set<String> dependents = getDependents(resource);
+                    for (String furtherDependent : dependents) 
                     {
-                        furtherDependents.add(furtherDependent);
+                        if (!resources.contains(furtherDependent) && 
!furtherDependents.contains(furtherDependent))
+                        {
+                            furtherDependents.add(furtherDependent);
+                        }
                     }
+                    
+                    clear(resource);
+                    
                 }
                 
-                clear(resource);
-                
             }
+            
         }
         return furtherDependents;
     }
diff --git 
a/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PageSourceImpl.java
 
b/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PageSourceImpl.java
index c4633cc29..9c326702d 100644
--- 
a/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PageSourceImpl.java
+++ 
b/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/PageSourceImpl.java
@@ -111,9 +111,6 @@ public class PageSourceImpl implements PageSource
     
     private final Map<String, Boolean> abstractClassInfoCache = 
CollectionFactory.newConcurrentMap();
     
-    private final static ThreadLocal<String> CURRENT_PAGE = 
-            ThreadLocal.withInitial(() -> null);
-    
     private final static ThreadLocal<Set<String>> CALL_STACK = 
             ThreadLocal.withInitial(HashSet::new);
 
@@ -185,15 +182,6 @@ public class PageSourceImpl implements PageSource
             if (multipleClassLoaders)
             {
                 
-                if (canonicalPageName.equals(CURRENT_PAGE.get()))
-                {
-                    throw new IllegalStateException("Infinite method loop 
detected. Bailing out.");
-                }
-                else
-                {
-                    CURRENT_PAGE.set(canonicalPageName);
-                }
-            
                 // Avoiding problems in PlasticClassPool.createTransformation()
                 // when the class being loaded has a page superclass
                 final List<String> pageDependencies = 
getPageDependencies(className);

Reply via email to