office-gobmx/sw/CppunitTest_sw_odfexport.mk
Michael Stahl d81d104833 sfx2: related tdf#56270: loss of embedded objects imported from DOCX
After the import some of these are kept in RUNNING state.  For Math
objects imported from MathType3 OLEs in particular, first a new
Math object is created and stored to the XStorage, only then is the
MathType3 stream imported.  This means the Math object is modified and
contains data that must be stored.

The problem is then that SfxObjectShell::ImportFrom() simply calls
setModified(false), clearing the flag without storing the object.

For Flat ODF export we lose all the objects that are cached in sw's
SwOLELRUCache; for the bugdoc something more inexplicable happens for
ODT export where we lose "Object 214" (which is the first one in the
cache) but no other ones.

(The main difference is that for ODF there is an optimization to copy the
embedded object's storage without loading the object, but for Flat ODF
every object must be loaded and exported.)

(regression from 83777cd6e0f3f1a4458af896fd13344c696ecb1e)

Change-Id: Id1474fba9f4da2d5247c7ff4dc6819ddb9829fe8
2016-02-12 18:54:33 +01:00

99 lines
2.6 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_odfexport))
$(eval $(call gb_CppunitTest_add_exception_objects,sw_odfexport, \
sw/qa/extras/odfexport/odfexport \
))
$(eval $(call gb_CppunitTest_use_libraries,sw_odfexport, \
comphelper \
cppu \
cppuhelper \
sal \
sw \
test \
tl \
unotest \
utl \
vcl \
$(gb_UWINAPI) \
))
$(eval $(call gb_CppunitTest_use_externals,sw_odfexport,\
boost_headers \
libxml2 \
))
$(eval $(call gb_CppunitTest_set_include,sw_odfexport,\
-I$(SRCDIR)/sw/inc \
-I$(SRCDIR)/sw/source/core/inc \
-I$(SRCDIR)/sw/qa/extras/inc \
$$(INCLUDE) \
))
$(eval $(call gb_CppunitTest_use_api,sw_odfexport,\
offapi \
udkapi \
))
$(eval $(call gb_CppunitTest_use_ure,sw_odfexport))
$(eval $(call gb_CppunitTest_use_vcl,sw_odfexport))
$(eval $(call gb_CppunitTest_use_components,sw_odfexport,\
basic/util/sb \
comphelper/util/comphelp \
configmgr/source/configmgr \
embeddedobj/util/embobj \
filter/source/config/cache/filterconfig1 \
filter/source/storagefilterdetect/storagefd \
filter/source/odfflatxml/odfflatxml \
filter/source/xmlfilterdetect/xmlfd \
filter/source/xmlfilteradaptor/xmlfa \
framework/util/fwk \
i18npool/util/i18npool \
linguistic/source/lng \
oox/util/oox \
package/source/xstor/xstor \
package/util/package2 \
sax/source/expatwrap/expwrap \
sfx2/util/sfx \
starmath/util/sm \
svl/source/fsstor/fsstorage \
svtools/util/svt \
sw/util/sw \
sw/util/swd \
toolkit/util/tk \
ucb/source/core/ucb1 \
ucb/source/ucp/file/ucpfile1 \
unotools/util/utl \
unoxml/source/service/unoxml \
uui/util/uui \
writerfilter/util/writerfilter \
$(if $(filter DESKTOP,$(BUILD_TYPE)),xmlhelp/util/ucpchelp1) \
xmloff/util/xo \
chart2/source/chartcore \
chart2/source/controller/chartcontroller \
sc/util/sc \
sd/util/sd \
svx/util/svxcore \
xmloff/source/transform/xof \
xmlscript/util/xmlscript \
))
$(eval $(call gb_CppunitTest_use_custom_headers,sw_odfexport,\
officecfg/registry \
))
$(eval $(call gb_CppunitTest_use_configuration,sw_odfexport))
# vim: set noet sw=4 ts=4: