diff options
| author | Alan Conway <aconway@apache.org> | 2013-05-03 03:25:42 +0000 |
|---|---|---|
| committer | Alan Conway <aconway@apache.org> | 2013-05-03 03:25:42 +0000 |
| commit | c6c6b897f76f3d5711798260d24a3a0df7032e80 (patch) | |
| tree | 1d442fd006c2cf8eb0dc81fe045cd5919722ca94 /qpid/cpp/src | |
| parent | ba9f80714ae4870c01b450b4f89cfa87d51a6827 (diff) | |
| download | qpid-python-c6c6b897f76f3d5711798260d24a3a0df7032e80.tar.gz | |
QPID-4775: Fix core dumps in HA tests introduced in r1478418
After this revision several of the tests in ha_tests.py were core dumping with 0
pointers in FieldTable entries in Queue::settings. It's not clear why the core
dumps were occuring nor why this patch fixes them. This patch eliminates a call
to the QueueSettings copy constructor, so something fishy going is on there.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1478632 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/cpp/src')
| -rw-r--r-- | qpid/cpp/src/qpid/broker/Broker.cpp | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/qpid/cpp/src/qpid/broker/Broker.cpp b/qpid/cpp/src/qpid/broker/Broker.cpp index bf296696cf..94583aa507 100644 --- a/qpid/cpp/src/qpid/broker/Broker.cpp +++ b/qpid/cpp/src/qpid/broker/Broker.cpp @@ -1197,13 +1197,12 @@ void Broker::deleteQueue(const std::string& name, const std::string& userId, if (queue) { if (acl) { std::map<acl::Property, std::string> params; - const qpid::broker::QueueSettings settings = queue->getSettings(); boost::shared_ptr<Exchange> altEx = queue->getAlternateExchange(); params.insert(make_pair(acl::PROP_ALTERNATE, (altEx) ? altEx->getName() : "" )); params.insert(make_pair(acl::PROP_DURABLE, queue->isDurable() ? _TRUE : _FALSE)); params.insert(make_pair(acl::PROP_EXCLUSIVE, queue->hasExclusiveOwner() ? _TRUE : _FALSE)); params.insert(make_pair(acl::PROP_AUTODELETE, queue->isAutoDelete() ? _TRUE : _FALSE)); - params.insert(make_pair(acl::PROP_POLICYTYPE, settings.dropMessagesAtLimit ? "ring" : "reject")); + params.insert(make_pair(acl::PROP_POLICYTYPE, queue->getSettings().dropMessagesAtLimit ? "ring" : "reject")); if (!acl->authorise(userId,acl::ACT_DELETE,acl::OBJ_QUEUE,name,¶ms) ) throw framing::UnauthorizedAccessException(QPID_MSG("ACL denied queue delete request from " << userId)); |
