office-gobmx/writerfilter
László Németh 73696a0122 tdf#146955 DOCX import: fix SAX exception with footnotes
(Likely broken) DOCX documents exported by Writer raised a SAX
exception, when PopFootOrEndnote() tried to access to a
not-existent footnote, because PushFootOrEndnote() failed to
create that.

Note: the original ODT contains hundreds of frames, and
these and the text content of the document have been put
into the TOC section during Writer's DOCX export, resulting a
broken document.

Regression from commit 9b39ce0e66
"tdf#76260 DOCX import: fix slow footnote import".

Change-Id: I9e32feb0cae778a87f034a8b5c41989fec90899d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134934
Tested-by: Jenkins
Reviewed-by: László Németh <nemeth@numbertext.org>
2022-05-26 20:26:13 +02:00
..
documentation
inc
qa sw content controls, picture: add DOCX filter 2022-05-20 10:09:19 +02:00
source tdf#146955 DOCX import: fix SAX exception with footnotes 2022-05-26 20:26:13 +02:00
util
CppunitTest_writerfilter_dmapper.mk
CppunitTest_writerfilter_filters_test.mk
CppunitTest_writerfilter_misc.mk
CppunitTest_writerfilter_rtftok.mk
CustomTarget_source.mk
IwyuFilter_writerfilter.yaml
Library_writerfilter.mk
Makefile
Module_writerfilter.mk
README.md

Import Filters for LibreOffice Writer

The writerfilter module contains import filters for Writer, using its UNO API.

Import filter for DOCX and RTF.

  • Module contents

    • documentation: RNG schema for the OOXML tokenizer, etc.
    • inc: module-global headers (can be included by any files under source)
    • qa: cppunit tests
    • source: the filters themselves
    • util: UNO passive registration config
  • Source contents

    • dmapper: the domain mapper, hiding UNO from the tokenizers, used by DOCX and RTF import
      • The incoming traffic of dmapper can be dumped into an XML file in /tmp in dbgutil builds, start soffice with the SW_DEBUG_WRITERFILTER=1 environment variable if you want that.
    • filter: the UNO filter service implementations, invoked by UNO and calling the dmapper + one of the tokenizers
    • ooxml: the docx tokenizer
    • rtftok: the rtf tokenizer