diff --git a/src/Paragraph.cpp b/src/Paragraph.cpp index ec92fa21cf..22a75c7d19 100644 --- a/src/Paragraph.cpp +++ b/src/Paragraph.cpp @@ -1173,6 +1173,7 @@ void Paragraph::Private::latexInset(BufferParams const & bparams, && !textinset->text().isMainText() && inset->lyxCode() != BRANCH_CODE && !runparams.no_cprotect + && !inset->getLayout().noCProtect() : false; unsigned int count2 = basefont.latexWriteStartChanges(os, bparams, rp, running_font, diff --git a/src/insets/InsetText.cpp b/src/insets/InsetText.cpp index 5552d479be..73813d9ee3 100644 --- a/src/insets/InsetText.cpp +++ b/src/insets/InsetText.cpp @@ -500,7 +500,7 @@ void InsetText::latex(otexstream & os, OutputParams const & runparams) const // FIXME UNICODE // FIXME \protect should only be used for fragile // commands, but we do not provide this information yet. - if (!runparams.no_cprotect && hasCProtectContent(runparams.moving_arg)) { + if (!il.noCProtect() && !runparams.no_cprotect && hasCProtectContent(runparams.moving_arg)) { if (contains(runparams.active_chars, '^')) { // cprotect relies on ^ being on catcode 7 os << "\\begingroup\\catcode`\\^=7";