summaryrefslogtreecommitdiff
path: root/qpid/cpp/src/qpid/broker/Queue.h
diff options
context:
space:
mode:
authorAlan Conway <aconway@apache.org>2016-06-22 20:41:49 +0000
committerAlan Conway <aconway@apache.org>2016-06-22 20:41:49 +0000
commite1d9be1b3590c79a0b2a6b6ad4cd3e6a65877401 (patch)
treecde644dcbd8add2d60863e71bc9063604911fdb0 /qpid/cpp/src/qpid/broker/Queue.h
parentc3c3bc4016270dd75b4c6a1e6831408cd4a5d055 (diff)
downloadqpid-python-e1d9be1b3590c79a0b2a6b6ad4cd3e6a65877401.tar.gz
QPID-7306: Conditional compile mismatch in broker and common libs.
Removed _IN_QPID_BROKER compile definition: Inconsistently set for libqpidcommon (compiled .cpp files) and libqpidbroker (uses .h) files - The broker has a binary incompatible notion of what is in the library. It sort-of works by accident: - shared_ptr<T> only contains a T*, the mismatch is effectively doing reinterpret_cast<T*> - plain T* works for op->, but doesn't guarantee no concurrent deletes. - we create and destroy shared_ptr in libraries with _IN_QPID_BROKER set so we get cleanup, and no cores if we're lucky but there is limited protection from races. Was only used by management: - I think exposing non-shared ptr GetObject was a feature that never materialized, - if not we need a separate function or class for non-shared-ptr users. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1749781 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/cpp/src/qpid/broker/Queue.h')
0 files changed, 0 insertions, 0 deletions