소스 검색

SocketBuffer: Keep sending until blocked

See GH-345
Tatsuhiro Tsujikawa 10 년 전
부모
커밋
cb5ccf6a7a
1개의 변경된 파일4개의 추가작업 그리고 1개의 파일을 삭제
  1. 4 1
      src/SocketBuffer.cc

+ 4 - 1
src/SocketBuffer.cc

@@ -169,7 +169,10 @@ ssize_t SocketBuffer::send()
     if(firstlen > slen) {
       offset_ += slen;
       bufq_.front()->progressUpdate(slen, false);
-      goto fin;
+      if (socket_->wantRead() || socket_->wantWrite()) {
+        goto fin;
+      }
+      continue;
     }
 
     slen -= firstlen;