summaryrefslogtreecommitdiff
path: root/cpp/bindings/qpid/dotnet/src/Sender.h
diff options
context:
space:
mode:
authorTed Ross <tross@apache.org>2010-08-20 13:58:20 +0000
committerTed Ross <tross@apache.org>2010-08-20 13:58:20 +0000
commit5269fc0e04984b2d196d5eaf96e206e034d21184 (patch)
tree2c5c273773ce707de712e7691a00003639c0f281 /cpp/bindings/qpid/dotnet/src/Sender.h
parentfdfefb5e9721cb85d70a81928044f61b7f48ccf3 (diff)
downloadqpid-python-5269fc0e04984b2d196d5eaf96e206e034d21184.tar.gz
QPID-2798 - C++ Messaging Client .NET binding fails to clone managed objects correctly
Patch from Chuck Rolke git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@987510 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/bindings/qpid/dotnet/src/Sender.h')
-rw-r--r--cpp/bindings/qpid/dotnet/src/Sender.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/cpp/bindings/qpid/dotnet/src/Sender.h b/cpp/bindings/qpid/dotnet/src/Sender.h
index 670f11fe30..e8ba227c06 100644
--- a/cpp/bindings/qpid/dotnet/src/Sender.h
+++ b/cpp/bindings/qpid/dotnet/src/Sender.h
@@ -59,7 +59,8 @@ namespace Messaging {
void Cleanup();
public:
- Sender(::qpid::messaging::Sender * s,
+ // unmanaged clone
+ Sender(const ::qpid::messaging::Sender & s,
Session ^ sessRef);
// copy constructor
@@ -77,7 +78,8 @@ namespace Messaging {
}
else
{
- delete senderp;
+ if (NULL != senderp)
+ delete senderp;
senderp = new ::qpid::messaging::Sender(
*(const_cast<Sender %>(rhs).NativeSender));
parentSession = rhs.parentSession;