In the last paragraph as I parse,
outputfile->text->cursor.par->size returns the wrong value. It returns
a value of 20 rather than 16, in particular. It returns the correct
value for other size. So the sequence
cout <<"size "<<outputfile->text->cursor.par->size<<"\n";
while ((outputfile->text->cursor.par
->GetChar(outputfile->text->cursor.pos)!='<')
&& (outputfile->text->cursor.pos
< outputfile->text->cursor.par->size)){
cout <<"pos"<<outputfile->text->cursor.pos
<<" "<<outputfile->text->cursor.par
->GetChar(outputfile->text->cursor.pos)
<<"\n";
outputfile->text->cursor.pos++;
}
yields
size 20
pos0 f
pos1 o
pos2 u
pos3 r
pos4 t
pos5 h
pos6
pos7 p
pos8 a
pos9 r
pos10 a
pos11 g
pos12 r
pos13 a
pos14 p
pos15 h
pos16 .
pos17 F
ERROR (LyXParagraph::GetChar): position does not exist.
ERROR (LyXParagraph::GetChar): position does not exist.
pos18 F
ERROR (LyXParagraph::GetChar): position does not exist.
ERROR (LyXParagraph::GetChar): position does not exist.
pos19 F
ERROR (LyXParagraph::GetChar): position does not exist.
--