Commit Graph

138 Commits

Author SHA1 Message Date
bsmedberg@covad.net
92d9617dd5 Bug 193031 fix category manager to use aPersist parameter. Bug 54639 Category Manager is not thread-safe. Bug 208437 separate threadsafe nsBaseHashtable into super-class nsBaseHashtableMT. r=dougt/alecf I know Sun Workshop builds are still broken... working on it. 2003-06-18 11:26:27 +00:00
dougt@meer.net
2e63d94e9d Stacks nsFactoryEntry's so that we can support overloading factories a bit better. r=darin, a=blizzard, b=204870 2003-05-13 22:50:03 +00:00
alecf@netscape.com
b119b32b00 fix for bug 196210, component manager is malloc-happy:
- use custom non-allocating CID formatter when writing out compreg.dat
- arena allocate category names and keys
- pass around string lengths so we don't keep calling strlen
r=dougt
2003-03-14 05:07:24 +00:00
dougt@netscape.com
54b1236275 Adding debug support to detect reentrant create instance patterns, r+sr=alecf@netscape.com, b=194568 2003-03-12 03:58:33 +00:00
dougt@netscape.com
b9e6f9b823 Converting the file location of the component registry and the xpti manifest file to use the directory service. r=darin, b=191055 2003-03-11 21:36:59 +00:00
dougt@netscape.com
6a0e2d5228 relanding. Add experimental support to the native component loader so that native components can declare what libraries it depends on. (193442)Fixed a bug where we didn't check return from GetLastModification in nsDll::HasChanged. Thank you ajschult@eos.ncsu.edu for pointing out the problem and suggesting a fix. Converted a linear search of compreg entries to be a hash lookup. Also cleaned up the xcdll class. Reviewers= Alec, Darin. 2003-03-05 03:22:12 +00:00
tor@cs.brown.edu
d0bca9a770 Backout of 193442/191415. a=brade,dougt 2003-03-03 21:00:07 +00:00
dougt@netscape.com
bde93f77ba backing out last change - using linear list does not change the start up time. 2003-03-03 03:26:02 +00:00
dougt@netscape.com
d0b57db9ca Reverting mAutoRegEntries hashtable change. I believe it was responsible for the bulk of the 200ms spike. b=195494. 2003-03-03 01:19:58 +00:00
dougt@netscape.com
6f1eaa830d Add experimental support to the native component loader so that native components can declare what libraries it depends on. (193442) Storing the GRE location in a relative way so that we can change GRE versions between launches assuming that they are compatible (191415). Fixed a bug where we didn't check return from GetLastModification in nsDll::HasChanged. Thank you ajschult@eos.ncsu.edu for pointing out the problem and suggesting a fix. Converted a linear search of compreg entries to be a hash lookup. Also cleaned up the xcdll class. Reviewers= Alec, Darin. 2003-02-28 21:30:35 +00:00
dougt@netscape.com
37bab56a32 xpcom is unable to always load .js component file. r=ssu, sr=alecf, a=rjesup, b=190560 build/nsXPComInit.cpp 2003-01-28 22:07:53 +00:00
dougt@netscape.com
013fcc43be Fixes 48888 - xpcom flat file backend. r=dp@netscape.com sr=waterson@netscape.com 2002-06-14 21:33:05 +00:00
seawood@netscape.com
b1412f047f Use the same name for the application profile directory in the registry as the profile manager does.
Bug #146150 r=arougthopher
2002-06-14 05:08:05 +00:00
dp@netscape.com
366a5d8fa7 bug 130381 Using arena for registry prepopulation r=dougt sr=alecf a=asa 2002-05-02 21:25:08 +00:00
dougt@netscape.com
c3e0a303eb 1. Converts callers of nsIComponentManagerObsolete to use
nsIComponentRegistrar.

2. Converts callers of nsComponentManager::AutoRegister to use
nsIComponentRegistrar's autoRegistrar method.

3. Add nsIComponentRegistrar implmentation to nsComponentManagerImpl.

4. Rearrange nsComponentManager.cpp so that related methods are in the same
place.

5. Added a C-style function NS_GetComponentRegistrar so that getting the
registrar is easier in some places.

6. Added a nsISimpleEnumerator interface on PLDHashTableEnumeratorImpl.  in
this way, the same base class can support both old style and new style
enumerations.

7. Fixed a nasty bug where unregistring factories will leave the contract id
hash with a dangling pointer.  Now, when unregister is called we search the
contract id hash for entries which have the given doomned cid and remove them.


Bug 115853.  r=dp@netscape.com, sr=rpotts@netscape.com
2002-01-29 21:22:13 +00:00
dougt@netscape.com
32ebf7f11f nsIComponentManager API Changes (bug 98553)
a) create a new nsIComponentManager with only four functions on it:
CreateInstance CreateInstanceByContractID GetClassInfo GetClassInfoByContractID.

b) rename the old nsIComponentManager to nsIComponentManagerObsolete.

c) fixes callers which use to access the nsIComponentManager for component
registration functionality.  These callers will temporary use the
nsIComponentManagerObsolete interface.

d) Create a new API NS_GetComponentManager() which mirrors the
NS_GetServiceManager()

e) Perserves the old NS_GetGlobalComponentManager().  Note the cast usage.

r/sr = rpotts@netscape.com  alecf@netscape.com  brendan@mozilla.org
2001-12-19 00:12:41 +00:00
kmcclusk@netscape.com
7b5f7fc92b Backing out the fix for Bad use of nsIFile in component manager to fix spell checker. bug 106949 r=jband a=brendan 2001-12-14 01:27:16 +00:00
pete@alphanumerica.com
16bab27c5f b=106949, r=ccarlen, sr=jband
Bad use of nsIFile in component manager

--pete
2001-12-11 03:25:32 +00:00
neeti@netscape.com
a403db330a bug 106466 - Removed nsServiceEntry from ComponentManager, r=dougt, sr=brendan 2001-11-16 13:53:04 +00:00
dp@netscape.com
dcae8da104 bug 108071 Eliminate 4000 calls to malloc by using copy getters of
registry. r=dveditz, sr=sfraser
2001-11-16 02:38:23 +00:00
seawood@netscape.com
74b22d1a32 Landing the rest of the mach-o OSX changes.
Bug #75653 r=cls sr=waterson
2001-10-27 07:38:18 +00:00
neeti@netscape.com
c780999a3e fix for bug 96461 - using PLDHash for ComponentManager,r=shaver@mozilla.org, sr=brendan@mozilla.org 2001-10-23 02:28:12 +00:00
dougt@netscape.com
0c3d8a495f Allows a QI from nsIServiceManager to nsIServiceManagerObsolete. b=105136, r=beard, sr=darin 2001-10-16 23:39:20 +00:00
dougt@netscape.com
71f4514b1a API Freeze for nsIServiceManager r=shaver@mozilla.org, sr=rpotts@netscape.com bug 99147 2001-10-16 03:35:52 +00:00
gerv@gerv.net
58d409fba9 Relicensing Round 1, Take 2. Most C-like NPL files -> NPL/GPL/LGPL. Bug 98089. 2001-09-28 20:14:13 +00:00
dp@netscape.com
59d34d9c3e bug 100682 temporary way to get service without creating a new
one. This will get fixed the right way along with other api changes
for component and servicemanager r=sfraser/dougt, sr=mscott
2001-09-25 00:38:44 +00:00
dougt@netscape.com
1bdc7c1921 Merge ServiceManager and ComponentManager. Bug 96457. r=dp@netscape.com, sr=wat
erson@netscape.com
2001-09-06 21:13:11 +00:00
valeski@netscape.com
ab37c5705a r=dbaron, sr=dougt. 97667. nsIInterfaceRequestor is now frozen. nsIInterfaceRequestorUtils.h is now required if you want to use do_GetInterface() for convenience. The two were split because the stuff that is now in nsIInterfaceRequestorUtils.h wasn't ready for freezing. Also, .idl files should just contain interface defs anyway. 2001-09-05 21:28:38 +00:00
dp@netscape.com
dd811c5828 bug# 96701 Using an array instead of hash table to store loader
data. Storing index into loader data array rather than allocating and
copying the type string. r=dougt, sr=jband, a=asa
2001-08-30 14:10:41 +00:00
dp@netscape.com
10f457b697 bug 94883 nsCreateInstanceByContractID() performance improvement 2001-08-21 22:42:35 +00:00
av@netscape.com
ad5872d520 Backing out existing fix for 87193 -- r=mstolz, sr=shaver, attinasi 2001-07-17 02:24:16 +00:00
mstoltz@netscape.com
8ba8c57f92 Checking in bug 87913 for jesse@netscape.com - Allow untrusted scripts
to call Components.manager.autoRefresh, but only with default params.
r=mstoltz, sr=jst.
2001-07-11 04:48:55 +00:00
waterson@netscape.com
2498f51f20 Land STATIC_BUILD_20010612_BRANCH, which supports building mozilla with components statically linked into the executable, as well as 'meta modules' that combine components into uber-DLLs. 2001-06-20 20:21:49 +00:00
scc@mozilla.org
ee1d678864 bug #85271: sr=waterson, r={beard, jag, dbaron}, a=asa. Eliminate features of |nsXPIDLC?String| that keep it out of the string hierarchy (i.e., using assigment to rebind ownership, static |Copy| members, and |getter_Shares|), fixing some leaks in the process. 2001-06-17 05:23:38 +00:00
rayw@netscape.com
c6334366cb Bug 37275, Changing value of all progids, and changing everywhere a progid
is mentioned to mention a contractid, including in identifiers.

r=warren
2000-09-13 23:57:52 +00:00
kandrot@netscape.com
a3bfea9d4c Fix for bug #46709
Allows registry buffer size to be modified.  Increases buffer size during
initial start up, then decreases size.

r=rayw
2000-09-08 01:51:45 +00:00
rayw@netscape.com
3579bd6273 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
2000-05-12 01:24:36 +00:00
dveditz@netscape.com
79c9af9959 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;
2000-02-20 03:12:59 +00:00
dveditz@netscape.com
d1f95056e5 registry speed ups (part of 12817) 2000-02-16 07:45:20 +00:00
dougt@netscape.com
6d4b6b18ed Fix for bug 25941. r=dp,scc. 2000-02-01 07:54:46 +00:00
dougt@netscape.com
41d4d56c3a Giving these files Purify loving. r=dveditz 2000-01-28 23:37:27 +00:00
dougt@netscape.com
d48ec37751 Landing nsIFile. 2000-01-24 21:28:28 +00:00
dp@netscape.com
6e009a08bf Implementing access to servicemanager from component manager via
nsIInterfaceRequestor. r=scc
2000-01-11 22:54:46 +00:00
beard@netscape.com
09c986a0a1 fix C string leak, bug=18699, r=shaver 1999-11-19 02:14:23 +00:00
shaver@netscape.com
5ee5b20534 - 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
1999-11-10 00:28:34 +00:00
dmose@mozilla.org
20621227af updated xPL license boilerplate to v1.1, a=chofmann@netscape.com,r=endico@mozilla.org 1999-11-06 03:43:54 +00:00
dp@netscape.com
70c6f92281 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.
1999-10-21 21:34:39 +00:00
scc@netscape.com
2c5981f78d 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|. 1999-10-15 21:14:43 +00:00
shaver@netscape.com
d8b603c8f0 nsIRegistry scriptability and beginning of category support, r=dp,alecf,dveditz a=leaf,chofmann 1999-09-29 02:35:42 +00:00
dp@netscape.com
c64998697e Passing down NS_Shutdown to Unloading of libraries. 1999-09-26 18:04:27 +00:00