aboutsummaryrefslogtreecommitdiff
path: root/src/net.cpp
diff options
context:
space:
mode:
authorCory Fields <cory-nospam-@coryfields.com>2015-06-16 04:02:25 -0400
committerCory Fields <cory-nospam-@coryfields.com>2015-06-16 04:04:02 -0400
commit2b890dd424b32320be6fc0333e67e2d7c9616065 (patch)
treec20253faf3dd5346a8c4b2686144fb59edb2bac2 /src/net.cpp
parentcd27bba060d91995da706bc03cd2ef39b79b49b1 (diff)
downloadbitcoin-2b890dd424b32320be6fc0333e67e2d7c9616065.tar.xz
locking: fix a few small issues uncovered by -Wthread-safety
- rpcwallet: No need to lock twice here - openssl: Clang doesn't understand selective lock/unlock here. Ignore it. - CNode: Fix a legitimate (though very unlikely) locking bug.
Diffstat (limited to 'src/net.cpp')
-rw-r--r--src/net.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/net.cpp b/src/net.cpp
index 42ac0e50ea..adf89554d6 100644
--- a/src/net.cpp
+++ b/src/net.cpp
@@ -2032,8 +2032,10 @@ void CNode::EndMessage() UNLOCK_FUNCTION(cs_vSend)
Fuzz(GetArg("-fuzzmessagestest", 10));
if (ssSend.size() == 0)
+ {
+ LEAVE_CRITICAL_SECTION(cs_vSend);
return;
-
+ }
// Set the size
unsigned int nSize = ssSend.size() - CMessageHeader::HEADER_SIZE;
WriteLE32((uint8_t*)&ssSend[CMessageHeader::MESSAGE_SIZE_OFFSET], nSize);