From b01f7a6bdd860753e0bd27818ff2c3cc2f2ce783 Mon Sep 17 00:00:00 2001 From: Jean-Marc Lasgouttes Date: Wed, 23 Dec 2015 11:05:28 +0100 Subject: [PATCH] Avoid swapping a cell with itself Gcc STL debugging feature asserts when swapping an object with itself. This happens in some cases with math grids that have only one column. A quick review of other uses of swap() in the code base did not reveal any other dubious case. Fixes bug #9902. --- src/mathed/InsetMathGrid.cpp | 3 ++- status.21x | 2 ++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/mathed/InsetMathGrid.cpp b/src/mathed/InsetMathGrid.cpp index 07f0b2ce79..a67569c0c6 100644 --- a/src/mathed/InsetMathGrid.cpp +++ b/src/mathed/InsetMathGrid.cpp @@ -1194,7 +1194,8 @@ void InsetMathGrid::doDispatch(Cursor & cur, FuncRequest & cmd) // split cell splitCell(cur); - swap(cell(cur.idx()), cell(cur.idx() + ncols() - 1)); + if (ncols() > 1) + swap(cell(cur.idx()), cell(cur.idx() + ncols() - 1)); if (cur.idx() > 0) --cur.idx(); cur.pos() = cur.lastpos(); diff --git a/status.21x b/status.21x index afb98224b3..19c9f93a0b 100644 --- a/status.21x +++ b/status.21x @@ -83,6 +83,8 @@ What's new - Fix crash when unfolding/copying macros containing other macros (bug 9490). +- Fix crash when inserting a line in multline math environment (bug 9902). + - Fix automatic insertion of longtable captions (bug 9692). - Fix setting of nested minipage via the dialog (bug 8716).