XLegacyFastParser - Errors

Michael Meeks michael.meeks at collabora.com
Mon Jul 11 08:18:41 UTC 2016


Hi Mohammed,

On Mon, 2016-07-11 at 10:22 +0530, Mohammed Abdul Azeem wrote:
> Our new parser is failing at couple of other places. After much
> debugging, I've identified the causes for these failures.

	Great work.

> 1. SigningTest::testOOXMLPartial
> The xml file parsed by ImplXMLSignatureListener filter is big and it
> activates threading. When threading is enabled our namespace handler
> fails, since namespace declarations passed are not in sync with the
> elements and there is no way to identify which elements these
> declarations belong to.

	Right ! of course.

> I think the solution would be to somehow include these declarations in
> the event and then pass these declarations before calling
> startUnknownElement.

	Yep ; that makes sense; we'll want to emit them in the event consuming
thread.

> I copied the signature xml file and added it to our test case and it
> fails.

	Good; nice to have unit tests of course.

> 
> 2. SwUiWriterTest::testAutoCorr
> It fails with an uncaught exception of type
> com.sun.star.container.NoSuchElementException.
> It fails at sw/qa/extras/uiwriter/uiwriter.cxx:1034, so I assume these
> statements
> pWrtShell->Insert("Bolt");
> pWrtShell->AutoCorrect(corr, cIns);
> at line 1032 and 1033 is failing for some reason.
> During the execution of those statements, LegacyParser is called with
> these two filters as document handlers.
> com.sun.star.comp.Writer.XMLStylesImporter
> com.sun.star.comp.Writer.XMLContentImporter

A quick git grep:

xmloff/source/transform/OOo2Oasis.cxx-OOO_IMPORTER( XMLWriterContentImportOOO,
xmloff/source/transform/OOo2Oasis.cxx:
"com.sun.star.comp.Writer.XMLContentImporter",
xmloff/source/transform/OOo2Oasis.cxx-
"com.sun.star.comp.Writer.XMLOasisContentImporter" )

	Suggests that there is some sort of wrapper / renaming (?)

sw/source/filter/xml/xmlimp.cxx-extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface* SAL_CALL
sw/source/filter/xml/xmlimp.cxx:com_sun_star_comp_Writer_XMLOasisContentImporter_get_implementation(css::uno::XComponentContext* context,
sw/source/filter/xml/xmlimp.cxx-        css::uno::Sequence<css::uno::Any> const &)

	Might be a good place to look,

	Nice work,

		Michael.

-- 
michael.meeks at collabora.com <><, GM Collabora Productivity
 Skype: mmeeks, Google Hangout: mejmeeks at gmail.com
 (M) +44 7795 666 147 - timezone usually UK / Europe



More information about the LibreOffice mailing list