Fixed socket close problem with VC 2015.
This commit is contained in:
parent
5cb05258ee
commit
d0759eb4eb
10
httplib.h
10
httplib.h
@ -173,10 +173,10 @@ inline bool read_and_close_socket(socket_t sock, T callback)
|
|||||||
{
|
{
|
||||||
FILE* fp_read;
|
FILE* fp_read;
|
||||||
FILE* fp_write;
|
FILE* fp_write;
|
||||||
|
|
||||||
#ifdef _MSC_VER
|
#ifdef _MSC_VER
|
||||||
int osfhandle = _open_osfhandle(sock, _O_RDONLY);
|
fp_read = _fdopen(_open_osfhandle(sock, _O_RDONLY), "rb");
|
||||||
fp_read = _fdopen(osfhandle, "rb");
|
fp_write = _fdopen(_open_osfhandle(sock, _O_WRONLY), "wb");
|
||||||
fp_write = _fdopen(osfhandle, "wb");
|
|
||||||
#else
|
#else
|
||||||
fp_read = fdopen(sock, "rb");
|
fp_read = fdopen(sock, "rb");
|
||||||
fp_write = fdopen(sock, "wb");
|
fp_write = fdopen(sock, "wb");
|
||||||
@ -184,12 +184,8 @@ inline bool read_and_close_socket(socket_t sock, T callback)
|
|||||||
|
|
||||||
auto ret = callback(fp_read, fp_write);
|
auto ret = callback(fp_read, fp_write);
|
||||||
|
|
||||||
#ifdef _MSC_VER
|
|
||||||
sock = osfhandle;
|
|
||||||
#else
|
|
||||||
fclose(fp_read);
|
fclose(fp_read);
|
||||||
fclose(fp_write);
|
fclose(fp_write);
|
||||||
#endif
|
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user