Bug 136904 - Crash swlo!SwRedlineData::operator!=+0x177 (steps in comment 7)
Summary: Crash swlo!SwRedlineData::operator!=+0x177 (steps in comment 7)
Status: VERIFIED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Writer (show other bugs)
Version:
(earliest affected)
6.3.0.4 release
Hardware: All All
: high critical
Assignee: Not Assigned
URL:
Whiteboard: target:7.6.0 target:7.5.2 target:7.4.7
Keywords: bibisected, bisected, haveBacktrace, regression
Depends on:
Blocks: Track-Changes Crash
  Show dependency treegraph
 
Reported: 2020-09-20 20:56 UTC by Telesto
Modified: 2023-03-27 11:00 UTC (History)
7 users (show)

See Also:
Crash report or crash signature:


Attachments
Screencast (1.23 MB, video/mp4)
2020-09-20 20:56 UTC, Telesto
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Telesto 2020-09-20 20:56:03 UTC
Description:
Crash swlo!SwRedlineData::operator!=+0x177

Steps to Reproduce:
1. Open attachment 165697 [details]
2. Follow the steps in the screencast (might be a dupe of bug 136903 which slightly easier to reproduce; so more to check after that one is fixed)

Actual Results:
Crash

Expected Results:
No crash


Reproducible: Always


User Profile Reset: No



Additional Info:
Version: 7.1.0.0.alpha0+ (x64)
Build ID: abcc4eb907661e07ad850ccce7eb06f129da4286
CPU threads: 4; OS: Windows 6.3 Build 9600; UI render: default; VCL: win
Locale: nl-NL (nl_NL); UI: en-US
Calc: CL
Comment 1 Telesto 2020-09-20 20:56:54 UTC
Created attachment 165699 [details]
Screencast
Comment 2 Telesto 2020-09-20 20:57:21 UTC
For the record, last part is simply pressing CTRL+Z / CTRL=Y
Comment 3 Xisco Faulí 2020-10-06 10:51:18 UTC
Hi Telesto,
Please write the steps as clear as possible.
Comment 4 Telesto 2020-10-06 12:39:18 UTC
(In reply to Xisco Faulí from comment #3)
> Hi Telesto,
> Please write the steps as clear as possible.

Leaving this at NEEDINFO for time being, if you don't mind.. as bug 136903 probably - hopefully - the same thing
Comment 5 QA Administrators 2020-10-07 03:56:48 UTC Comment hidden (obsolete)
Comment 6 Xisco Faulí 2021-07-07 10:42:50 UTC
Hello Telesto,
Could you please try to reproduce it with the latest version of LibreOffice from https://www.libreoffice.org/download/libreoffice-fresh/ ?
I have set the bug's status to 'NEEDINFO'. Please change it back to 'UNCONFIRMED' if the bug is still present in the latest version.
Comment 7 Telesto 2021-07-07 10:58:47 UTC
1. Open attachment 165697 [details]
2. Press backspace before B on second page
3. Press backspace before C (now on the second page)
4. Press and hold CTRL+Z
5. Press and hold CTRL+Y
6. repeat 4/5 -> Crash

Version: 7.3.0.0.alpha0+ (x64) / LibreOffice Community
Build ID: bd2f2273d83dcca43eb6b465308707efd45e7adf
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 8 Telesto 2021-07-07 11:00:39 UTC
Not working properly (page 3 doesn't come back at undo) but no crash with
Version: 6.1.0.0.beta2+
Build ID: 22c451df33b733440f24c1feb6380d31240d55e6
CPU threads: 4; OS: Windows 6.3; UI render: GL; 
Locale: nl-NL (nl_NL); Calc: CL
Comment 9 Telesto 2021-07-07 11:04:28 UTC
Fine with 6.2 (but introduces additional page)

starts crashing with
Version: 6.3.7.0.0+ (x86)
Build ID: 726535ec30f12697ceccd2f0640d9371a64dc5bd
CPU threads: 4; OS: Windows 6.3; UI render: default; VCL: win; 
Locale: nl-NL (nl_NL); UI-Language: en-US
Calc: CL
Comment 10 QA Administrators 2021-07-08 03:43:37 UTC Comment hidden (obsolete)
Comment 11 Buovjaga 2021-07-19 17:03:28 UTC
(In reply to Telesto from comment #7)
> 1. Open attachment 165697 [details]
> 2. Press backspace before B on second page
> 3. Press backspace before C (now on the second page)
> 4. Press and hold CTRL+Z
> 5. Press and hold CTRL+Y
> 6. repeat 4/5 -> Crash

Repro

NixOS
Version: 7.3.0.0.alpha0+ / LibreOffice Community
Build ID: b1df9c67349cf4cc5be4128d797aefb87f50e38f
CPU threads: 16; OS: Linux 5.13; UI render: default; VCL: x11
Locale: fi-FI (fi_FI.UTF-8); UI: en-US
Calc: threaded
Comment 12 Xisco Faulí 2021-07-21 11:26:07 UTC
Regression introduced by:

https://cgit.freedesktop.org/libreoffice/core/commit/?id=2de1fd7d8b8bd42c66190140cc4506df0c3367f1

author	László Németh <nemeth@numbertext.org>	2019-05-10 16:36:10 +0200
committer	László Németh <nemeth@numbertext.org>	2019-05-11 13:09:32 +0200
commit 2de1fd7d8b8bd42c66190140cc4506df0c3367f1 (patch)
tree b68899a5ba69863c9f28ff67e56d045b75a62e64
parent e5f23ede288b62ad259399a4d36e8d76ce59d1b8 (diff)
tdf#125187 DOCX track changes: fix w:del within w:ins

Bisected with: bibisect-linux64-6.3

Adding Cc: to László Németh
Comment 13 Xisco Faulí 2021-07-21 11:29:24 UTC
In contrary to bug 136903, if I revert the commit mentioned in comment 12, the issue is no longer reproducible
Comment 14 Hossein 2022-05-30 22:30:56 UTC
Still reproducible in the latest LibreOffice 7.4 master:

Version: 7.4.0.0.alpha1+ / LibreOffice Community
Build ID: 72c42be077908901e8a967d3a543296ca92ce51f
CPU threads: 8; OS: Linux 5.13; UI render: default; VCL: x11
Locale: en-US (en_US.UTF-8); UI: en-US
Calc: threaded
Comment 15 Hossein 2022-06-09 09:47:20 UTC
This back trace is created using Qt Creator:

1  __GI_raise  raise.c  50 0x7ffff79eb00b 
2  __GI_abort  abort.c  79 0x7ffff79ca859 
3  __assert_fail_base  assert.c 92 0x7ffff79ca729 
4  GI_assert_fail  assert.c 101  0x7ffff79dbfd6 
5  sw::MapModelToView  txtfrm.cxx 1220 0x7fffc1eae528 
6  SwTextFrame::MapModelToView txtfrm.cxx 1261 0x7fffc1eae735 
7  SwTextFrame::MapModelToViewPos  txtfrm.cxx 1274 0x7fffc1eae7ed 
8  SwTextFrame::GetFrameAtPos  frmcrsr.cxx  153  0x7fffc1dd483e 
9  GetFrameOfModify  frmtool.cxx  3885 0x7fffc1c34a52 
10 SwContentNode::getLayoutFrame node.cxx 1214 0x7fffc19f7c6d 
11 SwRootFrame::CalcFrameRects trvlfrm.cxx  2042 0x7fffc1d155ad 
12 SwShellCursor::FillRects  viscrs.cxx 907  0x7fffc15ed327 
13 SwSelPaintRects::Show viscrs.cxx 430  0x7fffc15ea1e4 
14 SwCursorShell::UpdateCursor crsrsh.cxx 2014 0x7fffc15761ba 
15 SwCursorShell::EndAction  crsrsh.cxx 280  0x7fffc156d84f 
16 SwEditShell::EndAllAction edws.cxx 102  0x7fffc1ae5019 
17 SwWrtShell::Do  wrtundo.cxx  58 0x7fffc2a4a284 
18 SwBaseShell::ExecUndo basesh.cxx 661  0x7fffc27b463b 
19 SfxStubSwBaseShellExecUndo  swslots.hxx  2171 0x7fffc27b1dc7 
20 SfxDispatcher::Call_Impl  dispatch.cxx 254  0x7ffff493d2b4 
21 SfxDispatcher::Execute_ dispatch.cxx 753  0x7ffff494064b 
22 SfxBindings::Execute_Impl bindings.cxx 1060 0x7ffff492c29f 
23 SfxDispatchController_Impl::dispatch  unoctitm.cxx 700  0x7ffff49fdb5a 
24 SfxOfficeDispatch::dispatch unoctitm.cxx 262  0x7ffff49fb9fa 
25 svt::(anonymous namespace)::AsyncAccelExec::impl_ts_asyncCallback acceleratorexecute.cxx 480  0x7ffff1de1b10 
26 svt::(anonymous namespace)::AsyncAccelExec::LinkStubimpl_ts_asyncCallback acceleratorexecute.cxx 472  0x7ffff1de1a2d 
27 Link<LinkParamNone *, void>::Call link.hxx 111  0x7fffeed00b99 
28 vcl::EventPoster::DoEvent_Impl  evntpost.cxx 52 0x7fffef5d61f3 
29 vcl::EventPoster::LinkStubDoEvent_Impl  evntpost.cxx 48 0x7fffef5d61b7 
30 Link<void *, void>::Call  link.hxx 111  0x7fffeef96afb 
31 ImplHandleUserEvent winproc.cxx  2229 0x7fffeef93b65 
32 ImplWindowFrameProc winproc.cxx  2799 0x7fffeef959fa 
33 SalFrame::CallCallback  salframe.hxx 308  0x7fffef9d3974 
34 SalGenericDisplay::ProcessEvent gendisp.cxx  66 0x7fffef9f9e33 
35 operator()  salusereventlist.cxx 119  0x7fffef5e79dc 
36 SalUserEventList::DispatchUserEvents  salusereventlist.cxx 120  0x7fffef5e7cb5 
37 SalGenericDisplay::DispatchInternalEvent  gendisp.cxx  51 0x7fffef9f9d9f 
38 SalX11Display::Yield  saldisp.cxx  1889 0x7fffe4c6a10b 
39 DisplayYield  saldisp.cxx  381  0x7fffe4c6206d 
40 (anonymous namespace)::YieldEntry::HandleNextEvent  saldata.cxx  562  0x7fffe4c5ceed 
41 SalXLib::Yield  saldata.cxx  658  0x7fffe4c5d731 
42 X11SalInstance::DoYield salinst.cxx  192  0x7fffe4c7f935 
43 ImplYield svapp.cxx  474  0x7fffef6a1c0b 
44 Application::Yield  svapp.cxx  558  0x7fffef6a27a3 
45 Application::Execute  svapp.cxx  452  0x7fffef6a18ff 
46 desktop::Desktop::Main  app.cxx  1600 0x7ffff7c2c719 
47 ImplSVMain  svmain.cxx 202  0x7fffef6c05c8 
48 SVMain  svmain.cxx 234  0x7fffef6c06f1 
49 soffice_main  sofficemain.cxx  94 0x7ffff7c93410 
50 sal_main  main.c 51 0x5555555549ed 
51 main  main.c 49 0x5555555549cf
Comment 16 Hossein 2022-09-15 14:45:47 UTC
Resetting the assignee and setting the status to NEW.
Comment 17 László Németh 2023-03-08 14:49:25 UTC
Proposed fix: https://gerrit.libreoffice.org/c/core/+/148479
Comment 18 Commit Notification 2023-03-08 21:01:49 UTC
László Németh committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/8f26482986fd9af5eac4efd44ec56fd994ec69f1

tdf#136904 tdf#116084 tdf#121176 sw: fix Undo & anonymized w:del in w:ins

It will be available in 7.6.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 19 László Németh 2023-03-08 21:42:23 UTC
@Telesto: very nice catch! Thanks!

@Xisco, Buovjaga, Hossein: Thanks for bibisecting and feedback!

Commit description:

tdf#136904 tdf#116084 tdf#121176 sw: fix Undo & anonymized w:del in w:ins

Undo/Redo crash resulted by the workaround for anonymized
w:del in w:ins. Anonymized (no time stamp) redlines
are loaded with Epoch time (1970-01-01) since
commit 2c51746997478ad5d0e7cc64aa6489769c473d43
"tdf#146171 DOCX: fix loss of change tracking, if no date",
so it's possible to fix the original DOCX import problem
using this value: don't combine anonymized deletion
inside/over anonymized insertion, and remove all the
workaround, keeping only their adjusted unit tests,
and add new tests for the export fixed finally, which
keeps anonymized w:del in anonymized w:ins.

Revert commit 2de1fd7d8b8bd42c66190140cc4506df0c3367f1
"tdf#125187 DOCX track changes: fix w:del within w:ins",
commit df4f405a153603551f67e289bbaccf9ac39b923c
"tdf#121176 DOCX track changes: same size w:del in w:ins" and
commit 7a810d6a9fb79a24d00e5dbd8e1223e6f8b09677
"tdf#116084 DOCX track changes: fix w:del within w:ins".

Regression from commit 2de1fd7d8b8bd42c66190140cc4506df0c3367f1
"tdf#125187 DOCX track changes: fix w:del within w:ins".

See also commit 64dcedcf7c073d1819794d68a33651b14877e1b5
"tdf#147760 tdf#142902 DOCX export: anonymize date and moveFromRangeStart".
Comment 20 Commit Notification 2023-03-09 10:20:23 UTC
László Németh committed a patch related to this issue.
It has been pushed to "libreoffice-7-5":

https://git.libreoffice.org/core/commit/a35189a5962aaa9843923f87972a3811e9ae83b5

tdf#136904 tdf#116084 tdf#121176 sw: fix Undo & anonymized w:del in w:ins

It will be available in 7.5.2.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 21 Commit Notification 2023-03-09 10:20:30 UTC
László Németh committed a patch related to this issue.
It has been pushed to "libreoffice-7-4":

https://git.libreoffice.org/core/commit/5a1ecea15e05158eb4c67ddcc0fedbf965304b87

tdf#136904 tdf#116084 tdf#121176 sw: fix Undo & anonymized w:del in w:ins

It will be available in 7.4.7.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 22 NISZ LibreOffice Team 2023-03-27 11:00:56 UTC
Verified in:
Version: 7.6.0.0.alpha0+ (X86_64) / LibreOffice Community
Build ID: 67bb7f71b785d3d831ffaa47262b6cbd84e71c42
CPU threads: 4; OS: Windows 10.0 Build 19044; UI render: Skia/Vulkan; VCL: win
Locale: hu-HU (hu_HU); UI: en-US
Calc: CL threaded