mirror of
https://github.com/2006-Scape/apollo.git
synced 2026-07-03 00:38:21 +00:00
Explicitly close jag grab request channel if no resource is provided.
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
package org.apollo.update;
|
||||
|
||||
import io.netty.buffer.ByteBuf;
|
||||
import io.netty.buffer.Unpooled;
|
||||
import io.netty.channel.Channel;
|
||||
import io.netty.channel.ChannelFutureListener;
|
||||
@@ -39,7 +40,13 @@ public final class JagGrabRequestWorker extends RequestWorker<JagGrabRequest, Re
|
||||
@Override
|
||||
protected void service(ResourceProvider provider, Channel channel, JagGrabRequest request) throws IOException {
|
||||
Optional<ByteBuffer> buf = provider.get(request.getFilePath());
|
||||
buf.ifPresent(buffer -> channel.writeAndFlush(new JagGrabResponse(Unpooled.wrappedBuffer(buffer))).addListener(ChannelFutureListener.CLOSE));
|
||||
|
||||
if (buf.isPresent()) {
|
||||
ByteBuf wrapped = Unpooled.wrappedBuffer(buf.get());
|
||||
channel.writeAndFlush(new JagGrabResponse(wrapped)).addListener(ChannelFutureListener.CLOSE);
|
||||
} else {
|
||||
channel.close();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user