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

Re: [reSIProcate] Crash bug in the DnsSub.cxx and AresDns.cxx


Thanks for share, another function:

unsigned int
AresDns::getTimeTillNextProcessMS()
{
   struct timeval tv;
   tv.tv_sec = 1; tv.tv_usec = 0;

   ares_timeout(mChannel, NULL, &tv);
   return tv.tv_sec*1000 + tv.tv_usec / 1000;
}

You have added " tv.tv_sec = 1; tv.tv_usec = 0;", does this patch is necessary ?

Best regards,


On Tue, Dec 18, 2012 at 5:32 PM, Dmytro Bogovych <dmytro.bogovych@xxxxxxxxx> wrote:
I can confirm this.
My workaround:
https://dl.dropbox.com/u/16255670/AresDns.cxx


On Tue, Dec 18, 2012 at 11:06 AM, Karlsson <boost.regex@xxxxxxxxx> wrote:
> In the 1.8.5, I got the crashed often, once I debug it, I think there is a
> bug:
>
> In the DnsSub.cxx:
>
> DnsStub::~DnsStub()
> {
>    for (set<Query*>::iterator it = mQueries.begin(); it != mQueries.end();
> ++it)
>    {
>       delete *it;
>    }
>
>    setPollGrp(0);
>    delete mDnsProvider;
> }
>
> The parameter of  "setPollGrp" function is 0, so in the
> AresDns::setPollGrp(FdPollGrp *grp) function, if the
> mPollItems is not empty, will cause AresDnsPollItem::resetPollGrp crash.
>
>
>
>
>
>
>
>
> _______________________________________________
> resiprocate-devel mailing list
> resiprocate-devel@xxxxxxxxxxxxxxx
> https://list.resiprocate.org/mailman/listinfo/resiprocate-devel