Le Mon, Jun 28, 2010 at 07:21:21PM +0800, Zhu Han ecrivait : > I observed the same problem in my environment. I took some time to trace the > cause. Seems like it's really a bug. Does anybody help me verify it and > give a possible fix?
This fixes it for me, although it's probably not the right way to fix this : diff -ur /tmp/a/http.c /tmp/b/http.c --- /tmp/a/http.c 2010-06-28 13:29:03.000000000 +0200 +++ /tmp/b/http.c 2010-06-13 11:41:49.000000000 +0200 @@ -557,7 +557,9 @@ */ if (!req->userdone) { /* remove it so that it will not be freed */ - TAILQ_REMOVE(&req->evcon->requests, req, next); + if (req->evcon->http_server == NULL) { + TAILQ_REMOVE(&req->evcon->requests, req, next); + } /* indicate that this request no longer has a * connection object */ -- Frank Denis - j [at] pureftpd.org - http://00f.net _______________________________________________ Libevent-users mailing list Libevent-users@monkey.org http://lists.monkey.org:8080/listinfo/libevent-users