nsCOMPtr<nsIContent> startContent; frame->GetContent(getter_AddRefs(startContent));
nsListBoxObject::GetListBoxBody(){  NS_NAMED_LITERAL_STRING(listboxbody, "listboxbody");  nsCOMPtr<nsISupports> supp;  GetPropertyAsSupports(listboxbody.get(), getter_AddRefs(supp));  if (supp) {    nsCOMPtr<nsIListBoxObject> body(do_QueryInterface(supp));    return body;  }  nsIFrame* frame = GetFrame();  if (!frame)    return nsnull;  // Iterate over our content model children looking for the body.  nsCOMPtr<nsIContent> startContent;  frame->GetContent(getter_AddRefs(startContent));  nsCOMPtr<nsIContent> content;  FindBodyContent(startContent, getter_AddRefs(content));  // this frame will be a nsGFXScrollFrame  mPresShell->GetPrimaryFrameFor(content, &frame);  if (!frame)     return nsnull;  // this frame will be a nsListBoxScrollPortFrame  nsIFrame* scrollPort = nsnull;  frame->FirstChild(nsnull, nsnull, &scrollPort);  if (!scrollPort)     return nsnull;  // this frame will be the one we want  nsIFrame* yeahBaby = nsnull;  scrollPort->FirstChild(nsnull, nsnull, &yeahBaby);  if (!yeahBaby)     return nsnull;  // It's a frame. Refcounts are irrelevant.  nsCOMPtr<nsIListBoxObject> body;  yeahBaby->QueryInterface(NS_GET_IID(nsIListBoxObject), getter_AddRefs(body));  SetPropertyAsSupports(listboxbody.get(), body);  return body;}