const adns_rr_addr *sp, int slen)
{
size_t drrsz = *dlen*rrsz, srrsz = slen*rrsz;
- byte *p = adns__alloc_interim(qu, drrsz + srrsz);
+ byte *p;
+
+ /* if (!slen) return adns_s_ok; */
+ p = adns__alloc_interim(qu, drrsz + srrsz);
if (!p) R_NOMEM;
if (*dlen) {
memcpy(p, *dp, drrsz);
memcpy(qu->t.addr.rrty, rrty, nrrty*sizeof(*rrty));
qu->t.addr.nrrty = nrrty;
- addr_subqueries(qu, now, parent->query_dgram, parent->query_dglen);
+ addr_subqueries(qu, now, qu->query_dgram, qu->query_dglen);
*query_r = qu;
return adns_s_ok;
}