From 5cfd2569742985e607da0ead5f549483a294fba6 Mon Sep 17 00:00:00 2001 From: Juergen Spitzmueller Date: Sun, 30 Dec 2018 18:27:28 +0100 Subject: [PATCH] When checking inset activity status, also check containing insets which could be deteled --- src/insets/InsetLabel.cpp | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/insets/InsetLabel.cpp b/src/insets/InsetLabel.cpp index f6538f4c45..c3bf43f117 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! -- 2.39.5