NS_ADDREF(aForm);
MakeContentObject(nsHTMLTag aNodeType, nsINodeInfo *aNodeInfo,                  nsGenericHTMLElement* aForm,                  PRBool aInsideNoXXXTag, PRBool aFromParser){  if (aNodeType == eHTMLTag_form) {    if (aForm) {      // the form was already created      return aForm;    }    nsGenericHTMLElement* result = NS_NewHTMLFormElement(aNodeInfo);    NS_IF_ADDREF(result);    return result;  }  contentCreatorCallback cb = sContentCreatorCallbacks[aNodeType];  NS_ASSERTION(cb != NS_NewHTMLNOTUSEDElement,               "Don't know how to construct tag element!");  nsGenericHTMLElement* result = cb(aNodeInfo, aFromParser);  if (!result) {    return nsnull;  }  NS_ADDREF(result);  if (aForm && !aInsideNoXXXTag) {    switch (aNodeType) {    case eHTMLTag_button:    case eHTMLTag_fieldset:    case eHTMLTag_label:    case eHTMLTag_legend:    case eHTMLTag_object:    case eHTMLTag_input:    case eHTMLTag_select:    case eHTMLTag_textarea:      SetForm(result, aForm);      break;    default:      break;    }  }  return result;}