if (data.First() != '=') continue;
PRUnichar q = *iter; if (q != '"' && q != '\'') { start = iter; iter = end; continue; }
nsXMLProcessingInstruction::GetAttrValue(const char *aAttr, nsString& aValue){  nsAutoString data;  mInner.GetData(data);  while (1) {    aValue.Truncate();    PRInt32 pos = data.Find(aAttr);    if (pos < 0)      return PR_FALSE;    // Cut off data up to the end of the attr string    data.Cut(0, pos + nsCRT::strlen(aAttr));    data.CompressWhitespace();    if (data.First() != '=')      continue;    // Cut off the '='    data.Cut(0, 1);    data.CompressWhitespace();    PRUnichar q = data.First();    if (q != '"' && q != '\'')      continue;    // Cut off the first quote character    data.Cut(0, 1);    pos = data.FindChar(q);    if (pos < 0)      return PR_FALSE;    data.Left(aValue, pos);    return PR_TRUE;  }  return PR_FALSE;}