Example #1
0
static int ezApiCreate(ezEventLoop * eventLoop)
{
	ezApiState *state = (ezApiState *) ez_malloc(sizeof(ezApiState));

	if (!state)
		return AE_ERR;
	state->events =
	    (struct epoll_event *)ez_malloc(sizeof(struct epoll_event) * eventLoop->setsize);
	if (!state->events) {
		ez_free(state);
		return AE_ERR;
	}
	state->epfd = epoll_create(1024);	/* 1024 is just a hint for the kernel */
	if (state->epfd == -1) {
		ez_free(state->events);
		ez_free(state);
		return AE_ERR;
	}

	state->evfd = eventfd(0, EFD_NONBLOCK | EFD_CLOEXEC);
	if (state->evfd == -1) {
		ez_free(state->events);
		ez_free(state);
		return AE_ERR;
	}

	eventLoop->apidata = state;
	return AE_OK;
}
Example #2
0
static void ezApiDelete(ezEventLoop * eventLoop)
{
	ezApiState *state = eventLoop->apidata;

	close(state->epfd);
	close(state->evfd);

	ez_free(state->events);
	ez_free(state);
}
Example #3
0
void ez_list_free (EZList *list) {

    EZList *last;

    while (list) {
        last = list;
        list = list->next;
        ez_free (last);
    }
}
Example #4
0
void ez_list_free_with_data (EZList *list, ez_list_free_func func) {
    EZList *last;

    while (list) {
        last = list;
        list = list->next;
        if (func != NULL) {
            func (last->data);
        }
        ez_free (last);
    }
}
Example #5
0
void ez_list_free_1 (EZList *list) {
    ez_free (list);
}