} else if (aAttribute == nsHTMLAtoms::src) {   nsIImageFrame* imageFrame;  nsHTMLImageElement* self = NS_CONST_CAST(nsHTMLImageElement*, this); self->GetImageFrame(&imageFrame); if (!imageFrame) { aHint = NS_STYLE_HINT_FRAMECHANGE; }
nsHTMLImageElement::GetMappedAttributeImpact(const nsIAtom* aAttribute,                                             PRInt32 aModType,                                             nsChangeHint& aHint) const{  if ((aAttribute == nsHTMLAtoms::usemap) ||      (aAttribute == nsHTMLAtoms::ismap)  ||      (aAttribute == nsHTMLAtoms::align)) {    aHint = NS_STYLE_HINT_FRAMECHANGE;  }  else if (aAttribute == nsHTMLAtoms::src) {    // If 'src' changed and we don't have a real image frame,    // we need to cause a reframe.    nsIImageFrame* imageFrame;    // cast away |const| because the underlying interfaces don't use it.    nsHTMLImageElement* self = NS_CONST_CAST(nsHTMLImageElement*, this);    self->GetImageFrame(&imageFrame);    if (!imageFrame) {      aHint = NS_STYLE_HINT_FRAMECHANGE;    }  }  else if (!GetCommonMappedAttributesImpact(aAttribute, aHint)) {    if (!GetImageMappedAttributesImpact(aAttribute, aHint)) {      if (!GetImageBorderAttributeImpact(aAttribute, aHint)) {        aHint = NS_STYLE_HINT_CONTENT;      }    }  }  return NS_OK;}