From: Juergen Spitzmueller Date: Fri, 28 Aug 2020 05:32:29 +0000 (+0200) Subject: Do not \protect label in subfloat caption (#11950) X-Git-Tag: lyx-2.4.0dev-acb2ca7b~270 X-Git-Url: https://git.lyx.org/gitweb/?a=commitdiff_plain;ds=sidebyside;h=3fc095e3bc226e854f6cd9882a4c9e9039374caf;p=features.git Do not \protect label in subfloat caption (#11950) --- diff --git a/src/insets/InsetFloat.cpp b/src/insets/InsetFloat.cpp index b0a48f2b31..24e06b548c 100644 --- a/src/insets/InsetFloat.cpp +++ b/src/insets/InsetFloat.cpp @@ -391,11 +391,11 @@ void InsetFloat::latex(otexstream & os, OutputParams const & runparams_in) const OutputParams rp = runparams_in; rp.moving_arg = true; + rp.inFloat = OutputParams::SUBFLOAT; os << getCaption(rp); os << '{'; // The main argument is the contents of the float. This is not a moving argument. rp.moving_arg = false; - rp.inFloat = OutputParams::SUBFLOAT; InsetText::latex(os, rp); os << "}"; diff --git a/src/insets/InsetLabel.cpp b/src/insets/InsetLabel.cpp index ec50d4feb6..2e80e26a83 100644 --- a/src/insets/InsetLabel.cpp +++ b/src/insets/InsetLabel.cpp @@ -334,7 +334,10 @@ void InsetLabel::latex(otexstream & os, OutputParams const & runparams_in) const if (runparams_in.postpone_fragile_stuff) runparams_in.post_macro += command; else { - if (runparams.moving_arg) + // protect label in moving argument (#9404), + // but not in subfloat caption (#11950) + if (runparams.moving_arg + && runparams.inFloat != OutputParams::SUBFLOAT) os << "\\protect"; os << command; }