I gone deeper in this issue, and it not depends on Track changes Show/Hide.
Undo has RedlinesGuard, which sets show/hide to value, that been when Undo action created. So Undo 
works fine and I not going to purge Undo stack.
I think the problem is created by sw::DocumentRedlineManager::CompressRedlines 
(https://opengrok.libreoffice.org/xref/core/sw/source/core/doc/DocumentRedlineManager.cxx#1792). As 
name states it compress redlines (merges two neighbor redlines if they have same author, type, 
second redline starts where first ends second.mark==first.point and so on). During compression it 
modifies indexes and Undo crushes LO.
Now I’m investigating CompresRedlines further. I think it can be changed so it merges only two 
neighbor redlines in the same node and not merge cross-node. Or maybe it should be completely 
removed, as it only merges redlines if they’ve been created in the same minute! 
(https://opengrok.libreoffice.org/xref/core/sw/source/core/doc/docredln.cxx#946)
So chances that two redlines will be merged are very low.
------ Исходное сообщение ------
От: "Miklos Vajna" <vmiklos@collabora.co.uk<mailto:vmiklos@collabora.co.uk>>
Кому: libreoffice@lists.freedesktop.org<mailto:libreoffice@lists.freedesktop.org>
Отправлено: 05.01.2018 18:35:12
Тема: Re: Bug 83260
Hi,
On Thu, Jan 04, 2018 at 09:45:14AM +0800, "Matthew J. Francis" 
<mjay.francis@gmail.com<mailto:mjay.francis@gmail.com>> wrote:
 I use tracked changes on a regular basis, and would much rather this be
 treated as "maybe difficult but important to get right" than "too hard, so
 don't bother"
Perhaps a middle ground is to give up undo/redo only for the subset when
we know we would crash anyway? And sure, if somebody has the
time/motivation to look at the root cause of the crash (currently I
don't), that's even better.
Regards,
Miklos
Context
   
 
  Privacy Policy |
  
Impressum (Legal Info) |
  
Copyright information: Unless otherwise specified, all text and images
  on this website are licensed under the
  
Creative Commons Attribution-Share Alike 3.0 License.
  This does not include the source code of LibreOffice, which is
  licensed under the Mozilla Public License (
MPLv2).
  "LibreOffice" and "The Document Foundation" are
  registered trademarks of their corresponding registered owners or are
  in actual use as trademarks in one or more countries. Their respective
  logos and icons are also subject to international copyright laws. Use
  thereof is explained in our 
trademark policy.