if (line->mBounds.YMost() > aDirtyRect.y) {
nsBlockFrame::PaintChildren(nsIPresContext& aPresContext,                            nsIRenderingContext& aRenderingContext,                            const nsRect& aDirtyRect){  // Set clip rect so that children don't leak out of us  const nsStyleDisplay* disp = (const nsStyleDisplay*)    mStyleContext->GetStyleData(eStyleStruct_Display);  PRBool hidden = PR_FALSE;  if (NS_STYLE_OVERFLOW_HIDDEN == disp->mOverflow) {    aRenderingContext.PushState();    aRenderingContext.SetClipRect(nsRect(0, 0, mRect.width, mRect.height),                                  nsClipCombine_kIntersect);    hidden = PR_TRUE;  }  if ((nsnull == mPrevInFlow) && (nsnull != mBullet)) {    const nsStyleList* list;    GetStyleData(eStyleStruct_List, (const nsStyleStruct*&)list);    if (NS_STYLE_LIST_STYLE_POSITION_OUTSIDE == list->mListStylePosition) {      // Paint the bullet too      PaintChild(aPresContext, aRenderingContext, aDirtyRect, mBullet,                 PR_FALSE);    }  }  // Iterate the lines looking for lines that intersect the dirty rect  for (LineData* line = mLines; nsnull != line; line = line->mNext) {#if XXX    // Stop when we get to a line that's below the dirty rect    if (line->mBounds.y >= aDirtyRect.YMost()) {      break;    }#endif    // If the line overlaps the dirty rect then iterate the child frames    // and paint those frames that intersect the dirty rect#if XXX    if (line->mBounds.YMost() > aDirtyRect.y)#endif    {      nsIFrame* kid = line->mFirstChild;      for (PRUint16 i = 0; i < line->mChildCount; i++) {        PaintChild(aPresContext, aRenderingContext, aDirtyRect, kid, PR_TRUE);        kid->GetNextSibling(kid);      }    }  }  if (hidden) {    aRenderingContext.PopState();  }}