nsIFrame* next = nsnull; child->GetNextSibling(&next);
nsCOMPtr<nsIDOMNode> next; child->GetNextSibling(getter_AddRefs(next));
PRBool nsFrameTreeWalker::GetFirstChild(){  //printf("Get first\n");  if (!mFrame)    return PR_FALSE;  // get first child  nsIFrame* child = nsnull;  mFrame->FirstChild(mPresContext, nsnull, &child);  while(child)  {     mFrame = child;    mDepth++;    // if the child has a content node done    if (mDepth == mDepthToFind)    {      if (IsSameContent())        return PR_TRUE;      else {        mFrame = nsnull;        return PR_FALSE;      }    } else if (GetFirstChild()) // otherwise try first child      return PR_TRUE;    mDepth--;    // get next sibling    nsIFrame* next = nsnull;    child->GetNextSibling(&next);    child = next;  }  // fail  mFrame = nsnull;  mDepth = -1;  return PR_FALSE;}