Fixes the following:

154047
This change cleans up the category manager in hopes to freeze it for 1.1 final.  This change removes dead and unsupported methods from the interface as well as removes the C++ code from the interface.  This should land for 1.1b since users of the current category manager will have to update their components.

157597
Make embedding base and examples use XPCOM Glue
This change makes our embedding samples use the XPCOM glue.

157625
nsLocalFile::Remove's file pointer is sometimes null afte...
This fixes a crash when we dereference null.  It is a bandaide fix as the real problems involves retooling the directory enumerator.

157801
This fixes a terrible state which you can get into whereby XPCOM will fail to startup regardless of what you do.  The fix is to cause autoreg to happen if the component registry (compreg.dat) is not found.

r/sr=alecf@netscape.com, rpotts@netscape.com.  a=scc@mozilla.org


git-svn-id: svn://10.0.0.236/trunk@125444 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
dougt%netscape.com
2002-07-18 05:09:10 +00:00
parent dfa9bd5ea2
commit ecdd8ab65f
29 changed files with 211 additions and 227 deletions

View File

@@ -22,6 +22,10 @@
* Contributor(s):
*/
#ifdef XPCOM_GLUE
#include "nsXPCOMGlue.h"
#endif
#include "nsIServiceManager.h"
#include "nsIComponentRegistrar.h"
#include "nsIAppStartupNotifier.h"
@@ -83,6 +87,11 @@ nsresult NS_InitEmbedding(nsILocalFile *mozBinDirectory,
if (!sXPCOMInitializedFlag)
#endif
{
#ifdef XPCOM_GLUE
// TODO: Need to be smarter about where exactly the xpcom library is.
XPCOMGlueStartup(nsnull);
#endif
// Initialise XPCOM
NS_InitXPCOM2(&sServiceManager, mozBinDirectory, appFileLocProvider);
@@ -176,5 +185,8 @@ nsresult NS_TermEmbedding()
NS_ShutdownXPCOM(sServiceManager);
#endif
#ifdef XPCOM_GLUE
XPCOMGlueShutdown();
#endif
return NS_OK;
}