commit 1780cb48964f787f53b8afa1ba87b50392582263
Author: Jean-Marc Lasgouttes <[email protected]>
Date: Tue Mar 24 10:50:51 2015 +0100
Fix consecutive merging of tabular cells
This is a bug reported and fixed by Edwin Leuven.
Here is how Edwin described it in his inimitable minimalist style:
first i merge the top-left two cells in a small, say 3x3, table
if i then merge this multicolumn cell with the remaining cell in the
first row
my table ends up all bonkers
diff --git a/src/insets/InsetTabular.cpp b/src/insets/InsetTabular.cpp
index 8f86888..d39cf7f 100644
--- a/src/insets/InsetTabular.cpp
+++ b/src/insets/InsetTabular.cpp
@@ -1688,7 +1688,8 @@ Tabular::idx_type Tabular::setMultiColumn(idx_type cell,
idx_type number,
cs.alignment = column_info[col].alignment;
setRightLine(cell, right_border);
- for (idx_type i = 1; i < number; ++i) {
+ idx_type lastcell = cellIndex(row, col + number - 1);
+ for (idx_type i = 1; i < lastcell - cell + 1; ++i) {
CellData & cs1 = cellInfo(cell + i);
cs1.multicolumn = CELL_PART_OF_MULTICOLUMN;
cs.inset->appendParagraphs(cs1.inset->paragraphs());