aboutsummaryrefslogtreecommitdiff
path: root/src/httpserver.cpp
diff options
context:
space:
mode:
authorCory Fields <cory-nospam-@coryfields.com>2017-11-02 14:37:33 -0400
committerCory Fields <cory-nospam-@coryfields.com>2017-11-02 14:37:35 -0400
commit97932cd2689659addfbb58dc6148928b73af3bd0 (patch)
tree26a86d6457c846e94a15b8b6ba4c02acd5054de7 /src/httpserver.cpp
parent6b58360f9b64eb0b680a662fdfd590e47f115f44 (diff)
downloadbitcoin-97932cd2689659addfbb58dc6148928b73af3bd0.tar.xz
rpc: further constrain the libevent workaround
The bug was introduced in 2.1.6-beta, versions before that don't need the workaround.
Diffstat (limited to 'src/httpserver.cpp')
-rw-r--r--src/httpserver.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/httpserver.cpp b/src/httpserver.cpp
index 63a634b244..f6cbaa20b7 100644
--- a/src/httpserver.cpp
+++ b/src/httpserver.cpp
@@ -241,7 +241,7 @@ static std::string RequestMethodString(HTTPRequest::RequestMethod m)
static void http_request_cb(struct evhttp_request* req, void* arg)
{
// 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);
if (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);
// Re-enable reading from the socket. This is the second part of the libevent
// 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);
if (conn) {
bufferevent* bev = evhttp_connection_get_bufferevent(conn);