Hi,

I'm working with the qpid cpp messaging dotnet client. A quick review: user 
programs are in a .NET managed language, say C#. They refer to an Interop DLL 
that connects them to the unmanaged qpid messaging layer built by qpid/cpp.

Running under debug things are fine. However, when I switch to Release or 
RelWithDebInfo, the qpid messaging DLL functions crash in the function prologue 
while it is trying to install it's exception handler. I've reproduced that 
failing call chain below. It acts like the FS:[0] chain is read-only.

>From reading John Robbins I suspect that default exception handling being 
>synchronous in Debug and asynchronous in Release may be an issue but I can't 
>pinpoint it. All the qpid messaging dlls are linked the same (/EHsc, 
>Multi-threaded DLL) for Debug and Release. In Debug mode one can step through 
>writing to FS:[0] just fine.

I'd appreciate some discussion.

Regards,
Chuck

C# code
=======

    connection = new Connection(broker);

C++ Binding DLL
===============

    Connection::Connection(System::String ^ url) :
        connectionp(new 
::qpid::messaging::Connection(QpidMarshal::ToNative(url)))
    {
    }

Qpid Messaging DLL
==================

qpid::messaging::Connection::Connection:

  6264E580  push        0FFFFFFFFh 
  6264E582  push        626841EBh 
  6264E587  mov         eax,dword ptr fs:[00000000h] 
  6264E58D  push        eax  
  6264E58E  push        ecx  
  6264E58F  push        esi  
  6264E590  mov         eax,dword ptr [___security_cookie (626A92D0h)] 
  6264E595  xor         eax,esp 
  6264E597  push        eax  
  6264E598  lea         eax,[esp+0Ch] 
  6264E59C  mov         dword ptr fs:[00000000h],eax        <--- fails here
  6264E5A2  mov         esi,ecx 
  6264E5A4  push        1F8h 
  6264E5A9  mov         dword ptr [esi],0 
  6264E5AF  call        operator new (62682202h) 

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:[email protected]

Reply via email to