From d43c7377564b3e1be36f627a465df2c5779a1ae8 Mon Sep 17 00:00:00 2001 From: Ayke van Laethem <aykevanlaethem@gmail.com> Date: Tue, 24 Apr 2018 17:43:14 +0200 Subject: [PATCH] py/stream: Use uPy errno instead of system's for non-blocking check. This is a more consistent use of errno codes. For example, it may be that a stream returns MP_EAGAIN but the mp_is_nonblocking_error() macro doesn't catch this value because it checks for EAGAIN instead (which may have a different value than MP_EAGAIN when MICROPY_USE_INTERNAL_ERRNO is enabled). --- py/stream.c | 7 ------- py/stream.h | 2 +- 2 files changed, 1 insertion(+), 8 deletions(-) diff --git a/py/stream.c b/py/stream.c index f51f634b6..393988d2c 100644 --- a/py/stream.c +++ b/py/stream.c @@ -32,13 +32,6 @@ #include "py/stream.h" #include "py/runtime.h" -#if MICROPY_STREAMS_NON_BLOCK -#include <errno.h> -#if defined(__MINGW32__) && !defined(__MINGW64_VERSION_MAJOR) -#define EWOULDBLOCK 140 -#endif -#endif - // This file defines generic Python stream read/write methods which // dispatch to the underlying stream interface of an object. diff --git a/py/stream.h b/py/stream.h index a7d8d08f1..a1d1c4f8a 100644 --- a/py/stream.h +++ b/py/stream.h @@ -107,7 +107,7 @@ int mp_stream_posix_fsync(mp_obj_t stream); #endif #if MICROPY_STREAMS_NON_BLOCK -#define mp_is_nonblocking_error(errno) ((errno) == EAGAIN || (errno) == EWOULDBLOCK) +#define mp_is_nonblocking_error(errno) ((errno) == MP_EAGAIN || (errno) == MP_EWOULDBLOCK) #else #define mp_is_nonblocking_error(errno) (0) #endif -- GitLab