fpspreadsheet: Fix worksheetgrid crashing when drawing cell borders due to range overflow when frozencols = 0 or frozenrows = 0.

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@8603 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
wp_xxyyzz
2022-11-10 18:04:44 +00:00
parent f004e0c047
commit d2467e166d

View File

@ -2533,21 +2533,21 @@ begin
end; end;
1: begin 1: begin
sr1 := 0; sr1 := 0;
sr2 := FFrozenRows - 1; if FFrozenRows = 0 then sr2 := 0 else sr2 := FFrozenRows - 1;
sc1 := FFrozenCols - 1; if FFrozenCols = 0 then sc1 := 0 else sc1 := FFrozenCols - 1;
sc2 := GetWorksheetCol(GCache.VisibleGrid.Right); sc2 := GetWorksheetCol(GCache.VisibleGrid.Right);
end; end;
2: begin 2: begin
sc1 := 0; sc1 := 0;
sc2 := FFrozenCols - 1; if FFrozenCols = 0 then sc2 := 0 else sc2 := FFrozenCols - 1;
sr1 := FFrozenRows - 1; if FFrozenRows = 0 then sr1 := 0 else sr1 := FFrozenRows - 1;
sr2 := GetWorksheetRow(GCache.VisibleGrid.Bottom); sr2 := GetWorksheetRow(GCache.VisibleGrid.Bottom);
end; end;
3: begin 3: begin
sc1 := 0; sc1 := 0;
sc2 := FFrozenCols - 1; if FFrozenCols = 0 then sc2 := 0 else sc2 := FFrozenCols - 1;
sr1 := 0; sr1 := 0;
sr2 := FFrozenRows - 1; if FFrozenRows = 0 then sr2 := 0 else sr2 := FFrozenRows - 1;
end; end;
end; end;
if sr1 = UNASSIGNED_ROW_COL_INDEX then sr1 := 0; if sr1 = UNASSIGNED_ROW_COL_INDEX then sr1 := 0;