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-scripting-sightly.git
The following commit(s) were added to refs/heads/master by this push:
new 360df4e SLING-7755 - JavaUseProvider might attempt to instantiate
interfaces or abstract classes
360df4e is described below
commit 360df4ebb4faf043d4085cf277f342e966e02229
Author: Radu Cotescu <[email protected]>
AuthorDate: Wed Jun 27 13:33:48 2018 +0200
SLING-7755 - JavaUseProvider might attempt to instantiate interfaces or
abstract classes
* applied patch from Santiago Garcia Pimentel
<[email protected]>
---
.../scripting/sightly/impl/engine/extension/use/JavaUseProvider.java | 4 ++++
1 file changed, 4 insertions(+)
diff --git
a/src/main/java/org/apache/sling/scripting/sightly/impl/engine/extension/use/JavaUseProvider.java
b/src/main/java/org/apache/sling/scripting/sightly/impl/engine/extension/use/JavaUseProvider.java
index 13e95ec..e85a2fd 100644
---
a/src/main/java/org/apache/sling/scripting/sightly/impl/engine/extension/use/JavaUseProvider.java
+++
b/src/main/java/org/apache/sling/scripting/sightly/impl/engine/extension/use/JavaUseProvider.java
@@ -18,6 +18,7 @@
******************************************************************************/
package org.apache.sling.scripting.sightly.impl.engine.extension.use;
+import java.lang.reflect.Modifier;
import java.util.HashMap;
import java.util.Map;
import java.util.regex.Pattern;
@@ -114,6 +115,9 @@ public class JavaUseProvider implements UseProvider {
}
if (result != null) {
return ProviderOutcome.success(result);
+ } else if(cls.isInterface() ||
Modifier.isAbstract(cls.getModifiers())){
+ LOG.debug("Wont attempt to instantiate an interface or
abstract class {}",cls.getName());
+ return ProviderOutcome.failure();
} else {
/*
* the object was cached by the class loader but it's not
adaptable from {@link Resource} or {@link