Date: prev next · Thread: first prev next last
2013 Archives by date, by thread · List index


On 30/05/13 17:44, Stephan Bergmann wrote:

The problem is that sc/util/scfilt.component claims that the scfilt library contains an implementation of the com.sun.star.sheet.FilterFormulaParser service with implementation name "com.sun.star.comp.oox.xls.FormulaParser", but scfilt_component_getFactory does not actually support it.
grr I missed than when I was locally grepping, ok now I understand

The ScParserFactoryMap ctor (sc/source/core/tool/formulaparserpool.cxx) iterates over all known implementations of the com.sun.star.sheet.FilterFormulaParser service and tries to instantiate each one. It fails for this non-exisiting implementation (which also appears to be the only one), but that is silently ignored through a local try--catch.

I have no idea whether or not that effectively empty list of FilterFormulaParser implementations in the ScParserFactoryMap ctor is a problem or not, as I have not found a way to trigger that code, and neither Moggi nor Kohei new exactly how to do that either
hmm I confess I an not quite sure how/when/why the implementatation was removed, I remember moving the implementation ( like you mentioned ) perhaps I missed something in the move that made it seem like the service could no longer be instantiated ( and then someone else removed it ) I don't know, it's even possible I removed it myself ( do you know from whatever archaeology you already did ? )
. I'm putting Eike on cc, maybe he can shed some light once he's back from vacation.

Anyway, if that OOXMLFormulaParser implementation should be gone for good, the dangling reference to it should be remove from sc/util/scfilt.component.
I still believe the oox formula parser thingy was filter specific ( at least it's name suggests that ) and if most likely did deserved to die. The ScParserFactoryMap foo/goo introduces some doubt though about whether indeed it should have been killed or not.

Noel



Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.