From: Juergen Spitzmueller Date: Sat, 29 Dec 2018 12:36:39 +0000 (+0100) Subject: Fix some parsing glitches in Autonest and IsAutonestedBy X-Git-Tag: lyx-2.4.0dev-acb2ca7b~2782 X-Git-Url: https://git.lyx.org/gitweb/?a=commitdiff_plain;h=da273a944f4b720b1da5fd737ededc2f2129e9bc;p=features.git Fix some parsing glitches in Autonest and IsAutonestedBy Layouts can have spaces, underlines (that must be read as spaces, and be enquoted) Candidate for stable --- diff --git a/src/Layout.cpp b/src/Layout.cpp index 4f3dc14268..a109c1d931 100644 --- a/src/Layout.cpp +++ b/src/Layout.cpp @@ -605,25 +605,25 @@ bool Layout::readIgnoreForcelocal(Lexer & lex, TextClass const & tclass) } case LT_AUTONESTS: { - docstring const autonest = - subst(subst(subst(lex.getLongString(from_ascii("EndAutoNests")), - from_ascii("\n"), docstring()), - from_ascii(" "), docstring()), - from_ascii("\t"), docstring()); + docstring autonest = lex.getLongString(from_ascii("EndAutoNests")); + autonest = subst(autonest, from_ascii("\n"), docstring()); + autonest = subst(autonest, from_ascii("\t"), docstring()); + autonest = subst(autonest, from_ascii("\""), docstring()); + autonest = subst(autonest, '_', ' '); vector const autonests = - getVectorFromString(autonest); + getVectorFromString(autonest, from_ascii(","), false, true); autonests_.insert(autonests.begin(), autonests.end()); break; } case LT_AUTONESTEDBY: { - docstring const autonest = - subst(subst(subst(lex.getLongString(from_ascii("EndIsAutoNestedBy")), - from_ascii("\n"), docstring()), - from_ascii(" "), docstring()), - from_ascii("\t"), docstring()); + docstring autonest = lex.getLongString(from_ascii("EndIsAutoNestedBy")); + autonest = subst(autonest, from_ascii("\n"), docstring()); + autonest = subst(autonest, from_ascii("\t"), docstring()); + autonest = subst(autonest, from_ascii("\""), docstring()); + autonest = subst(autonest, '_', ' '); vector const autonests = - getVectorFromString(autonest); + getVectorFromString(autonest, from_ascii(","), false, true); autonested_by_.insert(autonests.begin(), autonests.end()); break; }