https://bugs.documentfoundation.org/show_bug.cgi?id=147014

--- Comment #9 from Aron Budea <[email protected]> ---
Created attachment 177926
  --> https://bugs.documentfoundation.org/attachment.cgi?id=177926&action=edit
XLSX created from scratch

Note that this issue isn't directly caused by the referenced commit.

The problem is an overflow in when getting the Size property of a cell range
spanning more than a million rows, height is negative here:
https://opengrok.libreoffice.org/xref/core/sc/source/filter/oox/worksheethelper.cxx?r=75036ee9#1361

The overflow itself happens here, when sizes of type __int64 are converted into
long, because the components of awt::Size are long:
https://opengrok.libreoffice.org/xref/core/sc/source/ui/unoobj/cellsuno.cxx?r=c3d5c9a0#5710

awt::Size:
https://api.libreoffice.org/docs/idl/ref/structcom_1_1sun_1_1star_1_1awt_1_1Size.html

It's fairly simple to create a bugdoc from scratch:
- Increase height to ~5x the normal size (select all cells, and resize one of
the rows),
- Insert an image,
- Save as XLSX, then reload.

Eike, is the type of the Size property not being able to hold the size of a
large cell range (eg. largest sheet size) a fundamental problem, and if so,
what do you think could be done about it? Clamping the values would be a simple
fix, but I'm worried about other potential issues with the insufficiently sized
type.

-- 
You are receiving this mail because:
You are the assignee for the bug.

Reply via email to