125 Commits

Author SHA1 Message Date
shaver%mozilla.org
d247779da6 remove useless nsIModule paste (#22922), add debug() for JS components, use categories for component loaders, XPCONNECT_STANDALONE (#39875), r=dp,waterson a=brendan
git-svn-id: svn://10.0.0.236/trunk@70903 18797224-902f-48f8-a5cc-f745e15eee43
2000-05-26 04:56:23 +00:00
sfraser%netscape.com
c12dfc2263 Change the XPCOM autoreg observer to provide more useful strings.
git-svn-id: svn://10.0.0.236/trunk@70235 18797224-902f-48f8-a5cc-f745e15eee43
2000-05-17 01:53:50 +00:00
rayw%netscape.com
126369b22d Added an observer to autoregistration, which allows a callback during that
part of startup to advance a progress display, per bug 35866.

I did not get the code actually reviewed, but I discussed it, and tested it
for breakage.  Other developers must register for the observer before it can
be ascertained whether it performs as advertized.


git-svn-id: svn://10.0.0.236/trunk@69818 18797224-902f-48f8-a5cc-f745e15eee43
2000-05-15 19:28:12 +00:00
dbaron%fas.harvard.edu
d2082dfc31 Count some classes for the leak stats. r=warren@netscape.com
git-svn-id: svn://10.0.0.236/trunk@69783 18797224-902f-48f8-a5cc-f745e15eee43
2000-05-15 13:10:18 +00:00
rayw%netscape.com
90d0498159 Per bug 3690:
Added new functions to the registry for reading / writing byte arrays
of binary content and escaping registry keys that contain binary
content.  Modified code which reads/writes location of dll or javascript
for components to use new ReadBytesUTF8/WriteBytesUTF8 and which uses
or reads the keys to use EscapeKey and UnescapeKey.

r=dveditz


git-svn-id: svn://10.0.0.236/trunk@69307 18797224-902f-48f8-a5cc-f745e15eee43
2000-05-12 01:24:36 +00:00
dp%netscape.com
5029b61046 - Using nsILocalFile::AppendRelativePath() to get components that live
under subdirs of component directory to work
- Fixing UnregisterComponent() to take a registryLocation as opposed
to a misinterpretted fullpathname


git-svn-id: svn://10.0.0.236/trunk@68367 18797224-902f-48f8-a5cc-f745e15eee43
2000-05-05 06:37:39 +00:00
rayw%netscape.com
2702bf5ff6 Bug #37058
Added a simple test to CreateInstance, similar to the existing test in
GetService in the service manager, to prevent instances from being created
during shutdown.  We detected no calls to CreateInstance in normal code we
tested during shutdown.  If such occur, the fix is NOT to back out the
check, but rather to eliminate the calls to CreateInstance either by
registering a shutdown observer which gets called just before the
shutdown, or creating the instance before shutdown.

r=scc


git-svn-id: svn://10.0.0.236/trunk@68281 18797224-902f-48f8-a5cc-f745e15eee43
2000-05-04 23:11:30 +00:00
mkaply%us.ibm.com
f32dd26a1b # 34082
r= dougt@netscape.com
OS/2 bring up continues - Adding PR_CALLBACKs for VisualAge Compiler


git-svn-id: svn://10.0.0.236/trunk@67931 18797224-902f-48f8-a5cc-f745e15eee43
2000-05-02 22:38:04 +00:00
sgehani%netscape.com
c23aaa32b2 Fix Autoregistration bustage in the context of apps using XPCOM outside Mozilla (e.g. the installer stubs).
git-svn-id: svn://10.0.0.236/trunk@67807 18797224-902f-48f8-a5cc-f745e15eee43
2000-05-02 00:54:11 +00:00
jband%netscape.com
95a3361f4b make the component manager's AutoRegister call the interface info manager's AutoRegisterInterfaces
git-svn-id: svn://10.0.0.236/trunk@67086 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-25 05:11:30 +00:00
shaver%mozilla.org
762347617a add CurrentItemInPlaceUTF8 to reduce startup alloc by 2.3M(!), r=brendan
git-svn-id: svn://10.0.0.236/trunk@67008 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-25 01:11:08 +00:00
dp%netscape.com
1f21d972f7 Implemented component unregistration.
git-svn-id: svn://10.0.0.236/trunk@66251 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-18 05:25:05 +00:00
dp%netscape.com
33517602f4 Preventing empty progid causing registration problems.
git-svn-id: svn://10.0.0.236/trunk@64110 18797224-902f-48f8-a5cc-f745e15eee43
2000-03-25 06:57:25 +00:00
dp%netscape.com
59bafd4cd7 Enabling PR_LOG for release builds from native component loader.
Tuning log format to help analysis.


git-svn-id: svn://10.0.0.236/trunk@62669 18797224-902f-48f8-a5cc-f745e15eee43
2000-03-11 22:44:51 +00:00
dp%netscape.com
ca167391c0 bug# 29685 Eliminating unneccessary hits to registry to improve startup. Improving on previous fix. Thanks to jband's help. r=jband,dveditz a=jevering
git-svn-id: svn://10.0.0.236/trunk@62101 18797224-902f-48f8-a5cc-f745e15eee43
2000-03-03 01:48:41 +00:00
jband%netscape.com
fa256028e2 back out dp's unsafe optimization that caused crash on first run
git-svn-id: svn://10.0.0.236/trunk@62065 18797224-902f-48f8-a5cc-f745e15eee43
2000-03-02 19:57:23 +00:00
dp%netscape.com
694badc5aa Eliminating 11 hits to the registry for Progid if we already have
prepopulated the registry. This improves startup performance.
a=jevering, r=dveditz


git-svn-id: svn://10.0.0.236/trunk@62018 18797224-902f-48f8-a5cc-f745e15eee43
2000-03-02 02:13:11 +00:00
dveditz%netscape.com
4eddb0ee15 Bug 23941 speed up install on Mac, r=cathleen, a=jar;
Bug 12817 no Autoreg (in optimized builds) unless xpinstall detects flag indicating install has happened or build number changed, r=dp, a=jar;
Bug 23859 add wstring API to nsIRegistry for profile manager/i18n, r=gayatrib, a=jar;


git-svn-id: svn://10.0.0.236/trunk@61370 18797224-902f-48f8-a5cc-f745e15eee43
2000-02-20 03:12:59 +00:00
dveditz%netscape.com
9f13883da5 registry speed ups (part of 12817)
git-svn-id: svn://10.0.0.236/trunk@61112 18797224-902f-48f8-a5cc-f745e15eee43
2000-02-16 07:45:20 +00:00
dveditz%netscape.com
121072fe86 New wstring nsIRegistry interface, bug 23859;
new version registry name for mozilla, bug 10533;
log now created by install wizards too, bug 26309;
downloaded file cleanup moved into manager, bug 24249;
scaffolding for bug 12817 and 12361 (conditional autoreg)


git-svn-id: svn://10.0.0.236/trunk@60771 18797224-902f-48f8-a5cc-f745e15eee43
2000-02-15 01:32:12 +00:00
dougt%netscape.com
834bfb40d0 Fix for bug 25941. r=dp,scc.
git-svn-id: svn://10.0.0.236/trunk@59376 18797224-902f-48f8-a5cc-f745e15eee43
2000-02-01 07:54:46 +00:00
dougt%netscape.com
2099aed8f0 Renaming IsContainedIn to contains()
git-svn-id: svn://10.0.0.236/trunk@59129 18797224-902f-48f8-a5cc-f745e15eee43
2000-01-28 23:54:26 +00:00
dougt%netscape.com
9b70d475ce Giving these files Purify loving. r=dveditz
git-svn-id: svn://10.0.0.236/trunk@59112 18797224-902f-48f8-a5cc-f745e15eee43
2000-01-28 23:37:27 +00:00
dougt%netscape.com
714da09a59 Landing nsIFile.
git-svn-id: svn://10.0.0.236/trunk@58490 18797224-902f-48f8-a5cc-f745e15eee43
2000-01-24 21:28:28 +00:00
dp%netscape.com
40adb96b8f Implementing access to servicemanager from component manager via
nsIInterfaceRequestor. r=scc


git-svn-id: svn://10.0.0.236/trunk@57455 18797224-902f-48f8-a5cc-f745e15eee43
2000-01-11 22:54:46 +00:00
edburns%acm.org
1af32fc433 I know it's unorthodox to do a top level checkin like this, but I've got so many files
in so many different directories, that I think it's the best way.
I've pulled and clobber_all'd my tree and got

r=dp

on this checkin.

Here are the touched files:

M mozilla/embedding/browser/activex/src/control/MozillaBrowser.cpp
M mozilla/embedding/browser/activex/src/control/MozillaBrowser.h
M mozilla/js/src/xpconnect/shell/xpcshell.cpp
M mozilla/netwerk/protocol/res/src/nsResProtocolHandler.cpp
M mozilla/xpcom/build/nsXPComInit.cpp
M mozilla/xpcom/components/nsComponentManager.cpp
M mozilla/xpcom/components/nsIServiceManager.h
M mozilla/xpcom/components/nsServiceManager.cpp
M mozilla/xpcom/io/nsSpecialSystemDirectory.cpp
M mozilla/xpcom/io/nsSpecialSystemDirectory.h
M mozilla/xpcom/tests/TestBuffers.cpp
M mozilla/xpcom/tests/TestPipes.cpp
M mozilla/xpcom/tests/TestShutdown.cpp
M mozilla/xpcom/tests/windows/TestHelloXPLoop.cpp
M mozilla/xpcom/tools/registry/regExport.cpp
M mozilla/xpcom/tools/registry/regxpcom.cpp
M mozilla/xpinstall/stub/xpistub.cpp
M mozilla/webshell/embed/ActiveX/MozillaBrowser.cpp
M mozilla/webshell/embed/ActiveX/MozillaBrowser.h
M mozilla/webshell/tests/viewer/nsMacMain.cpp
M mozilla/webshell/tests/viewer/nsPhMain.cpp
M mozilla/webshell/tests/viewer/nsWinMain.cpp
M mozilla/webshell/tests/viewer/unix/gtk/nsGtkMain.cpp
M mozilla/xpfe/appshell/src/nsFileLocations.cpp
M mozilla/xpfe/bootstrap/nsAppRunner.cpp

The heart of this checkin is a change in the signature and symantics
of NS_InitXPCOM.

The new signature is

extern NS_COM nsresult
NS_InitXPCOM(nsIServiceManager* *result, nsFileSpec* binDirectory);

I filed a bug for this problem:

b=23157

The original manifestation of this bug was in mozilla/netwerk/protocol/res/src/nsResProtocolHandler.cpp It used the current process directory to find resources, which is not correct when the current process is not mozilla.exe.

I have added a new type to nsSpecialSystemDirectory, Moz_BinDirectory, and made nsResProtocolHandler use that value.


git-svn-id: svn://10.0.0.236/trunk@56916 18797224-902f-48f8-a5cc-f745e15eee43
2000-01-06 01:05:13 +00:00
blizzard%redhat.com
1f1ce365e8 Change nsComponentManager::ProgIDToCLSID to nsComponentManager::ProgIDToClassID as per bug #3579. Checking in for sford. r=scc,r=blizzard
git-svn-id: svn://10.0.0.236/trunk@56630 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-30 22:03:58 +00:00
shaver%netscape.com
44195d4a3a fix leaf of registryName (#21068, r=beard, a=leaf)
git-svn-id: svn://10.0.0.236/trunk@55777 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 00:01:46 +00:00
dp%netscape.com
9b0cfefb70 NS_GET_IID(). Thanks to patch from pp@ludasdesign.com r=dp@netscape.com
git-svn-id: svn://10.0.0.236/trunk@54812 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 23:36:32 +00:00
scc%netscape.com
7011fe7fc1 clear out the result in |do_CreateInstance| on error. r=pinkerton
git-svn-id: svn://10.0.0.236/trunk@54202 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 23:01:35 +00:00
beard%netscape.com
fed38c19f8 fix C string leak, bug=18699, r=shaver
git-svn-id: svn://10.0.0.236/trunk@53951 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 02:14:23 +00:00
fur%netscape.com
07cec86849 Return NS_ERROR_FACTORY_NOT_REGISTERED, not NS_ERROR_FAILURE, if a non-existent ProgID is used to instantiate a component. Also, don't ignore CLSID parse errors. R: dp
git-svn-id: svn://10.0.0.236/trunk@53467 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 15:41:40 +00:00
shaver%netscape.com
6896473ece - NS_ERROR_FACTORY_REGISTER_AGAIN for deferring registration of a module until
later in the autoreg cycle.
- teach native component loader about deferred components
- add nsIComponentLoader::registerDeferredComponents
- teach component manager about deferred components
- made nsID::Parse take a |const char *| instead of a simple |char *|.
- move release of XPTI singletons until _after_ shutting down the component
  manager to prevent re-initialization during JS component shutdown.
- category manager work: really delete from reg, start on enumeration
- use nsXPIDLCString instead of autoStringFree.
- fix nsRegistry to use allocator properly.
- cleaner memory management in nsFactoryEntry.
- capitalization fixed in nsIComponentLoader.idl
- clean up loader creation logic
- remove/disable lots of DEBUG_shaver noise
- added (disabled) warning about NSGetFactory usage
- move .so and .shlb higher up in the ValidDllExtensions list to marginally
  speed up registration.
- added nsDll::GetRegistryLocation API
- properly export nsSupportsArray.h
- capitalization fixes in nsIEnumerator.idl
- added deferral to nsSample.js


git-svn-id: svn://10.0.0.236/trunk@53047 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 00:28:34 +00:00
scc%netscape.com
9fec22a94d Added |do_CreateInstance()|, |do_GetService()| both by CID and ProgID. See bugs #17364, #17448. r={travis, dp}
git-svn-id: svn://10.0.0.236/trunk@53045 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 00:14:54 +00:00
dmose%mozilla.org
0efb7c174c updated xPL license boilerplate to v1.1, a=chofmann@netscape.com,r=endico@mozilla.org
git-svn-id: svn://10.0.0.236/trunk@52910 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-06 03:43:54 +00:00
scc%netscape.com
65b7cd0c03 changed the mechanism underlying |do_QueryInterface| to decouple |nsCOMPtr| from services, |nsIWeakReference|, etc. This change fixes bug #17364, and paves the way for making |nsCOMPtr| cooperate with services. r=valeski (additional builds done by dmose and syd)
git-svn-id: svn://10.0.0.236/trunk@52346 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-31 00:35:48 +00:00
dp%netscape.com
32ccfffb02 bug#14656 Circular release problem of component manager. Fixed by
adding shutdown() method that gets called before the last
release. Enabled only for dp & shaver until we resolve js coredump.


git-svn-id: svn://10.0.0.236/trunk@51416 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-21 21:34:39 +00:00
scc%netscape.com
38a4215c26 Bug #15292, r=dp. Made the component manager inherit from |nsSupportsWeakReference|, fixed its |QueryInterface()| appropriately, and added casts in two places that became ambiguous now that the component manager had multiple |nsISupports| in it. Now one can hold a weak reference to the component manager using |nsIWeakReference|.
git-svn-id: svn://10.0.0.236/trunk@50853 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-15 21:14:43 +00:00
sfraser%netscape.com
ca68584efa Fixing use of obsolete types for shaver.
git-svn-id: svn://10.0.0.236/trunk@49277 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-29 02:54:18 +00:00
shaver%netscape.com
393d020282 nsIRegistry scriptability and beginning of category support, r=dp,alecf,dveditz a=leaf,chofmann
git-svn-id: svn://10.0.0.236/trunk@49272 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-29 02:35:42 +00:00
dveditz%netscape.com
8964fd9cbf Make sure componentMgr calls NR_ShutdownRegistry(), fixing MLKs and registry corruption from unflushed registry buffers.
r=dp,a=chofmann


git-svn-id: svn://10.0.0.236/trunk@49108 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-26 21:20:21 +00:00
dp%netscape.com
24f11a016d Passing down NS_Shutdown to Unloading of libraries.
git-svn-id: svn://10.0.0.236/trunk@49101 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-26 18:04:27 +00:00
dp%netscape.com
d399f0104e UnloadAll() on non-native loaders.
git-svn-id: svn://10.0.0.236/trunk@48882 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-23 00:14:00 +00:00
dp%netscape.com
7eab9cadfe Enabling xpcom shutdown to call NSCanUnload() on every component.
git-svn-id: svn://10.0.0.236/trunk@48880 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-23 00:01:53 +00:00
waterson%netscape.com
ecac83d9d2 Fix backwards return values on nsIEnumerator::IsDone().
git-svn-id: svn://10.0.0.236/trunk@48471 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-21 01:28:18 +00:00
warren%netscape.com
bc71cc93e8 freed mComponentsDir in nsComponentManager
git-svn-id: svn://10.0.0.236/trunk@48370 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-20 20:53:57 +00:00
dp%netscape.com
103414ae51 Ability for XPCOM to use non-default component registry and component directory
git-svn-id: svn://10.0.0.236/trunk@47809 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-16 19:28:57 +00:00
shaver%netscape.com
d13e0a7104 lose some DEBUG_shaver debugging noise
git-svn-id: svn://10.0.0.236/trunk@47584 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-15 14:45:29 +00:00
dp%netscape.com
84052dc693 Typo fixed. AutoRegisterComponent works again.
git-svn-id: svn://10.0.0.236/trunk@46939 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-11 07:23:28 +00:00
dveditz%netscape.com
04940aa5cb speed startup by avoiding registry look ups that are guaranteed to fail, eliciting worst-case behavior
git-svn-id: svn://10.0.0.236/trunk@46709 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-10 05:27:23 +00:00