Commit e9261b1e authored by antirez's avatar antirez
Browse files

ae.c: set errno when error is not a failing syscall.

In this way the caller is able to perform better error checking or to
use strerror() without the risk of meaningless error messages being
displayed.
parent 4dc1e0dd
...@@ -38,6 +38,7 @@ ...@@ -38,6 +38,7 @@
#include <poll.h> #include <poll.h>
#include <string.h> #include <string.h>
#include <time.h> #include <time.h>
#include <errno.h>
#include "ae.h" #include "ae.h"
#include "zmalloc.h" #include "zmalloc.h"
...@@ -104,7 +105,10 @@ void aeStop(aeEventLoop *eventLoop) { ...@@ -104,7 +105,10 @@ void aeStop(aeEventLoop *eventLoop) {
int aeCreateFileEvent(aeEventLoop *eventLoop, int fd, int mask, int aeCreateFileEvent(aeEventLoop *eventLoop, int fd, int mask,
aeFileProc *proc, void *clientData) aeFileProc *proc, void *clientData)
{ {
if (fd >= eventLoop->setsize) return AE_ERR; if (fd >= eventLoop->setsize) {
errno = ERANGE;
return AE_ERR;
}
aeFileEvent *fe = &eventLoop->events[fd]; aeFileEvent *fe = &eventLoop->events[fd];
if (aeApiAddEvent(eventLoop, fd, mask) == -1) if (aeApiAddEvent(eventLoop, fd, mask) == -1)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment