commit d0a11cb8e2227d2b2932c9c71cd5ac476ed8c344
Author: Jean-Marc Lasgouttes <[email protected]>
Date:   Tue Apr 24 14:03:35 2018 +0200

    Redo metrics after cancelling macro mode
    
    When the cursor is inside a subscript that may become empty, metrics
    issues can happen. This patch fixes the issue, although it is not
    clear to see what the problem is.
    
    Still, requesting a metrics update also in the case where the macro
    mode is canceled makes sense.
    
    Fixes bug #11125.
    
    (cherry picked from commit 68ec34e60343a5dec9f32d60c79a2c0825b62d12)
---
 src/Cursor.cpp |    9 +++++----
 status.23x     |    3 +++
 2 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/src/Cursor.cpp b/src/Cursor.cpp
index 91df9d6..92c9bdd 100644
--- a/src/Cursor.cpp
+++ b/src/Cursor.cpp
@@ -1412,14 +1412,15 @@ bool Cursor::macroModeClose(bool cancel)
        --pos();
        cell().erase(pos());
 
-       // do nothing if the macro name is empty
-       if (s == "\\" || cancel)
-               return false;
-
        // trigger updates of macros, at least, if no full
        // updates take place anyway
        screenUpdateFlags(Update::Force);
 
+       // do nothing if the macro name is empty
+       if (s == "\\" || cancel) {
+               return false;
+       }
+
        docstring const name = s.substr(1);
        InsetMathNest * const in = inset().asInsetMath()->asNestInset();
        if (in && in->interpretString(*this, s))
diff --git a/status.23x b/status.23x
index 38395b2..af3b851 100644
--- a/status.23x
+++ b/status.23x
@@ -219,6 +219,9 @@ What's new
 - When adding a label in the first paragraph after a division (section,
   etc), use the label prefix for it (bug 10624).
 
+- Fix crash when canceling entry of macro name in a mathed subscript
+  (bug 11125).
+
 
 * INTERNALS
 

Reply via email to