Issue 121571 - Nested recorded/tracked changes do not persist in ODT format, text corruption
Summary: Nested recorded/tracked changes do not persist in ODT format, text corruption
Status: CONFIRMED
Alias: None
Product: Writer
Classification: Application
Component: save-export (show other issues)
Version: 4.0.0-dev
Hardware: All All
: P3 Normal (vote)
Target Milestone: ---
Assignee: AOO issues mailing list
QA Contact: Suchithra
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-01-03 10:46 UTC by stfhell
Modified: 2013-02-19 00:58 UTC (History)
1 user (show)

See Also:
Issue Type: DEFECT
Latest Confirmation in: 3.4.1
Developer Difficulty: ---


Attachments
Test file: nested_tracked_changes.odt (8.23 KB, application/vnd.oasis.opendocument.text)
2013-01-03 10:46 UTC, stfhell
no flags Details
In build:9593 (details attached) this issue is reproducible. (8.23 KB, application/vnd.oasis.opendocument.text)
2013-01-23 02:19 UTC, Suchithra
no flags Details

Note You need to log in before you can comment on or make changes to this issue.
Description stfhell 2013-01-03 10:46:34 UTC
Created attachment 80093 [details]
Test file: nested_tracked_changes.odt

When different users edit an ODT file with active change tracking, AOO is supposed to "nest" revisions done by one user inside revisions done by another user when necessary: If User 1 adds text that User 2 later deletes, the insertion revision mark by User 1 is not simply removed but contained inside a deletion revision mark.

AOO saves such nested revisions correctly in DOC format, but fails in ODT files: Tracked deletions of tracked insertions are lost after reload of the document, and the deletion text portions are reordered.

Test system: AOO 3.4.1 (release) and a newer AOO snapshot (AOO350m1(Build:9611) - Rev. 1420743 / 2012-12-13_04:34:45 - Rev. 1421074), both Linux 64-bit-builds on Ubuntu 12.04/AMD64. Bug is also reproducible in LibreOffice.

Reproduce with the attached file:

(Keep "Record changes" on. In the following reproduction steps, tracked changes text portions are marked with {}.)

Open file "nested_tracked_changes.odt". "Record Changes" is active.
User 1 has added the word "big":
  A mouse is running along the {big} motorway trying to find some cheese.
The "Accept or Reject Changes" windows lists 1 tracked change:
  (1) User 1 insertion of "big"

User 2 deletes "running along the big motorway ":
The deletion is split into 3 different revision marks:
  (2) User 2 deletion of "running along the "
  (3) User 2 deletion of the User 1 insertion "_big_"
  (4) User 2 deletion of " motorway "
  A mouse is {running along the }{{big}}{ motorway }trying to find some cheese.
Revision (1) is correctly shown as nested inside revision (3) in the "Accept or Reject Changes" window.

Save file as "nested_tracked_changes.doc" (WW8) and as "nested_tracked_changes.odt". Close the file.

On opening the DOC version, all tracked changes correctly appear as before the file save.
On opening the ODT version, the file contents is corrupted:
- There are no nested changes: Revision (1) is lost.
- The 3 "top level" tracked changes that have survived the ODT save are in incorrect order, that is, the text portions are jumbled:
  A mouse is {motorway trying }{big }{running along the }to find some cheese.
Comment 1 Suchithra 2013-01-23 02:19:08 UTC
Created attachment 80162 [details]
In build:9593 (details attached) this issue is  reproducible.

In build:9593 (details attached) this issue is  reproducible.
Comment 2 Suchithra 2013-01-29 14:35:27 UTC
Created attachment 80162 [details]
In build:9593 (details attached) this issue is  reproducible.