File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -43,7 +43,7 @@ class Response {
4343 try {
4444 client .writeString (sendHeaders (bytes .length ).toString ());
4545 client .writeBytes (bytes );
46- } catch (_ : Eof ) {
46+ } catch (_ ) {
4747 // The connection has already been closed, silently ignore
4848 }
4949
Original file line number Diff line number Diff line change @@ -25,17 +25,12 @@ class WebServer {
2525
2626 private function onConnection (client : TcpClient ): Void {
2727 var request : Null <Request > = null ;
28- var done : Bool = false ;
2928
3029 client .startReading (chunk -> @:privateAccess {
31- if (done ) {
32- client .closeAsync ();
33- return ;
34- }
35-
3630 final data = switch chunk {
3731 case Data (bytes ): bytes ;
3832 case Eof :
33+ this .request = null ;
3934 client .closeAsync ();
4035 return ;
4136 }
@@ -45,34 +40,34 @@ class WebServer {
4540 request = new Request (lines );
4641
4742 if (request .pos >= request .length ) {
48- done = true ;
4943 this .completeRequest (request , client );
44+ request = null ;
5045 return ;
5146 }
52- } else if ( ! done ) {
47+ } else {
5348 final length = request .length - request .pos < data .length ? request .length - request .pos : data .length ;
5449 request .data .blit (request .pos , data , 0 , length );
5550 request .pos + = length ;
5651
5752 if (request .pos >= request .length ) {
58- done = true ;
5953 this .completeRequest (request , client );
54+ request = null ;
6055 return ;
6156 }
6257 }
6358
6459 if (request .chunked ) {
6560 request .chunk (data .toString ());
6661 if (request .chunkSize == 0 ) {
67- done = true ;
6862 this .completeRequest (request , client );
63+ request = null ;
6964 return ;
7065 }
7166 }
7267
7368 if (request .method != Post && request .method != Put ) {
74- done = true ;
7569 this .completeRequest (request , client );
70+ request = null ;
7671 }
7772 });
7873 }
You can’t perform that action at this time.
0 commit comments