Mike Shaver wrote:
> So NSRegisterSelfProcPtr would become:
>
> typedef NS_CALLBACK(NSRegisterSelfProcPtr)
> (nsIComponentManager *aCompMgr, nsIFile *aPath,
> const char *registryLocation, const char *componentType,
> const nsModuleComponentInfo *info);
>
> and NSUnregisterSelfProcPtr would become:
>
> typedef NS_CALLBACK(NSUnregistrSelfProcPtr)
> (nsIComponentManager *aCompMgr, nsIFile *aPath,
> const char *registryLocation, const nsModuleComponentInfo *info);
>
> Are there any objections to that? It'll let things like nsUConvModule
> use the generic factory and nsIClassInfo infrastructure much more
> easily, and it seems like it's generally the right thing.
I've basically got this working now (after a few false starts last
night), so it will take a much more compelling argument than before to
keep me from doing it. =)
Also, I'm going to need reviewers and super-reviewers for a relatively
large change. The files in question are:
embedding/browser/build/nsWebBrowserModule.cpp
extensions/access-builtin/accessproxy/nsAccessProxyRegistration.cpp
extensions/cookie/nsCookieHTTPNotify.cpp
extensions/cookie/nsCookieHTTPNotify.h
extensions/transformiix/build/XSLTProcessorModule.cpp
extensions/xmlextras/build/src/nsXMLExtrasModule.cpp
htmlparser/src/nsParserModule.cpp
intl/uconv/public/nsICharsetConverterManager.h
intl/uconv/src/nsMacRomanToUnicode.h
intl/uconv/src/nsUConvModule.cpp
intl/uconv/src/nsUTF8ToUnicode.h
intl/uconv/src/nsUnicodeToCP1252.h
intl/uconv/src/nsUnicodeToISO88591.h
intl/uconv/src/nsUnicodeToUTF8.h
js/src/xpconnect/loader/mozJSComponentLoader.cpp
js/src/xpconnect/tests/components/xpctest_calljs.cpp
js/src/xpconnect/tests/components/xpctest_module.cpp
js/src/xpconnect/tests/components/xpctest_multiple.cpp
mailnews/import/eudora/src/nsEudoraFactory.cpp
mailnews/import/oexpress/nsOEFactory.cpp
mailnews/import/outlook/src/nsOutlookFactory.cpp
mailnews/import/text/src/nsTextFactory.cpp
modules/plugin/test/npsimple.cpp
modules/plugin/testevents/npevents.cpp
netwerk/build/nsNetModule.cpp
view/src/nsViewFactory.cpp
xpcom/appshell/nativeApp/nsCNativeAppModule.cpp
xpcom/base/nsISupportsUtils.h
xpcom/build/nsXPComInit.cpp
xpcom/components/MANIFEST_IDL
xpcom/components/Makefile.in
xpcom/components/makefile.win
xpcom/components/nsGenericFactory.cpp
xpcom/components/nsGenericFactory.h
xpcom/components/nsIClassInfo.idl
xpcom/components/nsIGenericFactory.h
xpcom/components/nsNativeComponentLoader.cpp
xpcom/sample/nsSample.cpp
xpcom/sample/nsSampleModule.cpp
xpcom/sample/nsTestSample.cpp
xpfe/appshell/public/nsICmdLineHandler.idl
xpinstall/src/nsSoftwareUpdate.cpp
Most of them are very small changes (some just to fix warnings, because
I was having trouble sorting out my errors and warnings), though the
xpcom/base/nsISupportsUtils.h and xpcom/components/ns*Factory* changes
are pretty major. Also, the nsUConvModule.cpp and nsParserModule.cpp
changes are somewhat large, since I ended up basically rewriting the
factory/module logic there.
If you're willing to help out with the review task, please add yourself
to 67699 so I can find all my wonderful volunteers when I'm ready to hit
the tree (soon).
Mike