commit 5cfd2569742985e607da0ead5f549483a294fba6
Author: Juergen Spitzmueller <[email protected]>
Date: Sun Dec 30 18:27:28 2018 +0100
When checking inset activity status, also check containing insets
which could be deteled
---
src/insets/InsetLabel.cpp | 12 +++++++++++-
1 files changed, 11 insertions(+), 1 deletions(-)
diff --git a/src/insets/InsetLabel.cpp b/src/insets/InsetLabel.cpp
index f6538f4..c3bf43f 100644
--- a/src/insets/InsetLabel.cpp
+++ b/src/insets/InsetLabel.cpp
@@ -148,7 +148,17 @@ void InsetLabel::updateBuffer(ParIterator const & par,
UpdateType utype)
// Check if this one is deleted (ct)
Paragraph const & para = par.paragraph();
- bool const active = !para.isDeleted(par.pos());
+ bool active = !para.isDeleted(par.pos());
+ // If not, check whether we are in a deleted inset
+ if (active) {
+ for (size_type sl = 0 ; sl < par.depth() ; ++sl) {
+ Paragraph const & outer_par = par[sl].paragraph();
+ if (outer_par.isDeleted(par[sl].pos())) {
+ active = false;
+ break;
+ }
+ }
+ }
if (buffer().activeLabel(label) && active) {
// Problem: We already have an active InsetLabel with the same
name!