Do not step counters in deleted material.

Also, display the counter as "#" if the inset is deleted.

(cherry picked from commit 200064e9a4)
This commit is contained in:
Richard Kimberly Heck 2018-05-02 23:56:41 -04:00
parent a05da2121c
commit 51239977c5
2 changed files with 15 additions and 6 deletions

View File

@ -146,9 +146,13 @@ void InsetFlex::updateBuffer(ParIterator const & it, UpdateType utype)
docstring const & count = il.counter();
bool const have_counter = cnts.hasCounter(count);
if (have_counter) {
Paragraph const & par = it.paragraph();
if (!par.isDeleted(it.pos())) {
cnts.step(count, utype);
custom_label += ' ' +
cnts.theCounter(count, it.paragraph().getParLanguage(bp)->code());
} else
custom_label += ' ' + from_ascii("#");
}
setLabel(custom_label);

View File

@ -84,9 +84,14 @@ void InsetFoot::updateBuffer(ParIterator const & it, UpdateType utype)
InsetLayout const & il = getLayout();
docstring const & count = il.counter();
custom_label_ = translateIfPossible(il.labelstring());
Paragraph const & par = it.paragraph();
if (!par.isDeleted(it.pos())) {
if (cnts.hasCounter(count))
cnts.step(count, utype);
custom_label_ += ' ' + cnts.theCounter(count, lang->code());
} else
custom_label_ += ' ' + from_ascii("#");
setLabel(custom_label_);
InsetCollapsible::updateBuffer(it, utype);