office-gobmx/sw/CppunitTest_sw_core_text.mk
Miklos Vajna 515bf5d4af tdf#148683 sw: fix crash on deleting text with redlining enabled, but hidden
Regression from commit 32902f66e7
(sw_redlinehide: make layout based Show/Hide mode the default,
2018-11-30), deleting some text in the middle of the paragraph with the
bugdoc results in an assertion failure in the SwDrawTextInfo ctor.

Normally this doesn't happen on text deletion as we already have a
mechanism for truncating no longer needed lines in
SwTextFrame::Format_(), though that only checks the length of the
current line.

Fix the problem by extending this mechanism to also check the remaining
lines: if change tracking is on and the total of all line lengths is
more than the string length of the text frame, then time to
re-calculate.

It seems this is not needed in practice when redlining is disabled,
though we might want to enable this for the non-redline case as well in
the future.

Change-Id: Iede03e11daceb3c2b614a301e21560b075a60c01
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133620
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
2022-04-29 20:59:50 +02:00

74 lines
1.8 KiB
Makefile

# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*-
#*************************************************************************
#
# This file is part of the LibreOffice project.
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
#*************************************************************************
$(eval $(call gb_CppunitTest_CppunitTest,sw_core_text))
$(eval $(call gb_CppunitTest_use_common_precompiled_header,sw_core_text))
$(eval $(call gb_CppunitTest_add_exception_objects,sw_core_text, \
sw/qa/core/text/text \
))
$(eval $(call gb_CppunitTest_use_libraries,sw_core_text, \
comphelper \
cppu \
cppuhelper \
editeng \
sal \
sfx \
svl \
sw \
swqahelper \
test \
tl \
unotest \
utl \
vcl \
))
$(eval $(call gb_CppunitTest_use_externals,sw_core_text,\
boost_headers \
libxml2 \
))
$(eval $(call gb_CppunitTest_set_include,sw_core_text,\
-I$(SRCDIR)/sw/inc \
-I$(SRCDIR)/sw/source/core/inc \
-I$(SRCDIR)/sw/source/core/text \
-I$(SRCDIR)/sw/source/uibase/inc \
-I$(SRCDIR)/sw/qa/inc \
$$(INCLUDE) \
))
$(eval $(call gb_CppunitTest_use_api,sw_core_text,\
udkapi \
offapi \
oovbaapi \
))
$(eval $(call gb_CppunitTest_use_ure,sw_core_text))
$(eval $(call gb_CppunitTest_use_vcl,sw_core_text))
$(eval $(call gb_CppunitTest_use_rdb,sw_core_text,services))
$(eval $(call gb_CppunitTest_use_custom_headers,sw_core_text,\
officecfg/registry \
))
$(eval $(call gb_CppunitTest_use_configuration,sw_core_text))
$(eval $(call gb_CppunitTest_use_uiconfigs,sw_core_text, \
modules/swriter \
))
$(eval $(call gb_CppunitTest_use_more_fonts,sw_core_text))
# vim: set noet sw=4 ts=4: