Hi Matus,
On Sat, 2011-06-25 at 16:21 +0200, Matúš Kukan wrote:
Well, that seems to be true. I haven't look at all yet. There is about
240 of them.
Heh :-) hopefully a ./g grep -6 component_getImple # will show you most
of them rather quickly.
But sometimes there also exist things like in:
http://opengrok.libreoffice.org/xref/components/extensions/source/preload/services.cxx#59
That doesn't seem interesting to me, but I don't know, maybe it
actually does something relevant.
Ooh - you discovered some more junk code - nice. It would be wonderful
if you could hunt down and kill any uses of this 'preload' code - we
don't do OEM preloads, similarly we don't have product registration
either so killing both of these components and their related scp2/ would
be nice:
STD_LIB_FILE( gid_File_Lib_Preload, preload)
SPECIAL_COMPONENT_LIB_FILE( gid_File_Lib_Productregistration, productregistration.uno )
would help to shrink the codebase, distributed binary size and compile
time.
And default is: throw loader::CannotActivateFactoryException.
There always has to be some function.
Ok - but lets just not require this. AFAICS there is no good reason not
to default to the C++ / current-language-binding-name for that.
So, if CPPU_CURRENT_LANGUAGE_BINDING_NAME can be also defined in
shlib, we could use that directly to set the variable.
Right, it should be:
cppu/inc/uno/lbnames.h:#define CPPU_CURRENT_LANGUAGE_BINDING_NAME CPPU_STRINGIFY( CPPU_ENV )
I may be missing something but if not I'd just remove
component_getImplementationEnvironment if it is not doing something
special and set the variable directly in shlib.
I don't think you're missing anything :-) Also I've never seen this
'getImplementationEnvironmentExt' method used - and it is another pretty
pointless (slowish) dlsym lookup on activating a component - it seems to
be the case that this is to allow people to have a different language
for several components they might export.
For 4.0 I think we want a single entry point, and if we want this
goodness, surely we can add it to the XML annotation more cleanly, I've
added it to the wiki page to track.
Thanks,
Michael.
--
michael.meeks@novell.com <><, Pseudo Engineer, itinerant idiot
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.