Commit Diff


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;