diff options
| author | Kenneth Anthony Giusti <kgiusti@apache.org> | 2012-05-25 18:30:48 +0000 |
|---|---|---|
| committer | Kenneth Anthony Giusti <kgiusti@apache.org> | 2012-05-25 18:30:48 +0000 |
| commit | a2db316615b2ea92eb5ec00e3a1ef3887d097996 (patch) | |
| tree | 613d292dac02711ddd5957feb824b584f0eeb9c9 /qpid | |
| parent | 8d220fc5419fc5632b4da3cc146e38d191c52f85 (diff) | |
| download | qpid-python-a2db316615b2ea92eb5ec00e3a1ef3887d097996.tar.gz | |
NO-JIRA: eliminate dead code and potential null pointer dereference as found by Coverity
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1342759 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid')
| -rw-r--r-- | qpid/cpp/src/qpid/broker/Link.cpp | 42 |
1 files changed, 19 insertions, 23 deletions
diff --git a/qpid/cpp/src/qpid/broker/Link.cpp b/qpid/cpp/src/qpid/broker/Link.cpp index ab28c5b01f..e354b4e425 100644 --- a/qpid/cpp/src/qpid/broker/Link.cpp +++ b/qpid/cpp/src/qpid/broker/Link.cpp @@ -345,36 +345,32 @@ void Link::opened() { void Link::closed(int, std::string text) { - bool isClosing = false; - { - Mutex::ScopedLock mutex(lock); - QPID_LOG (info, "Inter-broker link disconnected from " << host << ":" << port << " " << text); + Mutex::ScopedLock mutex(lock); + QPID_LOG (info, "Inter-broker link disconnected from " << host << ":" << port << " " << text); - connection = 0; - if (state == STATE_OPERATIONAL) { + connection = 0; + + if (!hideManagement()) { + mgmtObject->set_connectionRef(qpid::management::ObjectId()); + if (state == STATE_OPERATIONAL && agent) { stringstream addr; addr << host << ":" << port; - if (!hideManagement() && agent) - agent->raiseEvent(_qmf::EventBrokerLinkDown(addr.str())); + agent->raiseEvent(_qmf::EventBrokerLinkDown(addr.str())); } + } - for (Bridges::iterator i = active.begin(); i != active.end(); i++) { - (*i)->closed(); - created.push_back(*i); - } - active.clear(); + for (Bridges::iterator i = active.begin(); i != active.end(); i++) { + (*i)->closed(); + created.push_back(*i); + } + active.clear(); - if (state != STATE_FAILED && state != STATE_PASSIVE) - { - setStateLH(STATE_WAITING); - if (!hideManagement()) - mgmtObject->set_lastError (text); - } - mgmtObject->set_connectionRef(qpid::management::ObjectId()); + if (state != STATE_FAILED && state != STATE_PASSIVE) + { + setStateLH(STATE_WAITING); + if (!hideManagement()) + mgmtObject->set_lastError (text); } - // Call destroy outside of the lock, don't want to be deleted with lock held. - if (isClosing) - destroy(); } // Called in connection IO thread, cleans up the connection before destroying Link |
