|
|
|
@ -186,6 +186,7 @@ extern "C" {
|
|
|
|
|
# ifndef EV_SELECT_IS_WINSOCKET |
|
|
|
|
# define EV_SELECT_IS_WINSOCKET 1 |
|
|
|
|
# endif |
|
|
|
|
# undef EV_AVOID_STDIO |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
/* this block tries to deduce configuration from header-defined symbols and defaults */ |
|
|
|
@ -526,6 +527,14 @@ static EV_ATOMIC_T have_monotonic; /* did clock_gettime (CLOCK_MONOTONIC) work?
|
|
|
|
|
|
|
|
|
|
/*****************************************************************************/ |
|
|
|
|
|
|
|
|
|
#if EV_AVOID_STDIO |
|
|
|
|
static void noinline |
|
|
|
|
ev_printerr (const char *msg) |
|
|
|
|
{ |
|
|
|
|
write (STDERR_FILENO, msg, strlen (msg)); |
|
|
|
|
} |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
static void (*syserr_cb)(const char *msg); |
|
|
|
|
|
|
|
|
|
void |
|
|
|
@ -545,11 +554,12 @@ ev_syserr (const char *msg)
|
|
|
|
|
else |
|
|
|
|
{ |
|
|
|
|
#if EV_AVOID_STDIO |
|
|
|
|
write (STDERR_FILENO, msg, strlen (msg)); |
|
|
|
|
write (STDERR_FILENO, ": ", 2); |
|
|
|
|
msg = strerror (errno); |
|
|
|
|
write (STDERR_FILENO, msg, strlen (msg)); |
|
|
|
|
write (STDERR_FILENO, "\n", 1); |
|
|
|
|
const char *err = strerror (errno); |
|
|
|
|
|
|
|
|
|
ev_printerr (msg); |
|
|
|
|
ev_printerr (": "); |
|
|
|
|
ev_printerr (err); |
|
|
|
|
ev_printerr ("\n"); |
|
|
|
|
#else |
|
|
|
|
perror (msg); |
|
|
|
|
#endif |
|
|
|
@ -588,8 +598,7 @@ ev_realloc (void *ptr, long size)
|
|
|
|
|
if (!ptr && size) |
|
|
|
|
{ |
|
|
|
|
#if EV_AVOID_STDIO |
|
|
|
|
write (STDERR_FILENO, "libev: memory allocation failed, aborting.", |
|
|
|
|
sizeof ("libev: memory allocation failed, aborting.") - 1); |
|
|
|
|
ev_printerr ("libev: memory allocation failed, aborting.\n"); |
|
|
|
|
#else |
|
|
|
|
fprintf (stderr, "libev: cannot allocate %ld bytes, aborting.", size); |
|
|
|
|
#endif |
|
|
|
|