Merge pull request #1117 from sipa/deadlockfix
authorPieter Wuille <pieter.wuille@gmail.com>
Tue, 17 Apr 2012 18:05:02 +0000 (11:05 -0700)
committerPieter Wuille <pieter.wuille@gmail.com>
Tue, 17 Apr 2012 18:05:02 +0000 (11:05 -0700)
Fix potential deadlock

src/main.cpp

index 16a1f34..46b409c 100644 (file)
@@ -2838,8 +2838,8 @@ bool ProcessMessages(CNode* pfrom)
 
 bool SendMessages(CNode* pto, bool fSendTrickle)
 {
-    {
-        LOCK(cs_main);
+    TRY_LOCK(cs_main, lockMain);
+    if (lockMain) {
         // Don't send anything until we get their version message
         if (pto->nVersion == 0)
             return true;