From 07c58b12db8461dfe2b34dd3351b6fb427d640d9 Mon Sep 17 00:00:00 2001 From: Georgios Andrianakis Date: Mon, 19 Apr 2021 16:56:27 +0300 Subject: [PATCH] Avoid potential NPE in Metrics filter The NPE could happen if an exception was thrown in a ContainerRequestFilter Fixes: #16620 --- .../smallrye/metrics/runtime/QuarkusRestMetricsFilter.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/extensions/smallrye-metrics/runtime/src/main/java/io/quarkus/smallrye/metrics/runtime/QuarkusRestMetricsFilter.java b/extensions/smallrye-metrics/runtime/src/main/java/io/quarkus/smallrye/metrics/runtime/QuarkusRestMetricsFilter.java index e34d8ffbba5da..5b90e7a40fb6d 100644 --- a/extensions/smallrye-metrics/runtime/src/main/java/io/quarkus/smallrye/metrics/runtime/QuarkusRestMetricsFilter.java +++ b/extensions/smallrye-metrics/runtime/src/main/java/io/quarkus/smallrye/metrics/runtime/QuarkusRestMetricsFilter.java @@ -17,6 +17,9 @@ public class QuarkusRestMetricsFilter { @ServerResponseFilter public void filter(ResourceInfo resourceInfo, Throwable throwable) { + if (resourceInfo == null) { // can happen if an exception was thrown before a target method has been identified + return; + } final Class resourceClass = resourceInfo.getResourceClass(); final Method resourceMethod = resourceInfo.getResourceMethod(); maybeCreateMetrics(resourceClass, resourceMethod);