Browse Source

http: remove unneeded platform-depended macros

pull/2/head
mittorn 5 years ago
parent
commit
1d9b5d4611
  1. 31
      engine/common/net_ws.c

31
engine/common/net_ws.c

@ -1928,28 +1928,6 @@ static convar_t *http_autoremove;
static convar_t *http_timeout; static convar_t *http_timeout;
static convar_t *http_maxconnections; static convar_t *http_maxconnections;
#ifdef _WIN32
#define ISBLOCK() (pWSAGetLastError() == WSAEWOULDBLOCK )
#else
#define ISBLOCK() ( errno == EWOULDBLOCK )
#endif
#ifdef _WIN32
#define ISINPROGRESS() ( pWSAGetLastError() == WSAEINPROGRESS || pWSAGetLastError() == WSAEWOULDBLOCK )
#elif defined(__APPLE__) || defined(__FreeBSD__) || defined __EMSCRIPTEN__
#define ISINPROGRESS() ( errno == EINPROGRESS || errno == EWOULDBLOCK )
#else
#define ISINPROGRESS() ( errno == EINPROGRESS ) // Should give EWOOLDBLOCK if try recv too soon
#endif
#ifdef _WIN32
#define ISNOTCONN() ( pWSAGetLastError() == WSAEWOULDBLOCK || pWSAGetLastError() == WSAENOTCONN )
#elif defined(__APPLE__) || defined(__FreeBSD__) || defined __EMSCRIPTEN__
#define ISNOTCONN() ( errno == EWOULDBLOCK || errno == ENOTCONN )
#else
#define ISNOTCONN() ( errno == EWOULDBLOCK )
#endif
/* /*
======================== ========================
HTTP_ClearCustomServers HTTP_ClearCustomServers
@ -2254,10 +2232,9 @@ void HTTP_Run( void )
// Now set non-blocking mode // Now set non-blocking mode
// You may skip this if not supported by system, // You may skip this if not supported by system,
// but download will lock engine, maybe you will need to add manual returns // but download will lock engine, maybe you will need to add manual returns
#if defined(_WIN32) || defined(__APPLE__) || defined(__FreeBSD__) || defined __EMSCRIPTEN__
mode = 1; mode = 1;
pIoctlSocket( curfile->socket, FIONBIO, &mode ); pIoctlSocket( curfile->socket, FIONBIO, &mode );
#else #ifdef __linux__
// SOCK_NONBLOCK is not portable, so use fcntl // SOCK_NONBLOCK is not portable, so use fcntl
fcntl( curfile->socket, F_SETFL, fcntl( curfile->socket, F_GETFL, 0 ) | O_NONBLOCK ); fcntl( curfile->socket, F_SETFL, fcntl( curfile->socket, F_GETFL, 0 ) | O_NONBLOCK );
#endif #endif
@ -2292,7 +2269,7 @@ void HTTP_Run( void )
if( res ) if( res )
{ {
if( ISINPROGRESS() ) // Should give EWOOLDBLOCK if try recv too soon if( pWSAGetLastError() == WSAEINPROGRESS || pWSAGetLastError() == WSAEWOULDBLOCK ) // Should give EWOOLDBLOCK if try recv too soon
curfile->state = HTTP_CONNECTED; curfile->state = HTTP_CONNECTED;
else else
{ {
@ -2328,7 +2305,7 @@ void HTTP_Run( void )
if( res < 0 ) if( res < 0 )
{ {
if( !ISNOTCONN() ) if( pWSAGetLastError() != WSAEWOULDBLOCK && pWSAGetLastError() != WSAENOTCONN )
{ {
Con_Printf( S_ERROR "failed to send request: %s\n", NET_ErrorString() ); Con_Printf( S_ERROR "failed to send request: %s\n", NET_ErrorString() );
HTTP_FreeFile( curfile, true ); HTTP_FreeFile( curfile, true );
@ -2377,7 +2354,7 @@ void HTTP_Run( void )
HTTP_FreeFile( curfile, false ); // success HTTP_FreeFile( curfile, false ); // success
continue; continue;
} }
else if( !ISBLOCK() ) else if( pWSAGetLastError() != WSAEWOULDBLOCK )
Con_Reportf( "problem downloading %s:\n%s\n", curfile->path, NET_ErrorString() ); Con_Reportf( "problem downloading %s:\n%s\n", curfile->path, NET_ErrorString() );
else else
curfile->blocktime += host.frametime; curfile->blocktime += host.frametime;

Loading…
Cancel
Save