On Wed Aug 22 09:12:24 EDT 2012, charles.fors...@gmail.com wrote: > for(n = 0; n < Maxdest; n++, qp->curdest++) > if (setdestoutns(qp->curdest, n) < 0) > > > On 22 August 2012 09:05, erik quanstrom <quans...@quanstro.net> wrote: > > > since qb->curdest is indirected, for example by setdestoutns, this must be > > a valid pointer to remain safe. > > > > only when the pointer is valid. I think cinap is right.
i don't think so. destck will still indirect it: if (qp->ndest > qp->curdest - p) { [...] qp->curdest = &qp->dest[j]; destsum(qp, j); } >> destck(qp->curdest); the definition if destck: static void destck(Dest *p) { assert(p); assert(p->magic == Destmagic); } you can argue that this is a mistake, but i'm sure there are others. so imho, this is not worth fixing. dns needs replacing. - erik