]> granicus.if.org Git - libevent/commitdiff
make regression test work for poll and select
authorNiels Provos <provos@gmail.com>
Sat, 18 Nov 2006 08:51:12 +0000 (08:51 +0000)
committerNiels Provos <provos@gmail.com>
Sat, 18 Nov 2006 08:51:12 +0000 (08:51 +0000)
svn:r265

http.c
test/regress_http.c

diff --git a/http.c b/http.c
index 9a09294f843d34ed0b5453ee4594bb4feeacb812..32895fc57894d0d535524f7ef772352304d71e2d 100644 (file)
--- a/http.c
+++ b/http.c
@@ -1190,6 +1190,9 @@ evhttp_send_error(struct evhttp_request *req, int error, const char *reason)
 
        struct evbuffer *buf = evbuffer_new();
 
+       /* close the connection on error */
+       evhttp_add_header(req->output_headers, "Connection", "close");
+
        evhttp_response_code(req, error, reason);
 
        evbuffer_add_printf(buf, fmt, error, reason);
index 9ebf24d00a7651833d7835515856c4a41dd2806e..d5166fbb150d43f6041b42f31202d11b2a2c1b9c 100644 (file)
@@ -163,7 +163,7 @@ http_errorcb(struct bufferevent *bev, short what, void *arg)
 void
 http_basic_cb(struct evhttp_request *req, void *arg)
 {
-       event_debug((stderr, "%s: called\n", __func__));
+       event_debug(("%s: called\n", __func__));
 
        struct evbuffer *evb = evbuffer_new();
        evbuffer_add_printf(evb, "This is funny");
@@ -380,7 +380,7 @@ http_post_test(void)
 void
 http_post_cb(struct evhttp_request *req, void *arg)
 {
-       event_debug((stderr, "%s: called\n", __func__));
+       event_debug(("%s: called\n", __func__));
 
        /* Yes, we are expecting a post request */
        if (req->type != EVHTTP_REQ_POST) {
@@ -447,6 +447,7 @@ http_failure_readcb(struct bufferevent *bev, void *arg)
        const char *what = "400 Bad Request";
        if (evbuffer_find(bev->input, what, strlen(what)) != NULL) {
                test_ok = 2;
+               bufferevent_disable(bev, EV_READ);
                event_loopexit(NULL);
        }
 }