On Tue, Oct 02, 2018 at 02:15:15PM +0200, Jean-Marc Lasgouttes wrote: > Le 02/10/2018 à 06:24, Richard Kimberly Heck a écrit : > > There are some known issues about math insets and buffer_ pointers we've > > never sorted out. This OUGHT to be set somewhere near creation of the > > inset. The message has the status of a warning. But this problem can > > lead to a crash: See Inset::buffer(). So maybe it would be worth > > committing your patch, but with a corresponding warning such as: > > LYXERR0("Unassigned buffer_ detected in InsetMathGrid::doDispatch."); > > It has proven very hard to fix these kinds of bugs properly. > > I think I know what happens: copying a cell as is done in copyRow leads to > cloning the insets. However, inset cloning does not keep the buffer_ value, > which makes sense. > > The point where we know that (1) insets have been copied and (2) that they > go in a known buffer is in copyRow() as Scott proposed. > > If we want to be a bit cleaner, we can redefine MathData::setBuffer so that > it sets buffer to its contents (and use that in InsetNest::setBuffer). > > Please test,
Thanks for the patch. I tested and it works well. Scott
signature.asc
Description: PGP signature