commit 0f5886b8569bc1555b212fcecdfb1fb27c08d0f2
Author: Jean-Marc Lasgouttes <[email protected]>
Date:   Tue Nov 10 18:42:24 2015 +0100

    Disable LFUN_LAYOUT when layout cannot be found
    
    Fixes bug #8077

diff --git a/src/Text3.cpp b/src/Text3.cpp
index 8efec47..9edda1b 100644
--- a/src/Text3.cpp
+++ b/src/Text3.cpp
@@ -3108,13 +3108,12 @@ bool Text::getStatus(Cursor & cur, FuncRequest const & 
cmd,
                break;
 
        case LFUN_LAYOUT: {
-               enable = !cur.inset().forcePlainLayout();
-
+               DocumentClass const & tclass = 
cur.buffer()->params().documentClass();
                docstring layout = cmd.argument();
-               if (layout.empty()) {
-                       DocumentClass const & tclass = 
cur.buffer()->params().documentClass();
+               if (layout.empty())
                        layout = tclass.defaultLayoutName();
-               }
+               enable = !cur.inset().forcePlainLayout() && 
tclass.hasLayout(layout);
+
                flag.setOnOff(layout == cur.paragraph().layout().name());
                break;
        }

Reply via email to