From 3c9fa270b6327eaa967c8fcd1d5d0a04a2674f7f Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Mon, 23 Nov 2009 14:23:13 -0800 Subject: [PATCH] msgr: fix bad unlock on tcp_write error --- src/msg/SimpleMessenger.cc | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/msg/SimpleMessenger.cc b/src/msg/SimpleMessenger.cc index 6eda255824b38..7e9eb34109660 100644 --- a/src/msg/SimpleMessenger.cc +++ b/src/msg/SimpleMessenger.cc @@ -814,12 +814,12 @@ int SimpleMessenger::Pipe::accept() rc = tcp_write(sd, (char*)&reply, sizeof(reply)); if (rc < 0) - goto fail; + goto fail_unlocked; if (reply.authorizer_len) { rc = tcp_write(sd, authorizer_reply.c_str(), authorizer_reply.length()); if (rc < 0) - goto fail; + goto fail_unlocked; } lock.Lock(); @@ -832,8 +832,6 @@ int SimpleMessenger::Pipe::accept() return 0; // success. - fail: - rank->lock.Unlock(); fail_unlocked: lock.Lock(); state = STATE_CLOSED; -- 2.39.5