You've already forked lazarus-ccr
fpspreadsheet: Fix incorrect dection of cell ranges when reading biff rpn formulas
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3090 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
@ -150,7 +150,6 @@
|
|||||||
<Unit3>
|
<Unit3>
|
||||||
<Filename Value="..\..\fpspreadsheetgrid.pas"/>
|
<Filename Value="..\..\fpspreadsheetgrid.pas"/>
|
||||||
<UnitName Value="fpspreadsheetgrid"/>
|
<UnitName Value="fpspreadsheetgrid"/>
|
||||||
<IsVisibleTab Value="True"/>
|
|
||||||
<EditorIndex Value="6"/>
|
<EditorIndex Value="6"/>
|
||||||
<WindowIndex Value="0"/>
|
<WindowIndex Value="0"/>
|
||||||
<TopLine Value="539"/>
|
<TopLine Value="539"/>
|
||||||
@ -264,10 +263,11 @@
|
|||||||
<Unit17>
|
<Unit17>
|
||||||
<Filename Value="..\..\xlsbiff8.pas"/>
|
<Filename Value="..\..\xlsbiff8.pas"/>
|
||||||
<UnitName Value="xlsbiff8"/>
|
<UnitName Value="xlsbiff8"/>
|
||||||
|
<IsVisibleTab Value="True"/>
|
||||||
<EditorIndex Value="3"/>
|
<EditorIndex Value="3"/>
|
||||||
<WindowIndex Value="0"/>
|
<WindowIndex Value="0"/>
|
||||||
<TopLine Value="1920"/>
|
<TopLine Value="847"/>
|
||||||
<CursorPos X="21" Y="1924"/>
|
<CursorPos X="3" Y="859"/>
|
||||||
<UsageCount Value="99"/>
|
<UsageCount Value="99"/>
|
||||||
<Loaded Value="True"/>
|
<Loaded Value="True"/>
|
||||||
</Unit17>
|
</Unit17>
|
||||||
@ -291,8 +291,8 @@
|
|||||||
<UnitName Value="xlscommon"/>
|
<UnitName Value="xlscommon"/>
|
||||||
<EditorIndex Value="4"/>
|
<EditorIndex Value="4"/>
|
||||||
<WindowIndex Value="0"/>
|
<WindowIndex Value="0"/>
|
||||||
<TopLine Value="1112"/>
|
<TopLine Value="1363"/>
|
||||||
<CursorPos X="1" Y="1142"/>
|
<CursorPos X="3" Y="1366"/>
|
||||||
<UsageCount Value="95"/>
|
<UsageCount Value="95"/>
|
||||||
<Loaded Value="True"/>
|
<Loaded Value="True"/>
|
||||||
</Unit20>
|
</Unit20>
|
||||||
@ -599,124 +599,124 @@
|
|||||||
</Units>
|
</Units>
|
||||||
<JumpHistory Count="30" HistoryIndex="29">
|
<JumpHistory Count="30" HistoryIndex="29">
|
||||||
<Position1>
|
<Position1>
|
||||||
<Filename Value="mainform.pas"/>
|
<Filename Value="..\..\fpspreadsheet.pas"/>
|
||||||
<Caret Line="654" Column="3" TopLine="647"/>
|
<Caret Line="742" Column="12" TopLine="723"/>
|
||||||
</Position1>
|
</Position1>
|
||||||
<Position2>
|
<Position2>
|
||||||
<Filename Value="..\..\fpspreadsheet.pas"/>
|
<Filename Value="..\..\fpspreadsheet.pas"/>
|
||||||
<Caret Line="742" Column="12" TopLine="723"/>
|
<Caret Line="115" Column="1" TopLine="115"/>
|
||||||
</Position2>
|
</Position2>
|
||||||
<Position3>
|
<Position3>
|
||||||
<Filename Value="..\..\fpspreadsheet.pas"/>
|
<Filename Value="..\..\fpspreadsheet.pas"/>
|
||||||
<Caret Line="115" Column="1" TopLine="115"/>
|
<Caret Line="349" Column="12" TopLine="318"/>
|
||||||
</Position3>
|
</Position3>
|
||||||
<Position4>
|
<Position4>
|
||||||
<Filename Value="..\..\fpspreadsheet.pas"/>
|
<Filename Value="..\..\fpspreadsheet.pas"/>
|
||||||
<Caret Line="349" Column="12" TopLine="318"/>
|
<Caret Line="358" Column="25" TopLine="327"/>
|
||||||
</Position4>
|
</Position4>
|
||||||
<Position5>
|
<Position5>
|
||||||
<Filename Value="..\..\fpspreadsheet.pas"/>
|
<Filename Value="..\..\fpspreadsheet.pas"/>
|
||||||
<Caret Line="358" Column="25" TopLine="327"/>
|
<Caret Line="478" Column="34" TopLine="449"/>
|
||||||
</Position5>
|
</Position5>
|
||||||
<Position6>
|
<Position6>
|
||||||
<Filename Value="..\..\fpspreadsheet.pas"/>
|
<Filename Value="..\..\fpspreadsheetgrid.pas"/>
|
||||||
<Caret Line="478" Column="34" TopLine="449"/>
|
<Caret Line="2524" Column="3" TopLine="2520"/>
|
||||||
</Position6>
|
</Position6>
|
||||||
<Position7>
|
<Position7>
|
||||||
<Filename Value="..\..\fpspreadsheetgrid.pas"/>
|
<Filename Value="..\..\fpspreadsheetgrid.pas"/>
|
||||||
<Caret Line="2524" Column="3" TopLine="2520"/>
|
<Caret Line="2504" Column="46" TopLine="2498"/>
|
||||||
</Position7>
|
</Position7>
|
||||||
<Position8>
|
<Position8>
|
||||||
<Filename Value="..\..\fpspreadsheetgrid.pas"/>
|
<Filename Value="mainform.pas"/>
|
||||||
<Caret Line="2504" Column="46" TopLine="2498"/>
|
<Caret Line="654" Column="3" TopLine="647"/>
|
||||||
</Position8>
|
</Position8>
|
||||||
<Position9>
|
<Position9>
|
||||||
<Filename Value="mainform.pas"/>
|
<Filename Value="mainform.pas"/>
|
||||||
<Caret Line="654" Column="3" TopLine="647"/>
|
<Caret Line="661" Column="3" TopLine="654"/>
|
||||||
</Position9>
|
</Position9>
|
||||||
<Position10>
|
<Position10>
|
||||||
<Filename Value="mainform.pas"/>
|
<Filename Value="mainform.pas"/>
|
||||||
<Caret Line="661" Column="3" TopLine="654"/>
|
<Caret Line="542" Column="56" TopLine="540"/>
|
||||||
</Position10>
|
</Position10>
|
||||||
<Position11>
|
<Position11>
|
||||||
<Filename Value="mainform.pas"/>
|
<Filename Value="mainform.pas"/>
|
||||||
<Caret Line="542" Column="56" TopLine="540"/>
|
<Caret Line="728" Column="1" TopLine="704"/>
|
||||||
</Position11>
|
</Position11>
|
||||||
<Position12>
|
<Position12>
|
||||||
<Filename Value="mainform.pas"/>
|
<Filename Value="..\..\fpspreadsheet.pas"/>
|
||||||
<Caret Line="728" Column="1" TopLine="704"/>
|
<Caret Line="1316" Column="1" TopLine="1285"/>
|
||||||
</Position12>
|
</Position12>
|
||||||
<Position13>
|
<Position13>
|
||||||
<Filename Value="..\..\fpspreadsheet.pas"/>
|
<Filename Value="..\..\fpspreadsheet.pas"/>
|
||||||
<Caret Line="1316" Column="1" TopLine="1285"/>
|
<Caret Line="394" Column="34" TopLine="394"/>
|
||||||
</Position13>
|
</Position13>
|
||||||
<Position14>
|
<Position14>
|
||||||
<Filename Value="..\..\fpspreadsheet.pas"/>
|
<Filename Value="..\..\fpspreadsheet.pas"/>
|
||||||
<Caret Line="394" Column="34" TopLine="394"/>
|
<Caret Line="1" Column="1" TopLine="1"/>
|
||||||
</Position14>
|
</Position14>
|
||||||
<Position15>
|
<Position15>
|
||||||
<Filename Value="..\..\fpspreadsheet.pas"/>
|
<Filename Value="..\..\fpspreadsheet.pas"/>
|
||||||
<Caret Line="1" Column="1" TopLine="1"/>
|
<Caret Line="501" Column="18" TopLine="470"/>
|
||||||
</Position15>
|
</Position15>
|
||||||
<Position16>
|
<Position16>
|
||||||
<Filename Value="..\..\fpspreadsheet.pas"/>
|
<Filename Value="..\..\xlscommon.pas"/>
|
||||||
<Caret Line="501" Column="18" TopLine="470"/>
|
<Caret Line="1430" Column="28" TopLine="1430"/>
|
||||||
</Position16>
|
</Position16>
|
||||||
<Position17>
|
<Position17>
|
||||||
<Filename Value="..\..\xlscommon.pas"/>
|
<Filename Value="..\..\xlscommon.pas"/>
|
||||||
<Caret Line="1430" Column="28" TopLine="1430"/>
|
<Caret Line="1" Column="1" TopLine="1"/>
|
||||||
</Position17>
|
</Position17>
|
||||||
<Position18>
|
<Position18>
|
||||||
<Filename Value="..\..\xlscommon.pas"/>
|
<Filename Value="mainform.pas"/>
|
||||||
<Caret Line="1" Column="1" TopLine="1"/>
|
<Caret Line="704" Column="21" TopLine="704"/>
|
||||||
</Position18>
|
</Position18>
|
||||||
<Position19>
|
<Position19>
|
||||||
<Filename Value="mainform.pas"/>
|
<Filename Value="mainform.pas"/>
|
||||||
<Caret Line="704" Column="21" TopLine="704"/>
|
<Caret Line="1" Column="1" TopLine="1"/>
|
||||||
</Position19>
|
</Position19>
|
||||||
<Position20>
|
<Position20>
|
||||||
<Filename Value="mainform.pas"/>
|
<Filename Value="mainform.pas"/>
|
||||||
<Caret Line="1" Column="1" TopLine="1"/>
|
<Caret Line="83" Column="19" TopLine="53"/>
|
||||||
</Position20>
|
</Position20>
|
||||||
<Position21>
|
<Position21>
|
||||||
<Filename Value="mainform.pas"/>
|
<Filename Value="mainform.pas"/>
|
||||||
<Caret Line="83" Column="19" TopLine="53"/>
|
<Caret Line="229" Column="29" TopLine="199"/>
|
||||||
</Position21>
|
</Position21>
|
||||||
<Position22>
|
<Position22>
|
||||||
<Filename Value="mainform.pas"/>
|
<Filename Value="mainform.pas"/>
|
||||||
<Caret Line="229" Column="29" TopLine="199"/>
|
<Caret Line="540" Column="32" TopLine="509"/>
|
||||||
</Position22>
|
</Position22>
|
||||||
<Position23>
|
<Position23>
|
||||||
<Filename Value="mainform.pas"/>
|
<Filename Value="mainform.pas"/>
|
||||||
<Caret Line="540" Column="32" TopLine="509"/>
|
<Caret Line="511" Column="29" TopLine="511"/>
|
||||||
</Position23>
|
</Position23>
|
||||||
<Position24>
|
<Position24>
|
||||||
<Filename Value="mainform.pas"/>
|
<Filename Value="mainform.pas"/>
|
||||||
<Caret Line="511" Column="29" TopLine="511"/>
|
<Caret Line="1" Column="1" TopLine="1"/>
|
||||||
</Position24>
|
</Position24>
|
||||||
<Position25>
|
<Position25>
|
||||||
<Filename Value="mainform.pas"/>
|
<Filename Value="mainform.pas"/>
|
||||||
<Caret Line="1" Column="1" TopLine="1"/>
|
<Caret Line="83" Column="19" TopLine="53"/>
|
||||||
</Position25>
|
</Position25>
|
||||||
<Position26>
|
<Position26>
|
||||||
<Filename Value="mainform.pas"/>
|
<Filename Value="mainform.pas"/>
|
||||||
<Caret Line="83" Column="19" TopLine="53"/>
|
<Caret Line="229" Column="29" TopLine="199"/>
|
||||||
</Position26>
|
</Position26>
|
||||||
<Position27>
|
<Position27>
|
||||||
<Filename Value="mainform.pas"/>
|
<Filename Value="mainform.pas"/>
|
||||||
<Caret Line="229" Column="29" TopLine="199"/>
|
<Caret Line="540" Column="32" TopLine="509"/>
|
||||||
</Position27>
|
</Position27>
|
||||||
<Position28>
|
<Position28>
|
||||||
<Filename Value="mainform.pas"/>
|
<Filename Value="..\..\xlscommon.pas"/>
|
||||||
<Caret Line="540" Column="32" TopLine="509"/>
|
<Caret Line="1141" Column="28" TopLine="1111"/>
|
||||||
</Position28>
|
</Position28>
|
||||||
<Position29>
|
<Position29>
|
||||||
<Filename Value="..\..\xlscommon.pas"/>
|
<Filename Value="..\..\xlscommon.pas"/>
|
||||||
<Caret Line="1141" Column="28" TopLine="1111"/>
|
<Caret Line="1142" Column="1" TopLine="1106"/>
|
||||||
</Position29>
|
</Position29>
|
||||||
<Position30>
|
<Position30>
|
||||||
<Filename Value="..\..\xlscommon.pas"/>
|
<Filename Value="..\..\xlscommon.pas"/>
|
||||||
<Caret Line="1142" Column="1" TopLine="1112"/>
|
<Caret Line="1427" Column="3" TopLine="1408"/>
|
||||||
</Position30>
|
</Position30>
|
||||||
</JumpHistory>
|
</JumpHistory>
|
||||||
</ProjectOptions>
|
</ProjectOptions>
|
||||||
|
@ -1431,17 +1431,12 @@ begin
|
|||||||
while (AStream.Position < p0 + n) and supported do begin
|
while (AStream.Position < p0 + n) and supported do begin
|
||||||
token := AStream.ReadByte;
|
token := AStream.ReadByte;
|
||||||
case token of
|
case token of
|
||||||
INT_EXCEL_TOKEN_TREFV:
|
INT_EXCEL_TOKEN_TREFV, INT_EXCEL_TOKEN_TREFR:
|
||||||
begin;
|
|
||||||
ReadRPNCellAddress(AStream, r, c, flags);
|
|
||||||
rpnItem := RPNCellValue(r, c, flags, rpnItem);
|
|
||||||
end;
|
|
||||||
INT_EXCEL_TOKEN_TREFR:
|
|
||||||
begin
|
begin
|
||||||
ReadRPNCellAddress(AStream, r, c, flags);
|
ReadRPNCellAddress(AStream, r, c, flags);
|
||||||
rpnItem := RPNCellRef(r, c, flags, rpnItem);
|
rpnItem := RPNCellRef(r, c, flags, rpnItem);
|
||||||
end;
|
end;
|
||||||
INT_EXCEL_TOKEN_TREFA:
|
INT_EXCEL_TOKEN_TAREA_R, INT_EXCEL_TOKEN_TAREA_V:
|
||||||
begin
|
begin
|
||||||
ReadRPNCellRangeAddress(AStream, r, c, r2, c2, flags);
|
ReadRPNCellRangeAddress(AStream, r, c, r2, c2, flags);
|
||||||
rpnItem := RPNCellRange(r, c, r2, c2, flags, rpnItem);
|
rpnItem := RPNCellRange(r, c, r2, c2, flags, rpnItem);
|
||||||
|
Reference in New Issue
Block a user