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

radu pushed a commit to branch master
in repository 
https://gitbox.apache.org/repos/asf/sling-org-apache-sling-servlets-resolver.git


The following commit(s) were added to refs/heads/master by this push:
     new 04746d1  SLING-10939 - Don't register precompiled scripts that are 
missing
04746d1 is described below

commit 04746d1a291a8d1b2aeaa5a74394f47a349d73e5
Author: Karl Pauls <[email protected]>
AuthorDate: Thu Nov 25 14:59:46 2021 +0100

    SLING-10939 - Don't register precompiled scripts that are missing
    
    * register an inherited executable only if the current capability did not 
indicate it would provide its own
---
 .../servlets/resolver/internal/bundle/BundledScriptTracker.java    | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git 
a/src/main/java/org/apache/sling/servlets/resolver/internal/bundle/BundledScriptTracker.java
 
b/src/main/java/org/apache/sling/servlets/resolver/internal/bundle/BundledScriptTracker.java
index 251b9c3..22cd051 100644
--- 
a/src/main/java/org/apache/sling/servlets/resolver/internal/bundle/BundledScriptTracker.java
+++ 
b/src/main/java/org/apache/sling/servlets/resolver/internal/bundle/BundledScriptTracker.java
@@ -198,7 +198,12 @@ public class BundledScriptTracker implements 
BundleTrackerCustomizer<List<Servic
                         }
                         Set<TypeProvider> aggregate =
                                 Stream.concat(inheritanceChain.stream(), 
requiresChain.stream()).collect(Collectors.toCollection(LinkedHashSet::new));
-                        executable = 
bundledRenderUnitFinder.findUnit(bundle.getBundleContext(), inheritanceChain, 
aggregate);
+                        if 
(properties.containsKey(ServletResolverConstants.SLING_SERVLET_RESOURCE_SUPER_TYPE)
 &&
+                                
baseTypeProvider.getBundledRenderUnitCapability().getScriptEngineName() != 
null) {
+                            executable = 
bundledRenderUnitFinder.findUnit(bundle.getBundleContext(), baseTypeProvider, 
aggregate);
+                        } else {
+                            executable = 
bundledRenderUnitFinder.findUnit(bundle.getBundleContext(), inheritanceChain, 
aggregate);
+                        }
                     } else if 
(StringUtils.isNotEmpty(bundledRenderUnitCapability.getPath()) && 
StringUtils.isNotEmpty(
                             
bundledRenderUnitCapability.getScriptEngineName())) {
                         Set<TypeProvider> aggregate =

Reply via email to