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 <[email protected]>
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);