diff --git a/buffer.c b/buffer.c index 14108884..b7c3db9b 100644 --- a/buffer.c +++ b/buffer.c @@ -302,7 +302,7 @@ evbuffer_new(void) if (buffer == NULL) return (NULL); - TAILQ_INIT(&buffer->callbacks); + LIST_INIT(&buffer->callbacks); buffer->refcnt = 1; buffer->last_with_datap = &buffer->first; @@ -393,7 +393,7 @@ evbuffer_run_callbacks(struct evbuffer *buffer, int running_deferred) ASSERT_EVBUFFER_LOCKED(buffer); - if (TAILQ_EMPTY(&buffer->callbacks)) { + if (LIST_EMPTY(&buffer->callbacks)) { buffer->n_add_for_cb = buffer->n_del_for_cb = 0; return; } @@ -408,12 +408,12 @@ evbuffer_run_callbacks(struct evbuffer *buffer, int running_deferred) buffer->n_add_for_cb = 0; buffer->n_del_for_cb = 0; } - for (cbent = TAILQ_FIRST(&buffer->callbacks); - cbent != TAILQ_END(&buffer->callbacks); + for (cbent = LIST_FIRST(&buffer->callbacks); + cbent != LIST_END(&buffer->callbacks); cbent = next) { /* Get the 'next' pointer now in case this callback decides * to remove itself or something. */ - next = TAILQ_NEXT(cbent, next); + next = LIST_NEXT(cbent, next); if ((cbent->flags & mask) != masked_val) continue; @@ -463,9 +463,9 @@ evbuffer_remove_all_callbacks(struct evbuffer *buffer) { struct evbuffer_cb_entry *cbent; - while ((cbent = TAILQ_FIRST(&buffer->callbacks))) { - TAILQ_REMOVE(&buffer->callbacks, cbent, next); - mm_free(cbent); + while ((cbent = LIST_FIRST(&buffer->callbacks))) { + LIST_REMOVE(cbent, next); + mm_free(cbent); } } @@ -2631,7 +2631,7 @@ evbuffer_setcb(struct evbuffer *buffer, evbuffer_cb cb, void *cbarg) { EVBUFFER_LOCK(buffer); - if (!TAILQ_EMPTY(&buffer->callbacks)) + if (!LIST_EMPTY(&buffer->callbacks)) evbuffer_remove_all_callbacks(buffer); if (cb) { @@ -2653,7 +2653,7 @@ evbuffer_add_cb(struct evbuffer *buffer, evbuffer_cb_func cb, void *cbarg) e->cb.cb_func = cb; e->cbarg = cbarg; e->flags = EVBUFFER_CB_ENABLED; - TAILQ_INSERT_HEAD(&buffer->callbacks, e, next); + LIST_INSERT_HEAD(&buffer->callbacks, e, next); EVBUFFER_UNLOCK(buffer); return e; } @@ -2663,7 +2663,7 @@ evbuffer_remove_cb_entry(struct evbuffer *buffer, struct evbuffer_cb_entry *ent) { EVBUFFER_LOCK(buffer); - TAILQ_REMOVE(&buffer->callbacks, ent, next); + LIST_REMOVE(ent, next); EVBUFFER_UNLOCK(buffer); mm_free(ent); return 0; @@ -2675,7 +2675,7 @@ evbuffer_remove_cb(struct evbuffer *buffer, evbuffer_cb_func cb, void *cbarg) struct evbuffer_cb_entry *cbent; int result = -1; EVBUFFER_LOCK(buffer); - TAILQ_FOREACH(cbent, &buffer->callbacks, next) { + LIST_FOREACH(cbent, &buffer->callbacks, next) { if (cb == cbent->cb.cb_func && cbarg == cbent->cbarg) { result = evbuffer_remove_cb_entry(buffer, cbent); goto done; diff --git a/buffer_iocp.c b/buffer_iocp.c index 6983a6ac..7e80d5fb 100644 --- a/buffer_iocp.c +++ b/buffer_iocp.c @@ -146,7 +146,7 @@ evbuffer_overlapped_new(evutil_socket_t fd) evo = mm_calloc(1, sizeof(struct evbuffer_overlapped)); - TAILQ_INIT(&evo->buffer.callbacks); + LIST_INIT(&evo->buffer.callbacks); evo->buffer.refcnt = 1; evo->buffer.is_overlapped = 1; diff --git a/evbuffer-internal.h b/evbuffer-internal.h index 01f5703a..61efe51b 100644 --- a/evbuffer-internal.h +++ b/evbuffer-internal.h @@ -59,7 +59,7 @@ extern "C" { * when bytes are added to or removed from the evbuffer. */ struct evbuffer_cb_entry { /** Structures to implement a doubly-linked queue of callbacks */ - TAILQ_ENTRY(evbuffer_cb_entry) next; + LIST_ENTRY(evbuffer_cb_entry) next; /** The callback function to invoke when this callback is called. If EVBUFFER_CB_OBSOLETE is set in flags, the cb_obsolete field is valid; otherwise, cb_func is valid. */ @@ -144,7 +144,7 @@ struct evbuffer { struct deferred_cb deferred; /** A doubly-linked-list of callback functions */ - TAILQ_HEAD(evbuffer_cb_queue, evbuffer_cb_entry) callbacks; + LIST_HEAD(evbuffer_cb_queue, evbuffer_cb_entry) callbacks; /** The parent bufferevent object this evbuffer belongs to. * NULL if the evbuffer stands alone. */