From 77057df25d305de2d20d7056a04b3a9c6a201418 Mon Sep 17 00:00:00 2001 From: Redkale <22250530@qq.com> Date: Tue, 11 Jul 2017 11:59:12 +0800 Subject: [PATCH] --- src/org/redkale/net/http/HttpResponse.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/org/redkale/net/http/HttpResponse.java b/src/org/redkale/net/http/HttpResponse.java index 36ff79738..b195954a6 100644 --- a/src/org/redkale/net/http/HttpResponse.java +++ b/src/org/redkale/net/http/HttpResponse.java @@ -704,8 +704,8 @@ public class HttpResponse extends Response { final String match = request.getHeader("If-None-Match"); final String etag = (file == null ? 0L : file.lastModified()) + "-" + length; if (match != null && etag.equals(match)) { - finish304(); - return; + //finish304(); + //return; } this.contentLength = length; if (filename != null && !filename.isEmpty() && file != null) { @@ -1006,7 +1006,7 @@ public class HttpResponse extends Response { @Override public void completed(Integer result, ByteBuffer attachment) { - //(file + "-------------------result: " + result + ", max = " + max + ", count = " + count); + //(Thread.currentThread().getName() + "-----------" + file + "-------------------result: " + result + ", max = " + max + ", count = " + count); if (result < 0 || count >= max) { failed(null, attachment); return; @@ -1036,7 +1036,11 @@ public class HttpResponse extends Response { attachment.limit((int) (attachment.position() + max - count)); } attachment.flip(); - channel.write(attachment, attachment, this); + if (attachment.hasRemaining()) { + channel.write(attachment, attachment, this); + } else { + failed(null, attachment); + } } }