rem: { for (fp = ip->flist; fp; fp = q) { q = fp->next;
add: { for (fp = ip->flist; fp; fp = fq) { fq = fp->next;
context: soap_free_iht(struct soap *soap){ register int i;  register struct soap_ilist *ip, *p;  register struct soap_flist *fp, *q;  DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Free ID hashtable\n"));  for (i = 0; i < SOAP_IDHASH; i++)  { for (ip = soap->iht[i]; ip; ip = p)    { for (fp = ip->flist; fp; fp = q)      { q = fp->next;        SOAP_FREE(fp);      }      p = ip->next;      SOAP_FREE(ip);    }    soap->iht[i] = NULL;  }}