This is an automated email from the ASF dual-hosted git repository. remm pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/tomcat.git
The following commit(s) were added to refs/heads/main by this push: new 07b5c179da Fix issue returning null for no args, which would cause a NPE 07b5c179da is described below commit 07b5c179da0d9d22cc9433abd4a0c1a368252381 Author: remm <r...@apache.org> AuthorDate: Mon Jul 7 14:01:20 2025 +0200 Fix issue returning null for no args, which would cause a NPE Although the comment says that this duplicates jakarta.el.Util, this does not seem to be exactly the case. All paths should throw MethodNotFoundException instead of returning null. In jakarta.el.Util all callers are expecting null instead, so it works fine. Found by Coverity. --- java/org/apache/el/util/ReflectionUtil.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/java/org/apache/el/util/ReflectionUtil.java b/java/org/apache/el/util/ReflectionUtil.java index ae3095a115..e8936efaf5 100644 --- a/java/org/apache/el/util/ReflectionUtil.java +++ b/java/org/apache/el/util/ReflectionUtil.java @@ -153,12 +153,20 @@ public class ReflectionUtil { // Fast path: when no arguments exist, there can only be one matching method and no need for coercion. if (paramCount == 0) { + Method result = null; + Throwable t = null; try { Method method = clazz.getMethod(methodName, paramTypes); - return getMethod(clazz, base, method); + result = getMethod(clazz, base, method); } catch (NoSuchMethodException | SecurityException e) { - // Fall through to broader, slower logic + // Fall through + t = e; } + if (result == null) { + throw new MethodNotFoundException( + MessageFactory.get("error.method.notfound", base, property, paramString(paramTypes)), t); + } + return result; } Method[] methods = clazz.getMethods(); --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org