Re: [reSIProcate] DUM Dialog.cxx Erro Code
- From: "maodonghu" <hhmmdd@xxxxxxx>
- Date: Tue, 6 Feb 2007 17:17:52 +0800
Hi, fancy_xiao
I think It will throw exception if delete same pointer twice.
> Hello:
>
>Dialog::~Dialog()
>{
> DebugLog ( <<"Dialog::~Dialog() ");
>
> mDestroying = true;
>
> while (!mClientSubscriptions.empty())
> {
> delete *mClientSubscriptions.begin();
> }
> while (!mServerSubscriptions.empty())
> {
> delete *mServerSubscriptions.begin();
> }
>
> delete mInviteSession;
> mDialogSet.mDialogs.erase(this->getId());
> delete mAppDialog;
> if(!mReUseDialogSet)
> {
> mDialogSet.possiblyDie();
> }
>}
>
>in this function;
>
> while (!mClientSubscriptions.empty())
> {
> delete *mClientSubscriptions.begin();
> }
> while (!mServerSubscriptions.empty())
> {
> delete *mServerSubscriptions.begin();
> }
>
>must change to :
> while (!mClientSubscriptions.empty())
> {
> delete *mClientSubscriptions.begin();
> mClientSubscriptions.pop_front();
> }
> while (!mServerSubscriptions.empty())
> {
> delete *mServerSubscriptions.begin();
> mServerSubscriptions.pop_front();
> }
>
>otherwise it should be a dead loop!
>
>--------------
>fancy_xiao
>2007-02-06
>
>_______________________________________________
>resiprocate-devel mailing list
>resiprocate-devel@xxxxxxxxxxxxxxxxxxxx
>https://list.resiprocate.org/mailman/listinfo/resiprocate-devel
>
maodonghu
hhmmdd@xxxxxxx
2007-02-06