From 13e4eaa18b5c8d7d8603316e341b876c1fcf7e2f Mon Sep 17 00:00:00 2001 From: Andrey Litvitski Date: Wed, 16 Jul 2025 14:25:56 +0300 Subject: [PATCH] avoid NPE when merging null trailers in `GrpcExceptionHandledServerCall` Closes: gh-229 Signed-off-by: Andrey Litvitski --- .../server/exception/GrpcExceptionHandledServerCall.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/spring-grpc-core/src/main/java/org/springframework/grpc/server/exception/GrpcExceptionHandledServerCall.java b/spring-grpc-core/src/main/java/org/springframework/grpc/server/exception/GrpcExceptionHandledServerCall.java index 2aef1849..2eaffefb 100644 --- a/spring-grpc-core/src/main/java/org/springframework/grpc/server/exception/GrpcExceptionHandledServerCall.java +++ b/spring-grpc-core/src/main/java/org/springframework/grpc/server/exception/GrpcExceptionHandledServerCall.java @@ -36,7 +36,10 @@ public void close(Status status, Metadata trailers) { if (status.getCode() == Status.Code.UNKNOWN && status.getCause() != null) { final Throwable cause = status.getCause(); final StatusException statusException = this.exceptionHandler.handleException(cause); - trailers.merge(statusException.getTrailers()); + Metadata statusExceptionTrailers = statusException.getTrailers(); + if (statusExceptionTrailers != null) { + trailers.merge(statusExceptionTrailers); + } super.close(statusException.getStatus(), trailers); } else {