rem: if (soap->mode & SOAP_ENC_DIME)
add: if ((soap->mode & SOAP_ENC_DIME) && !(soap->mode & SOAP_ENC_MTOM))
context: soap_envelope_begin_out(struct soap *soap){#ifndef WITH_LEANER  size_t n = 0;  if ((soap->mode & SOAP_ENC_MIME) && soap->mime.boundary && soap->mime.start)  { const char *s;    if (soap->mode & SOAP_ENC_DIME)      s = "application/dime";    else if (soap->version == 2)      s = "application/soap+xml; charset=utf-8";    else      s = "text/xml; charset=utf-8";    sprintf(soap->tmpbuf, "--%s\r\nContent-Type: %s\r\nContent-Transfer-Encoding: binary\r\nContent-ID: %s\r\n\r\n", soap->mime.boundary, s, soap->mime.start);    n = strlen(soap->tmpbuf);    if (soap_send_raw(soap, soap->tmpbuf, n))      return soap->error;  }  if (soap->mode & SOAP_IO_LENGTH)    soap->dime.size = soap->count;	/* DIME in MIME correction */  if (!(soap->mode & SOAP_IO_LENGTH) && (soap->mode & SOAP_ENC_DIME))  { if (soap_putdimehdr(soap))      return soap->error;  }#endif  soap->part = SOAP_IN_ENVELOPE;  return soap_element_begin_out(soap, "SOAP-ENV:Envelope", 0, NULL);}