Skip to content

Commit

Permalink
Fix NPE in RSocketInboundGateway.decodePayload()
Browse files Browse the repository at this point in the history
  • Loading branch information
artembilan committed Nov 14, 2019
1 parent 72f7c72 commit 069d873
Showing 1 changed file with 12 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -185,14 +185,21 @@ public Mono<Void> handleMessage(Message<?> requestMessage) {
}

private Mono<Message<?>> decodeRequestMessage(Message<?> requestMessage) {
return Mono.just(decodePayload(requestMessage))
.map((payload) ->
MessageBuilder.withPayload(payload)
.copyHeaders(requestMessage.getHeaders())
.build());
Object data = decodePayload(requestMessage);
if (data == null) {
return Mono.just(requestMessage);
}
else {
return Mono.just(data)
.map((payload) ->
MessageBuilder.withPayload(payload)
.copyHeaders(requestMessage.getHeaders())
.build());
}
}

@SuppressWarnings("unchecked")
@Nullable
private Object decodePayload(Message<?> requestMessage) {
ResolvableType elementType = this.requestElementType;
MimeType mimeType = requestMessage.getHeaders().get(MessageHeaders.CONTENT_TYPE, MimeType.class);
Expand Down

0 comments on commit 069d873

Please sign in to comment.