From 89cb8a917163a93ead26ae86350df5f694b768d8 Mon Sep 17 00:00:00 2001 From: Spencer Gibb Date: Fri, 24 Jan 2020 17:58:59 -0500 Subject: [PATCH] Returns databuffer if not netty --- .../cloud/gateway/support/ServerWebExchangeUtils.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/support/ServerWebExchangeUtils.java b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/support/ServerWebExchangeUtils.java index ca90c619..4adcde01 100644 --- a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/support/ServerWebExchangeUtils.java +++ b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/support/ServerWebExchangeUtils.java @@ -359,9 +359,13 @@ public final class ServerWebExchangeUtils { // probably == downstream closed return null; } - // TODO: deal with Netty - NettyDataBuffer pdb = (NettyDataBuffer) dataBuffer; - return pdb.factory().wrap(pdb.getNativeBuffer().retainedSlice()); + if (dataBuffer instanceof NettyDataBuffer) { + NettyDataBuffer buffer = (NettyDataBuffer) dataBuffer; + return buffer.factory() + .wrap(buffer.getNativeBuffer().retainedSlice()); + } + // FIXME: is this going to be a problem? + return dataBuffer; }).flux(); } };