瀏覽代碼

fix tcp packet boundary bug.

Nicolas Cannasse 19 年之前
父節點
當前提交
5ddc73e7c7
共有 1 個文件被更改,包括 3 次插入2 次删除
  1. 3 2
      std/haxe/Http.hx

+ 3 - 2
std/haxe/Http.hx

@@ -235,8 +235,9 @@ class Http {
 		var s = neko.Lib.makeString(4);
 		var s = neko.Lib.makeString(4);
 		sock.setTimeout(10000); // 10 seconds
 		sock.setTimeout(10000); // 10 seconds
 		while( true ) {
 		while( true ) {
-			if( sock.receive(s,0,k) != k )
-				throw "Connection aborted early";
+			var p = sock.receive(s,0,k);
+			while( p != k )
+				p += sock.receive(s,p,k - p);
 			b.addSub(s,0,k);
 			b.addSub(s,0,k);
 			switch( k ) {
 			switch( k ) {
 			case 1:
 			case 1: