jaxp/src/java.xml/share/classes/com/sun/org/apache/xpath/internal/compiler/FunctionTable.java
--- a/jaxp/src/java.xml/share/classes/com/sun/org/apache/xpath/internal/compiler/FunctionTable.java Wed Jul 05 20:39:43 2017 +0200
+++ b/jaxp/src/java.xml/share/classes/com/sun/org/apache/xpath/internal/compiler/FunctionTable.java Tue Jun 30 12:04:27 2015 +0200
@@ -378,6 +378,12 @@
int funcIndex;
Object funcIndexObj = getFunctionID(name);
+ if (func != null && !Function.class.isAssignableFrom(func)) {
+ throw new ClassCastException(func.getName()
+ + " cannot be cast to "
+ + Function.class.getName());
+ }
+
if (null != funcIndexObj)
{
funcIndex = ((Integer) funcIndexObj).intValue();