< Previous by Date Date Index Next by Date >
< Previous in Thread Thread Index Next in Thread >

RE: [reSIProcate] fault during shutdown in InviteSessionCreator.cxx


delete 0; //is a legal c++ command which doesn't do anything bad.

-----Original Message-----
From: resiprocate-devel-bounces@xxxxxxxxxxxxxxxxxxx
[mailto:resiprocate-devel-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of Justin
Matthews
Sent: Monday, January 17, 2005 1:40 PM
To: 'Scott Godin'; resiprocate-devel@xxxxxxxxxxxxxxxxxxx
Subject: RE: [reSIProcate] fault during shutdown in InviteSessionCreator.cxx

This will still fail because the destructor will try to delete a null
pointer in the scenario I described.  A check for null is required before
deleting.  Thanks.

Justin

-----Original Message-----
From: Scott Godin [mailto:slgodin@xxxxxxxxxxxx] 
Sent: Monday, January 17, 2005 6:10 AM
To: 'justin.matthews@xxxxxxx'; resiprocate-devel@xxxxxxxxxxxxxxxxxxx
Subject: RE: [reSIProcate] fault during shutdown in InviteSessionCreator.cxx

I just commited a fix - thanks.

Scott

-----Original Message-----
From: justin.matthews@xxxxxxx [mailto:justin.matthews@xxxxxxx] 
Sent: Friday, January 14, 2005 7:58 PM
To: resiprocate-devel@xxxxxxxxxxxxxxxxxxx
Subject: [reSIProcate] fault during shutdown in InviteSessionCreator.cxx

Hello,  
        Dum will crash when calling shutdown if no offer has been created
for an initial dialog set.  This was tested by sending an INVITE request to
nowhere and then immediately shutting down the stack.  Could someone please
update svn?  
        The crash occurs in the destructor:

InviteSessionCreator::~InviteSessionCreator()
{
        delete mInitialOffer;
}

I fixed this by initializing mInitialOffer to NULL on construction and
adding the following on destruction:
--------------
InviteSessionCreator::InviteSessionCreator(DialogUsageManager& dum, 
                                           const NameAddr& target, 
                                           const NameAddr& from,
                                           const SdpContents* initial, 
                                           ServerSubscriptionHandle
serverSub)
   : BaseCreator(dum),
     mState(Initialized),
     mServerSub(serverSub),
     mInitialOffer(NULL)
{
---------------------
InviteSessionCreator::~InviteSessionCreator()
{       
    if( NULL != mInitialOffer )
    {
        delete mInitialOffer;
        mInitialOffer = NULL;
    }
}
----------------

Thanks,

Justin Matthews

_______________________________________________
resiprocate-devel mailing list
resiprocate-devel@xxxxxxxxxxxxxxxxxxx
https://list.sipfoundry.org/mailman/listinfo/resiprocate-devel

_______________________________________________
resiprocate-devel mailing list
resiprocate-devel@xxxxxxxxxxxxxxxxxxx
https://list.sipfoundry.org/mailman/listinfo/resiprocate-devel