rem: { register struct soap_nlist *np; register struct soap_attribute *tp; register struct Namespace *ns;
add: { register struct Namespace *ns;
context: soap_free(struct soap *soap){ register struct soap_nlist *np;  register struct soap_attribute *tp;  register struct Namespace *ns;  DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Free namespace stack\n"));  while (soap->nlist)  { np = soap->nlist->next;    if (soap->nlist->ns)      SOAP_FREE(soap, soap->nlist->ns);    SOAP_FREE(soap, soap->nlist);    soap->nlist = np;  }  DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Free any remaining temp blocks\n"));  while (soap->blist)    soap_end_block(soap);  DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Free attributes\n"));  while (soap->attributes)  { tp = soap->attributes->next;    if (soap->attributes->value)      SOAP_FREE(soap, soap->attributes->value);    SOAP_FREE(soap, soap->attributes);    soap->attributes = tp;  }#ifdef WITH_FAST  if (soap->labbuf)    SOAP_FREE(soap, soap->labbuf);  soap->labbuf = NULL;  soap->lablen = 0;  soap->labidx = 0;#endif#ifndef WITH_NOIDREF  soap_free_pht(soap);  soap_free_iht(soap);#endif  ns = soap->local_namespaces;  if (ns)  { for (; ns->id; ns++)    { if (ns->out)      { if (soap->encodingStyle == ns->out)          soap->encodingStyle = SOAP_STR_EOS;        SOAP_FREE(soap, ns->out);        ns->out = NULL;      }      if (soap->encodingStyle == ns->ns)        soap->encodingStyle = SOAP_STR_EOS;    }    SOAP_FREE(soap, soap->local_namespaces);    soap->local_namespaces = NULL;  }}