In using the latest 1.3e on linux, evhttp.h fails to compile because of a 
missing definition of TAILQ_ENTRY in evhttp.h.  This is due to the fact that 
the workaround in event.h is #define'd and #undef'd within event.h and not 
available to evhttp.h when defining "struct evhttp_request".  This patch 
obviously fixes it:

--- libevent-1.3e/evhttp.h      2007-08-25 13:49:22.000000000 -0500
+++ libevent-1.3e.002/evhttp.h  2007-10-29 22:32:07.000000000 -0500
@@ -108,7 +108,14 @@
  * reasonable accessors.
 struct evhttp_request {
+#if defined(TAILQ_ENTRY)
        TAILQ_ENTRY(evhttp_request) next;
+struct {                                                               \
+       struct type *tqe_next;  /* next element */                      \
+       struct type **tqe_prev; /* address of previous next element */  \
+}       next;
        /* the connection object that this request belongs to */
        struct evhttp_connection *evcon;

... but it would be nice if this was coordinated with the definition in 
event.h, possibly by simply not #undef'ing it from event.h.  Anyway, if there 
is a preference on how to fix this, I'd be glad to regenerate the patch.


Libevent-users mailing list

Reply via email to