diff options
Diffstat (limited to 'src/evmgr.c')
-rw-r--r-- | src/evmgr.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/src/evmgr.c b/src/evmgr.c index d26502df..d11e5a6c 100644 --- a/src/evmgr.c +++ b/src/evmgr.c @@ -241,7 +241,7 @@ error: */ void evmgr_run(struct evmgr *evmgr) { - int rc; + int rc __attribute__((unused)); evmgr->state = EVLOOP_STATE_WAIT|EVLOOP_STATE_RUN; rc = fdev_epoll_wait_and_dispatch(evmgr->fdev_epoll, -1); @@ -284,14 +284,13 @@ static void on_evmgr_efd(void *closure, uint32_t event, struct fdev *fdev) */ int evmgr_create(struct evmgr **result) { - int rc; struct evmgr *evmgr; /* creates the evmgr on need */ evmgr = malloc(sizeof *evmgr); if (!evmgr) { ERROR("out of memory"); - rc = -ENOMEM; + errno = ENOMEM; goto error; } @@ -299,7 +298,6 @@ int evmgr_create(struct evmgr **result) evmgr->efd = eventfd(0, EFD_CLOEXEC|EFD_SEMAPHORE); if (evmgr->efd < 0) { ERROR("can't make eventfd for events"); - rc = -errno; goto error1; } @@ -334,7 +332,7 @@ error1: free(evmgr); error: *result = 0; - return rc; + return errno ? -errno : -1; } #endif |