Bug 125380 - FILESAVE XLSX write includes col record incompatible with LibreOffice
Summary: FILESAVE XLSX write includes col record incompatible with LibreOffice
Status: RESOLVED INSUFFICIENTDATA
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Calc (show other bugs)
Version:
(earliest affected)
6.2.3.2 release
Hardware: All All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: XLSX
  Show dependency treegraph
 
Reported: 2019-05-20 06:06 UTC by SheetJS
Modified: 2020-07-11 03:42 UTC (History)
2 users (show)

See Also:
Crash report or crash signature:


Attachments
Example XLSX from LO (5.33 KB, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)
2019-06-04 21:50 UTC, SheetJS
Details
Modified file with equivalent col structure (5.20 KB, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)
2019-06-04 22:07 UTC, SheetJS
Details

Note You need to log in before you can comment on or make changes to this bug.
Description SheetJS 2019-05-20 06:06:31 UTC
Description:
When saving a new file to the XLSX file format, LO writes the following column record:

    <col collapsed="false" customWidth="false" hidden="false" outlineLevel="0" max="1025" min="1" style="0" width="11.52"/>

"min" and "max" are 1-indexed and inclusive, so this describes columns A:AMK.  LO currently supports 1024 columns so that column AMK is technically outside of the valid range.

The following two records are equivalent to the one LO writes:

    <col collapsed="false" customWidth="false" hidden="false" outlineLevel="0" max="1024" min="1" style="0" width="11.52"/>
    <col collapsed="false" customWidth="false" hidden="false" outlineLevel="0" max="1025" min="1025" style="0" width="11.52"/>

However, due to the column restriction, the latter elicits a warning.

The fix is to write that col record with range up to 1024:

    <col collapsed="false" customWidth="false" hidden="false" outlineLevel="0" max="1024" min="1" style="0" width="11.52"/>


Actual Results:
LO-generated XLSX references column 1025

Expected Results:
LO-generated XLSX should not reference unsupported columns


Reproducible: Always


User Profile Reset: Yes



Additional Info:
Comment 1 Xisco Faulí 2019-06-04 10:16:25 UTC
Thank you for reporting the bug. Please attach a sample document, as this makes it easier for us to verify the bug. 
(Please note that the attachment will be public, remove any sensitive information before attaching it. 
See https://wiki.documentfoundation.org/QA/FAQ#How_can_I_eliminate_confidential_data_from_a_sample_document.3F for help on how to do so.)

I have set the bug's status to 'NEEDINFO'. Please change it back to 'UNCONFIRMED' once the requested document is provided.
Comment 2 SheetJS 2019-06-04 21:50:02 UTC
Created attachment 151917 [details]
Example XLSX from LO
Comment 3 SheetJS 2019-06-04 21:53:26 UTC
A file generated from LibreOffice was attached.  The relevant segment is in the `cols` xml block from the `xl/worksheets/sheet1.xml` entry within the file:

```xml
  <cols>
    <col collapsed="false" customWidth="false" hidden="false" outlineLevel="0" max="1" min="1" style="0" width="11.52"/>
    <col collapsed="false" customWidth="true" hidden="false" outlineLevel="0" max="2" min="2" style="0" width="2.65"/>
    <col collapsed="false" customWidth="false" hidden="false" outlineLevel="0" max="1025" min="3" style="0" width="11.52"/>
  </cols>
```

The "max" field in the third col entry is "1025".  That column maps to the name "AMK", which is beyond the AMJ max column that LibreOffice currently supports.

As far as Excel is concerned, the previous block is equivalent to

```
  <cols>
    <col collapsed="false" customWidth="false" hidden="false" outlineLevel="0" max="1" min="1" style="0" width="11.52"/>
    <col collapsed="false" customWidth="true" hidden="false" outlineLevel="0" max="2" min="2" style="0" width="2.65"/>
    <col collapsed="false" customWidth="false" hidden="false" outlineLevel="0" max="1024" min="3" style="0" width="11.52"/>
    <col collapsed="false" customWidth="false" hidden="false" outlineLevel="0" max="1025" min="1025" style="0" width="11.52"/>
  </cols>
```

But when you make that change (see second attachment) LibreOffice complains
Comment 4 SheetJS 2019-06-04 22:07:35 UTC
Created attachment 151918 [details]
Modified file with equivalent col structure
Comment 5 QA Administrators 2019-06-05 02:54:38 UTC Comment hidden (obsolete)
Comment 6 Buovjaga 2019-08-25 15:02:23 UTC
This is apparently fixed, please test with 6.3.0
Comment 7 QA Administrators 2020-06-10 03:48:15 UTC Comment hidden (obsolete)
Comment 8 QA Administrators 2020-07-11 03:42:15 UTC
Dear SheetJS,

Please read this message in its entirety before proceeding.

Your bug report is being closed as INSUFFICIENTDATA due to inactivity and
a lack of information which is needed in order to accurately
reproduce and confirm the problem. We encourage you to retest
your bug against the latest release. If the issue is still
present in the latest stable release, we need the following
information (please ignore any that you've already provided):

a) Provide details of your system including your operating
   system and the latest version of LibreOffice that you have
   confirmed the bug to be present

b) Provide easy to reproduce steps – the simpler the better

c) Provide any test case(s) which will help us confirm the problem

d) Provide screenshots of the problem if you think it might help

e) Read all comments and provide any requested information

Once all of this is done, please set the bug back to UNCONFIRMED
and we will attempt to reproduce the issue. Please do not:

a) respond via email 

b) update the version field in the bug or any of the other details
   on the top section of our bug tracker

Warm Regards,
QA Team

MassPing-NeedInfo-FollowUp