I have found a nice endless loop in LyXText::setCounter(). I will apply the attached fix unless somebody who is familiar with this code comes with a better solution (maybe even one that fixes the real problem ;-) )
Georg
--- lyx-1.4-clean/src/text2.C 2004-10-11 14:06:40.000000000 +0200 +++ lyx-1.4-cvs/src/text2.C 2004-10-31 17:39:47.000000000 +0100 @@ -831,7 +831,7 @@ void LyXText::setCounter(Buffer const & #if 0 /* I think this code is supposed to be useful when one has a caption * in a minipage in a figure inset. We need to go up to be able to see - * that the caption sould use "Figure" as label + * that the caption should use "Figure" as label */ else { Paragraph const * owner = &ownerPar(buf, in); @@ -840,6 +840,8 @@ void LyXText::setCounter(Buffer const & if (&pars_[tmppit] == owner) break; } +#else + ++tmppit; #endif }