mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-09 18:31:04 +00:00
Fix bug #8105: Crash when deleting math macro from the inside
It seems that parameterless macros are not wrapped into a MathAtom.
Rather than touching the macro code (which is tantamount to opening
a can of worms, IMHO), I prefer this solution.
(cherry picked from commit d07f9eec20
)
This commit is contained in:
parent
3536bb52db
commit
fe47997587
@ -23,7 +23,7 @@
|
||||
#include "insets/Inset.h"
|
||||
|
||||
#include "mathed/InsetMath.h"
|
||||
#include "mathed/MathData.h"
|
||||
#include "mathed/MathMacro.h"
|
||||
|
||||
#include "support/lassert.h"
|
||||
|
||||
@ -61,8 +61,10 @@ Paragraph & CursorSlice::paragraph() const
|
||||
pos_type CursorSlice::lastpos() const
|
||||
{
|
||||
LASSERT(inset_, /**/);
|
||||
return inset_->asInsetMath() ? cell().size()
|
||||
: (text()->empty() ? 0 : paragraph().size());
|
||||
InsetMath const * math = inset_->asInsetMath();
|
||||
bool paramless_macro = math && math->asMacro() && !math->asMacro()->nargs();
|
||||
return math ? (paramless_macro ? 0 : cell().size())
|
||||
: (text()->empty() ? 0 : paragraph().size());
|
||||
}
|
||||
|
||||
|
||||
|
@ -89,6 +89,9 @@ What's new
|
||||
flag by using the same latex backend used for previewing the document
|
||||
instead of always using the plain latex backend.
|
||||
|
||||
- Fix crash when dissolving a math macro whose first argument is another
|
||||
parameterless macro (bug 8105).
|
||||
|
||||
|
||||
* USER INTERFACE
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user