[ 
https://issues.apache.org/jira/browse/QPID-2798?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Chuck Rolke updated QPID-2798:
------------------------------

    Attachment: crash-double-free-02.patch

Based at qpid\cpp\bindings\qpid\dotnet, this patch creates managed objects in a 
more rational way. 

Identified in comments as an 'unmanaged clone', a managed object constructor is 
given an unmanaged object. The unmanaged object is copied and wrapped in a new 
managed object maintaining the principle that now two managed objects reference 
the same unmanaged object.

Also:
  * csharp.map.sender and csharp.map.receiver get the target Address from a 
command line arg.
  * functions bool Receiver::Fetch(), and bool Receiver::Get() are temporarily 
removed.
  * Session copy constructor adds a missing copy of the parentConnection 
pointer.
  * Some stray debug code is deleted.

> C++ Messaging Client .NET binding fails to clone managed objects correctly
> --------------------------------------------------------------------------
>
>                 Key: QPID-2798
>                 URL: https://issues.apache.org/jira/browse/QPID-2798
>             Project: Qpid
>          Issue Type: Bug
>         Environment: A case where managed code asserts while creating a 
> managed object.
>            Reporter: Chuck Rolke
>         Attachments: crash-double-free-02.patch
>
>
> The specific case that failed was 
>   request = receiver.fetch();
>   address = request.ReplyTo;
>   sender = session.CreateSender(address);
> The bug occurs during the cloning of the Address object from the 
> request.ReplyTo. After that line of code there are two managed objects that 
> have pointers to the same unmanaged object. When the CreateSender function 
> asserts then the process will get an accvio during shutdown.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscr...@qpid.apache.org

Reply via email to