Index: src/text/ptbl/xp/pt_PT_InsertStrux.cpp =================================================================== RCS file: /cvsroot/abi/src/text/ptbl/xp/pt_PT_InsertStrux.cpp,v retrieving revision 1.36 diff -u -r1.36 pt_PT_InsertStrux.cpp --- src/text/ptbl/xp/pt_PT_InsertStrux.cpp 14 Feb 2003 00:42:41 -0000 1.36 +++ src/text/ptbl/xp/pt_PT_InsertStrux.cpp 30 May 2003 11:06:03 -0000 @@ -408,16 +408,10 @@ // this lets things like hitting two consecutive CR's and then comming // back to the first empty paragraph behave as expected. - if ((pf->getType()==pf_Frag::PFT_Strux) && - (fragOffset == pf->getLength())) + if ((pf->getType()==pf_Frag::PFT_Text) && (fragOffset == 0) && + (pf->getPrev()!=NULL) && (pf->getPrev()->getType()==pf_Frag::PFT_Strux)) { - pf_Frag_Strux * pfsPrev = static_cast(pf); - if (pfsPrev->getStruxType()==PTX_Block) - { - _insertFmtMarkAfterBlockWithNotify(pfsPrev,dpos,apFmtMark); - pf = pf->getNext(); - fragOffset = 0; - } + _insertFmtMarkAfterBlockWithNotify(pfsContainer,dpos,apFmtMark); } } @@ -464,7 +458,7 @@ // next we look backwards for an active FmtMark or Text span. pf_Frag * pfPrev; - if (fragOffset!=0) + if ((fragOffset!=0) || (pfCurrent->getType()==pf_Frag::PFT_Text)) pfPrev = pfCurrent; else if (pfCurrent->getLength()==0) pfPrev = pfCurrent;