https://bz.apache.org/bugzilla/show_bug.cgi?id=57603

--- Comment #5 from mar...@volkhart.com ---
Created attachment 37753
  --> https://bz.apache.org/bugzilla/attachment.cgi?id=37753&action=edit
Patch demonstrating exception resolution

I believe the root cause to be that PAPBinTable#writeTo() uses the tableStream
on line 408. It should be the dataStream.

7 columns appears to cause the creation of a "huge grpprl". According to
MS-DOC, those are stored in the dataStream (search spec for sprmPHugePapx).

I have a relatively simple way of making the exception not happen. However,
given that there is no support at the moment for saving any content in the
dataStream that has been altered, it is possible that changes made to the
document would be silently lost during the save. It is also possible that this
might corrupt the document.

During the save, the contents of the huge grpprl get written to the dataStream,
and a pointer to the location of the huge grpprl is modified in the
PAPFormattedDiskPage. That pointer, if it were to be saved (and I'm not sure it
is) would be incorrect since we reuse the old dataStream during save.

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@poi.apache.org
For additional commands, e-mail: dev-h...@poi.apache.org

Reply via email to