commit 590c00b776ba5daed0a5dcb4b65f0d2faefac615 from: Omar Polo date: Sun Jul 25 12:36:28 2021 UTC drain read buffer before EOF commit - 1663bf1e97e8a9f54bb78bfe8853f81c8e99e6db commit + 590c00b776ba5daed0a5dcb4b65f0d2faefac615 blob - e02fda2b3f326511315d01ed4b2b9575847861ec blob + 3ecdbf56350b04d3746fe0bc220158cda280467e --- net.c +++ net.c @@ -576,6 +576,7 @@ static void net_error(struct bufferevent *bev, short error, void *d) { struct req *req = d; + struct evbuffer *src; if (error & EVBUFFER_TIMEOUT) { close_with_err(req, "Timeout loading page"); @@ -588,6 +589,10 @@ net_error(struct bufferevent *bev, short error, void * } if (error & EVBUFFER_EOF) { + src = EVBUFFER_INPUT(req->bev); + if (EVBUFFER_LENGTH(src) != 0) + net_send_ui(IMSG_BUF, req->id, EVBUFFER_DATA(src), + EVBUFFER_LENGTH(src)); net_send_ui(IMSG_EOF, req->id, NULL, 0); close_conn(0, 0, req); return;