Richard Heck wrote:
So, it seems to me that fixing "our most embarrassing bug" is going to require doing something that maybe ought to have been done before, namely, introducing an InsetTableCell that will contain a pointer (or reference) to the associated CellData. Doing that much is near trivial---InsetTableCell itself will override but a handful of InsetText's methods---but I'm guessing this pointer will need updating whenever the cell is copied or, at least, whenever the CellData is copied. So one possibility here would be to write copy (and assignment?) constructors for CellData. Is there any easier way to do this than manually to copy all of the member data?
Actually, looking at this again, I see that CellData already has non-default copy and assignment constructors, so it will be easy to update the InsetTableCell's pointers to CellData there. So that looks as if it might actually be pretty straightforward.
rh