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

Re: [reSIProcate] Memory leaks


Dimitry,

You may try to add the following destructor in
TimerQueue.cxx:

//xkd-2004-11-4
TimeLimitTimerQueue::~TimeLimitTimerQueue()
{
   // delete the message associated with the timer
   for (std::multiset<Timer>::iterator i =  
mTimers.begin(); i != mTimers.end(); ++i)
  {   
        if (i->getMessage())
             delete i->getMessage();
  }
}

kaiduan

 --- Dmitry Semyonov <dsemyonov@xxxxxxx> wrote: 
> Hello!
> 
> I see several memory leaks with the r3746 version of
> reSIProcate
> on Windows platform:
> 
> 1. It seems ares_destroy() is never called, although
> it has to be, 
> according to the code. Probably, this is due to
> misconfiguration of my 
> project settings... Does anybody else see this leak?
> 
> 2. A message created inside the following function
> is never deleted.
> 
> Message*
> DumTimeout::clone() const
> {
>    return new DumTimeout(*this);
> }
> 
> The function is called from within
> 
> void
> SipStack::postMS(const ApplicationMessage& message,
> unsigned int ms)
> {
>    assert(!mShuttingDown);
>    Message* toPost = message.clone();
>    Lock lock(mAppTimerMutex);
>    mAppTimers.add(Timer(ms, toPost));
> }
> 
> and the message is added then to some kind of
> TimerQueue.
> 
> Can someone familiar with the above code look into
> this problem?
> TIA
> 
> -- 
> ...Bye..Dmitry.
> _______________________________________________
> resiprocate-devel mailing list
> resiprocate-devel@xxxxxxxxxxxxxxxxxxx
>
https://list.sipfoundry.org/mailman/listinfo/resiprocate-devel
>  

______________________________________________________________________ 
Post your free ad now! http://personals.yahoo.ca