nsTableFrame::CollectRows(nsIPresContext* aPresContext, nsIFrame*       aFrame,
nsTableFrame::CollectRows(nsIFrame*       aFrame,
nsTableFrame::CollectRows(nsIPresContext* aPresContext,                          nsIFrame*       aFrame,                          nsVoidArray&    aCollection){  if (!aFrame) return 0;  PRInt32 numRows = 0;  nsTableRowGroupFrame* rgFrame = GetRowGroupFrame(aFrame);  if (rgFrame) {    nsIFrame* childFrame = nsnull;    rgFrame->FirstChild(aPresContext, nsnull, &childFrame);    while (childFrame) {      nsIAtom* childType;      childFrame->GetFrameType(&childType);      if (nsLayoutAtoms::tableRowFrame == childType) {        aCollection.AppendElement(childFrame);        numRows++;      }      else {        numRows += CollectRows(aPresContext, childFrame, aCollection);      }      NS_IF_RELEASE(childType);      childFrame->GetNextSibling(&childFrame);    }  }  return numRows;}