Bug 52060

Summary: LibreOffice Calc does not validate xml and preserves faults in the xml structure.
Product: LibreOffice Reporter: Johnny Baloney <itdev>
Component: SpreadsheetAssignee: Not Assigned <libreoffice-bugs>
Status: NEW --- QA Contact:
Severity: normal    
Priority: medium CC: itdev
Version: 3.5.5.3 release   
Hardware: x86-64 (AMD64)   
OS: All   
Whiteboard:
i915 platform: i915 features:
Attachments: In the attached sample file the second graph has issues. Double-click on the graph to see it break.

Description Johnny Baloney 2012-07-13 15:53:23 UTC
Created attachment 64184 [details]
In the attached sample file the second graph has issues. Double-click on the graph to see it break.

I used LibO 3.6.0beta1 (build: 1f1cdd8) to create a spreadsheet that contained a number of graphs. Some of these graphs got corrupt. It turned out that for whatever reason the content.xml files for the broken graphs got chopped off at various places.

I then used both LibO 3.6.0beta1 (build: 1f1cdd8) and LibO 3.5.5.3 (build: 7122e39-92ed229-498d286-15e43b4-d70da21) to open the file with corrupt charts. None has complained while opening the file and both have saved the changes to the file preserving the faults in content.xml for the graphs.

Issues with LibO:

- there seems to be no xml validation performed on the document during opening,
- no warning is issued that the document may be corrupt,
- saving the document preserves faults in the structure,
- there is no attempt of recovery.
Comment 1 Johnny Baloney 2014-09-15 23:19:08 UTC
Version: 4.3.1.2 now (quietly) fixes the broken content.xml. However, it would still be good to notify the user that the file is corrupt.


The broken content.xml:

$ xmllint -noout Object\ 2/content.xml 
Object 2/content.xml:2: parser error : Specification mandate value for attribute sv
style-name="ch5" chartooo:axis-type="auto"><chartooo:date-scale/><chart:title sv
                                                                               ^
Object 2/content.xml:2: parser error : attributes construct error
style-name="ch5" chartooo:axis-type="auto"><chartooo:date-scale/><chart:title sv
                                                                               ^
Object 2/content.xml:2: parser error : Couldn't find end of Start Tag title line 2
style-name="ch5" chartooo:axis-type="auto"><chartooo:date-scale/><chart:title sv
                                                                               ^
Object 2/content.xml:2: parser error : Premature end of data in tag axis line 2
style-name="ch5" chartooo:axis-type="auto"><chartooo:date-scale/><chart:title sv
                                                                               ^
...

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.