oox service mess

Noel Power nopower at suse.com
Fri May 31 01:08:31 PDT 2013


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




More information about the LibreOffice mailing list