X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Ftext2.C;h=673287fbbb595796f0fedb4242fbf7cb15b9ebde;hb=3c851f1f7951f3a24b57826f3e580e4318b5e6c4;hp=5f2b91d77f2453524276ec76364b41963b26a788;hpb=b7665042ff81d577f2ad4fbfb3a2bfbc5645bc7f;p=lyx.git diff --git a/src/text2.C b/src/text2.C index 5f2b91d77f..673287fbbb 100644 --- a/src/text2.C +++ b/src/text2.C @@ -440,7 +440,9 @@ void LyXText::setFont(LCursor & cur, LyXFont const & font, bool toggleall) // Don't use forwardChar here as ditend might have // pos() == lastpos() and forwardChar would miss it. - for (; dit != ditend; dit.forwardPos()) { + // Can't use forwardPos either as this descends into + // nested insets. + for (; dit != ditend; dit.forwardPosNoDescend()) { if (dit.pos() != dit.lastpos()) { LyXFont f = getFont(dit.paragraph(), dit.pos()); f.update(font, params.language, toggleall); @@ -791,6 +793,7 @@ void LyXText::setCounter(Buffer const & buf, pit_type pit) bool isOK = false; while (tmppit != end) { in = pars_[tmppit].inInset(); + // FIXME: in should be always valid. if (in && (in->lyxCode() == InsetBase::FLOAT_CODE || in->lyxCode() == InsetBase::WRAP_CODE)) {