commit fc6b8c64f8599df99098c371a70c4a3fc075be94
Author: Vincent van Ravesteijn <v...@lyx.org>
Date:   Fri Feb 7 17:14:36 2014 +0100

    Return true to indicate we might have invalidated the cursor
    
    If we don't do so, Cursor::notifyCursorLeavesOrEnters might continue with
    an invalidated cursor.
    
    Fixes-bug: #8329

diff --git a/src/mathed/MathMacroTemplate.cpp b/src/mathed/MathMacroTemplate.cpp
index 62c681b..53cec03 100644
--- a/src/mathed/MathMacroTemplate.cpp
+++ b/src/mathed/MathMacroTemplate.cpp
@@ -620,10 +620,13 @@ void MathMacroTemplate::edit(Cursor & cur, bool front, 
EntryDirection entry_from
 
 bool MathMacroTemplate::notifyCursorLeaves(Cursor const & old, Cursor & cur)
 {
+       unsigned int const nargs_before = nargs();
        commitEditChanges(cur, old);
        updateLook();
        cur.screenUpdateFlags(Update::Force);
-       return InsetMathNest::notifyCursorLeaves(old, cur);
+       // If we have removed a cell, we might have invalidated the cursor
+       return InsetMathNest::notifyCursorLeaves(old, cur)
+               || nargs() < nargs_before;
 }
 
 

Reply via email to