|
@@ -98,6 +98,7 @@ class Http extends haxe.http.HttpBase {
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
var secure = (url_regexp.matched(1) == "https://");
|
|
var secure = (url_regexp.matched(1) == "https://");
|
|
|
|
+ var ownsSocket = false;
|
|
if (sock == null) {
|
|
if (sock == null) {
|
|
if (secure) {
|
|
if (secure) {
|
|
#if php
|
|
#if php
|
|
@@ -117,6 +118,7 @@ class Http extends haxe.http.HttpBase {
|
|
sock = new Socket();
|
|
sock = new Socket();
|
|
}
|
|
}
|
|
sock.setTimeout(cnxTimeout);
|
|
sock.setTimeout(cnxTimeout);
|
|
|
|
+ ownsSocket = true;
|
|
}
|
|
}
|
|
var host = url_regexp.matched(2);
|
|
var host = url_regexp.matched(2);
|
|
var portString = url_regexp.matched(3);
|
|
var portString = url_regexp.matched(3);
|
|
@@ -246,11 +248,13 @@ class Http extends haxe.http.HttpBase {
|
|
else
|
|
else
|
|
writeBody(b, null, 0, null, sock);
|
|
writeBody(b, null, 0, null, sock);
|
|
readHttpResponse(api, sock);
|
|
readHttpResponse(api, sock);
|
|
- sock.close();
|
|
|
|
|
|
+ if (ownsSocket)
|
|
|
|
+ sock.close();
|
|
} catch (e:Dynamic) {
|
|
} catch (e:Dynamic) {
|
|
- try
|
|
|
|
- sock.close()
|
|
|
|
- catch (e:Dynamic) {};
|
|
|
|
|
|
+ if (ownsSocket)
|
|
|
|
+ try
|
|
|
|
+ sock.close()
|
|
|
|
+ catch (e:Dynamic) {};
|
|
onError(Std.string(e));
|
|
onError(Std.string(e));
|
|
}
|
|
}
|
|
}
|
|
}
|