]> git.lyx.org Git - features.git/commit
Handle properly undo groups in embedded work areas
authorJean-Marc Lasgouttes <lasgouttes@lyx.org>
Wed, 13 Dec 2017 09:38:47 +0000 (10:38 +0100)
committerJean-Marc Lasgouttes <lasgouttes@lyx.org>
Wed, 13 Dec 2017 09:46:54 +0000 (10:46 +0100)
commit8b107f0490e61b4390e925f08d21661ef50d6f49
tree76341d2a6ceca54713fe1fc91a64ee49c877840e
parent4d0c1c030c8e5c0d726410c7b7b72e54d963e43f
Handle properly undo groups in embedded work areas

When a buffer is in an embedded work area (adv. find&replace), it is
not found by BufferList:::exists(), and therefore the undo group
created in GuiApplication::dispatch and in the handling of
LFUN_COMMAND_SEQUENCE will not be closed.. Crashes can ensue, as
described in Ubuntu bug:
https://bugs.launchpad.net/bugs/1737429

The solution is to introduce BufferList::isInternal and act on it.

Fixes bug #10847.
src/BufferList.cpp
src/BufferList.h
src/Undo.cpp
src/frontends/qt4/GuiApplication.cpp