diff --git a/third_party/libevent/event-internal.h b/third_party/libevent/event-internal.h index 7485f21..93ac568 100644 --- a/event-internal.h +++ b/event-internal.h @@ -71,7 +71,7 @@ struct event_base { }; /* Internal use only: Functions that might be missing from */ -#ifndef HAVE_TAILQFOREACH +#if !defined(HAVE_TAILQFOREACH) || defined(__QUENTIN_BUILD__) #define TAILQ_FIRST(head) ((head)->tqh_first) #define TAILQ_END(head) NULL #define TAILQ_NEXT(elm, field) ((elm)->field.tqe_next) @@ -85,6 +85,9 @@ struct event_base { *(listelm)->field.tqe_prev = (elm); \ (listelm)->field.tqe_prev = &(elm)->field.tqe_next; \ } while (0) +#define TAILQ_LAST(head, headname) \ + (*(((struct headname *)((head)->tqh_last))->tqh_last)) +#define TAILQ_EMPTY(head) ((head)->tqh_first == NULL) #endif /* TAILQ_FOREACH */ int _evsignal_set_handler(struct event_base *base, int evsignal, diff --git a/third_party/libevent/evrpc.c b/third_party/libevent/evrpc.c index 070fd9e..194cdab 100644 --- a/evrpc.c +++ b/evrpc.c @@ -55,6 +55,7 @@ #include "event.h" #include "evrpc.h" +#include "event-internal.h" #include "evrpc-internal.h" #include "evhttp.h" #include "evutil.h" diff --git a/third_party/libevent/http.c b/third_party/libevent/http.c index 38a89b6..8fce37a 100644 --- a/http.c +++ b/http.c @@ -88,6 +88,7 @@ #include "evutil.h" #include "log.h" #include "http-internal.h" +#include "event-internal.h" #ifdef WIN32 #define strcasecmp _stricmp