if (token != NULL)
if ((token != NULL) && nsCRT::strncasecmp(token, "UTF-16", 6) && nsCRT::strncasecmp(token, "UTF-32", 6))
MimeInlineTextHTML_parse_line (char *line, PRInt32 length, MimeObject *obj){  MimeInlineTextHTML  *textHTML = (MimeInlineTextHTML *) obj;  if (!obj->output_p)     return 0;  if (!obj->options || !obj->options->output_fn)    return 0;  if (!textHTML->charset)  {    // First, try to detect a charset via a META tag!    if (PL_strncasestr(line, "META", length) &&         PL_strncasestr(line, "HTTP-EQUIV", length) &&         PL_strncasestr(line, "CONTENT", length) &&         PL_strncasestr(line, "CHARSET", length)         )     {       char *workLine = (char *)PR_Malloc(length + 1);      if (workLine)      {        nsCRT::memset(workLine, 0, length + 1);        PL_strncpy(workLine, line, length);        char *cp1 = PL_strncasestr(workLine, "CHARSET", length);        if (cp1)        {          char *cp = PL_strncasestr(cp1, "=", (length - (int)(cp1-workLine)));          if (cp) {            cp++;            char seps[]   = " \"\'";             char *token;             char* newStr;             token = nsCRT::strtok(cp, seps, &newStr);             if (token != NULL)               {                 textHTML->charset = nsCRT::strdup(token);               }           }        }        PR_FREEIF(workLine);      }      // Eat the META tag line that specifies CHARSET!      if (textHTML->charset)        return 0;    }  }  // Now, just write out the data...  return MimeObject_write(obj, line, length, PR_TRUE);}