return NS_OK;
SectionData sd(aFrameList); if (sd.HasABlock()) {  nsFrameList section1, section2, section3; sd.SplitFrameList(section1, section2, section3);  nsIFrame* prevFrame = aPrevFrame;   if (section1.NotEmpty()) { nsIFrame* newPrevFrame = section1.LastChild(); rv = InsertInlineFrames(aPresContext, aPresShell, prevFrame, section1.FirstChild()); prevFrame = newPrevFrame; }   if (NS_SUCCEEDED(rv)) { nsIFrame* newPrevFrame = section2.LastChild(); rv = InsertBlockFrames(aPresContext, aPresShell, prevFrame, section2.FirstChild()); prevFrame = newPrevFrame; }   if (NS_SUCCEEDED(rv) && section3.NotEmpty()) { rv = InsertInlineFrames(aPresContext, aPresShell, prevFrame, section3.FirstChild()); } } else {  rv = InsertInlineFrames(aPresContext, aPresShell, aPrevFrame, aFrameList); }  return rv;
nsInlineFrame::InsertFrames(nsIAtom*        aListName,                            nsIFrame*       aPrevFrame,                            nsIFrame*       aFrameList){  if (nsnull != aListName) {#ifdef IBMBIDI    if (aListName != nsLayoutAtoms::nextBidi)#endif    return NS_ERROR_INVALID_ARG;  }  if (aFrameList) {    // Insert frames after aPrevFrame    mFrames.InsertFrames(this, aPrevFrame, aFrameList);#ifdef IBMBIDI    if (nsnull == aListName)#endif    // Ask the parent frame to reflow me.    ReflowDirtyChild(GetPresContext()->PresShell(), nsnull);  }  return NS_OK;}