|
|
@ -241,7 +241,7 @@ static std::string RequestMethodString(HTTPRequest::RequestMethod m) |
|
|
|
static void http_request_cb(struct evhttp_request* req, void* arg) |
|
|
|
static void http_request_cb(struct evhttp_request* req, void* arg) |
|
|
|
{ |
|
|
|
{ |
|
|
|
// Disable reading to work around a libevent bug, fixed in 2.2.0.
|
|
|
|
// Disable reading to work around a libevent bug, fixed in 2.2.0.
|
|
|
|
if (event_get_version_number() < 0x02020001) { |
|
|
|
if (event_get_version_number() >= 0x02010600 && event_get_version_number() < 0x02020001) { |
|
|
|
evhttp_connection* conn = evhttp_request_get_connection(req); |
|
|
|
evhttp_connection* conn = evhttp_request_get_connection(req); |
|
|
|
if (conn) { |
|
|
|
if (conn) { |
|
|
|
bufferevent* bev = evhttp_connection_get_bufferevent(conn); |
|
|
|
bufferevent* bev = evhttp_connection_get_bufferevent(conn); |
|
|
@ -617,7 +617,7 @@ void HTTPRequest::WriteReply(int nStatus, const std::string& strReply) |
|
|
|
evhttp_send_reply(req_copy, nStatus, nullptr, nullptr); |
|
|
|
evhttp_send_reply(req_copy, nStatus, nullptr, nullptr); |
|
|
|
// Re-enable reading from the socket. This is the second part of the libevent
|
|
|
|
// Re-enable reading from the socket. This is the second part of the libevent
|
|
|
|
// workaround above.
|
|
|
|
// workaround above.
|
|
|
|
if (event_get_version_number() < 0x02020001) { |
|
|
|
if (event_get_version_number() >= 0x02010600 && event_get_version_number() < 0x02020001) { |
|
|
|
evhttp_connection* conn = evhttp_request_get_connection(req_copy); |
|
|
|
evhttp_connection* conn = evhttp_request_get_connection(req_copy); |
|
|
|
if (conn) { |
|
|
|
if (conn) { |
|
|
|
bufferevent* bev = evhttp_connection_get_bufferevent(conn); |
|
|
|
bufferevent* bev = evhttp_connection_get_bufferevent(conn); |
|
|
|