Bug 143845 - FILEOPEN DOCX: File marked as changed after opening
Summary: FILEOPEN DOCX: File marked as changed after opening
Status: NEW
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Writer (show other bugs)
Version:
(earliest affected)
3.5.0 release
Hardware: All All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard:
Keywords: preBibisect, regression
Depends on:
Blocks: ModifiedStatus
  Show dependency treegraph
 
Reported: 2021-08-12 18:42 UTC by Telesto
Modified: 2022-10-03 18:55 UTC (History)
3 users (show)

See Also:
Crash report or crash signature:


Attachments
Example file (244.22 KB, application/vnd.oasis.opendocument.text)
2021-08-12 18:42 UTC, Telesto
Details
DOCX 7.3 Master (135.54 KB, application/vnd.openxmlformats-officedocument.wordprocessingml.document)
2021-08-12 18:43 UTC, Telesto
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Telesto 2021-08-12 18:42:34 UTC
Description:
FILEOPEN DOCX: File marked as changed after opening

Steps to Reproduce:
1. Open the attached file
2. Save to DOCX
3. File reload
4. Look at the save icon -> Marked changed

Actual Results:
Changed

Expected Results:
There shouldn't be a change registered


Reproducible: Always


User Profile Reset: No



Additional Info:
Version: 7.3.0.0.alpha0+ (x64) / LibreOffice Community
Build ID: 36efb384a66b6dd645e0ae80fd7df68370a9dc8b
CPU threads: 4; OS: Windows 6.3 Build 9600; UI render: Skia/Raster; VCL: win
Locale: nl-NL (nl_NL); UI: en-US
Calc: CL
Comment 1 Telesto 2021-08-12 18:42:49 UTC
Created attachment 174239 [details]
Example file
Comment 2 Telesto 2021-08-12 18:43:13 UTC
Created attachment 174240 [details]
DOCX 7.3 Master
Comment 3 Telesto 2021-08-12 18:49:44 UTC
Also in
Version: 6.0.6.0.0+
Build ID: c30963b8b4bbbe42a24b97aafa161eff9d7ccdd4
CPU threads: 4; OS: Windows 6.3; UI render: default; 
Locale: nl-NL (nl_NL); Calc: CL

and in
Versie: 4.4.7.2 
Build ID: f3153a8b245191196a4b6b9abd1d0da16eead600
Locale: nl_NL

and in
Versie 4.0.0.3 (Bouw-id: 7545bee9c2a0782548772a21bc84a9dcc583b89)

not in
LibreOffice 3.5.7.2 
Build ID: 3215f89-f603614-ab984f2-7348103-1225a5b
Comment 4 Nina_Shtygailo 2021-08-13 08:38:39 UTC
If on the save icon  red point that means marked changed, true?
Comment 5 Telesto 2021-08-13 10:21:19 UTC
(In reply to Nina_Shtygailo from comment #4)
> If on the save icon  red point that means marked changed, true?

Yes, you can also simply close the file.. there is a save dialog popup's if a change being registered
Comment 6 Nina_Shtygailo 2021-08-13 10:38:29 UTC
confirm in

Version: 7.1.5.2 (x64) / LibreOffice Community
Build ID: 85f04e9f809797b8199d13c421bd8a2b025d52b5
CPU threads: 4; OS: Windows 10.0 Build 19043; UI render: Skia/Raster; VCL: win
Locale: en-US (ru_RU); UI: en-US
Calc: CL
Comment 7 Timur 2021-08-13 13:02:13 UTC
Seen in 43all-oldest so I set notBibisectable. Also in 7.3+.
Comment 8 Justin L 2022-10-01 13:45:02 UTC Comment hidden (obsolete)
Comment 9 Timur 2022-10-03 09:33:22 UTC Comment hidden (obsolete)
Comment 10 Justin L 2022-10-03 18:55:05 UTC
Not a dup. It is triggered from this sequence of calls that comes after sfx2/source/doc/objmisc.cxx's finishedLoading()'s SetModified(false):

#0  sw::DocumentStateManager::SetModified() (this=0x5555571d7500) at sw/source/core/doc/DocumentStateManager.cxx:46
#1  0x00007fffb96984fd in SwDoc::MakeFrameFormat(rtl::OUString const&, SwFrameFormat*, bool, bool) (this=0x55555bff7720, rFormatName="Root", pDerivedFrom=
    0x55555a75fe20, bBroadcast=false, bAuto=true) at sw/source/core/doc/docfmt.cxx:827
#2  0x00007fffb9c13046 in SwRootFrame::SwRootFrame(SwFrameFormat*, SwViewShell*) (this=0x55555b4e79e0, pFormat=0x55555a75fe20, pSh=0x55555b0a5e10)
    at sw/source/core/layout/newfrm.cxx:428
#3  0x00007fffba2b37df in SwViewShell::Init(SwViewOption const*) (this=0x55555b0a5e10, pNewOpt=0x7fffffffbca0)
    at sw/source/core/view/vnew.cxx:126
#4  0x00007fffba2b3dd1 in SwViewShell::SwViewShell(SwDoc&, vcl::Window*, SwViewOption const*, OutputDevice*, long) (this=0x55555b0a5e10, rDocument=..., pWindow=
    0x55555b9e6800, pNewOpt=0x7fffffffbca0, pOutput=0x0, nFlags=0) at sw/source/core/view/vnew.cxx:180
#5  0x00007fffb950e139 in SwCursorShell::SwCursorShell(SwDoc&, vcl::Window*, SwViewOption const*)
    (this=0x55555b0a5e10, rDoc=..., pInitWin=0x55555b9e6800, pInitOpt=0x7fffffffbca0) atsw/source/core/crsr/crsrsh.cxx:2995
#6  0x00007fffb9a7a36b in SwEditShell::SwEditShell(SwDoc&, vcl::Window*, SwViewOption const*)
    (this=0x55555b0a5e10, rDoc=..., pWindow=0x55555b9e6800, pOptions=0x7fffffffbca0) at sw/source/core/edit/edws.cxx:50
#7  0x00007fffb9b2ef11 in SwFEShell::SwFEShell(SwDoc&, vcl::Window*, SwViewOption const*)
    (this=0x55555b0a5e10, rDoc=..., pWindow=0x55555b9e6800, pOptions=0x7fffffffbca0) at sw/source/core/frmedt/fews.cxx:667
#8  0x00007fffba9f4035 in SwWrtShell::SwWrtShell(SwDoc&, vcl::Window*, SwView&, SwViewOption const*) (this=0x55555b0a5e10, rDoc=..., _pWin=0x55555b9e6800, 
    rShell=..., pViewOpt=0x7fffffffbca0) at sw/source/uibase/wrtsh/wrtsh1.cxx:1990
#9  0x00007fffc19b1d6e in SwView::SwView(SfxViewFrame*, SfxViewShell*) (this=0x55555b3f8a70, _pFrame=0x55555b7aecd0, pOldSh=0x0)
    at sw/source/uibase/uiview/view.cxx:888

This view.cxx has a bunch of code related to SetModified, and it clearly wants changes here to be kept. So the problem doesn't seem to be with SetModified itself I don't think. The fix would have to be from finding out why the frame format is changing at this point after loading has finished.