Commit Graph

372 Commits

Author SHA1 Message Date
fur%netscape.com
8dc3eec4c8 Fixed a problem with the NS_GENERIC_FACTORY_CONSTRUCTOR_INIT() macro.
If the Init() routine happens to perform a balanced AddRef/Release,
the instance will be prematurely destroyed when Release() is called.
The change is to do the AddRef() before calling the initialization
routine to stabilize the instance's ref-count.

r: dp, putterman
1999-11-16 03:05:36 +00:00
fur%netscape.com
5036fb1561 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 1999-11-14 15:41:40 +00:00
warren%netscape.com
9669aaed56 Minor fix. 1999-11-12 09:10:40 +00:00
warren%netscape.com
7f04320416 Added NS_NewGenericModule. Made NS_IMPL_NSGETFACTORY use it to save space. r=dp,alecf 1999-11-12 09:07:26 +00:00
dp%netscape.com
336bf28bce Services used with COMPtrs. NS_WITH_SERVICE definition uses COMPtrs. r=scc 1999-11-11 00:31:45 +00:00
shaver%netscape.com
c73533acb7 - 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
scc%netscape.com
e46756059d Added |do_CreateInstance()|, |do_GetService()| both by CID and ProgID. See bugs #17364, #17448. r={travis, dp} 1999-11-10 00:14:54 +00:00
scc%netscape.com
6234eff725 Moved |do_CreateInstance()| from here to nsComponentManagerUtils.h. See bugs #17364, #17448. r={travis, dp} 1999-11-10 00:14:10 +00:00
dp%netscape.com
43788c85b9 Enabling observing of XPCOM Shutdown r=jband r=putterman 1999-11-09 23:41:24 +00:00
dmose%mozilla.org
142ac52eaf 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
5bc4da0375 Deny GetService() requests which cause Creation of new objects on
shutdown. r=jband, r=ScottPutterman
1999-11-03 05:38:45 +00:00
alecf%netscape.com
649ac66265 cleanup NS_IMPL_MODULE and friends
- define new nsModuleComponentInfo and use it instead of components_t
- use size_t instead of unsigned int
- add some docs
- allow user to define own module name
1999-11-02 01:12:32 +00:00
scc%netscape.com
b2c12428df 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) 1999-10-31 00:35:48 +00:00
braddr%puremagic.com
ea13be0a26 Move all nsIEnumerator usage over to NS_ENUMERATOR_FALSE from NS_COMFALSE in anticipation of nixing NS_COMFALSE in the near future.
r=scc
1999-10-28 03:16:48 +00:00
braddr%puremagic.com
341c8b0054 Ooops.. tree closed, better back these out for now. Sorry. 1999-10-27 21:01:37 +00:00
braddr%puremagic.com
55276cc3c4 Move all nsIEnumerator usage over to NS_ENUMERATOR_FALSE from NS_COMFALSE
in anticipation of nixing NS_COMFALSE in the near future.
r=scc (please contact him should there be any build issues)
1999-10-27 20:24:21 +00:00
warren%netscape.com
3fda695ea8 Fixed up dll loading for Windows. It was silently failing. 1999-10-24 22:01:09 +00:00
dp%netscape.com
cf16f4e92d bug# 9221 Fixing autoreg terminating on bad aliases. We now let it go
as far as possible ignoring errors. r=sfraser
1999-10-22 06:32:26 +00:00
dp%netscape.com
a8e1f1906e beautify... 1999-10-22 04:47:14 +00:00
dp%netscape.com
dfb460cb22 bug# 15046 Preventing deletion of dll when getfactory fails. r=shaver,kipp 1999-10-22 01:04:16 +00:00
dp%netscape.com
03fd310400 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
d1f693eb36 First Checked In. 1999-10-20 21:03:21 +00:00
dp%netscape.com
3e35738382 Fixing warning. Moved declaration into if 0 block. 1999-10-19 05:49:04 +00:00
dveditz%netscape.com
99d183d043 Added nsIRegistry::Flush (bug 16283, required for 16600), r=shaver 1999-10-17 21:45:53 +00:00
jevering%netscape.com
a91fae81ab The nsLeakDetector.cpp file now requires a few extra header files which weren't being exported on win 1999-10-16 01:44:52 +00:00
scc%netscape.com
ef8d06d258 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
6af0fa41f9 Fix case and return value in nsIModule.idl.
Add deleteCategoryEntry and deleteCategory to nsICategoryManager.
Update nsCategoryManager.js to use new nsIModule case, and talk to the registry.
r=brendan
1999-10-15 20:51:38 +00:00
dp%netscape.com
1a126bedcd bug# 5085 Eliminating some checks at autoreg time to improve startup
performance. r=sfraser
1999-10-15 07:12:08 +00:00
dveditz%netscape.com
b56193b56d expose libreg ability to delete named values in nsIRegistry. Patch from
Jonas Utterstr�m <jonas.utterstrom@vittran.norrnod.se>, r=dveditz
1999-10-15 06:47:58 +00:00
waterson%netscape.com
8241422540 Bug 16105. (Bugsplat 366256.) Ensure that nsISupports::Release() calls dtor only once by 'stabilizing' refcnt to a non-zero value before invoking the dtor. See also news://news.mozilla.org/37FD0F3C.3078AE5C%40netscape.com. r=scc,fur 1999-10-12 02:10:08 +00:00
putterman%netscape.com
07068ab854 Create a version of NS_GENERIC_FACTORY_CONSTRUCTOR that lets you pass in
an initialization function.  No bug.  Reviewed by dp.
1999-10-10 22:30:55 +00:00
kipp%netscape.com
538bc51120 Fixed up hook to track library loads for refcnt logging 1999-10-08 23:41:18 +00:00
warren%netscape.com
8c71c45537 Fixed AddRef/Release problems to eliminate negative refcounts in Bloaty. 1999-10-08 01:49:06 +00:00
alecf%netscape.com
85fe25d739 add new NS_xxx_MODULE* macros (not used anywhere in the build just yet) 1999-10-08 00:12:29 +00:00
dp%netscape.com
d73e78aeaf Removing ifdef DEBUG_dp. 1999-10-07 21:03:48 +00:00
ramiro%netscape.com
e483adce73 Take myself out of the "you suck" list. r=dp 1999-10-06 20:22:23 +00:00
sfraser%netscape.com
b24aeb1bee Change Mac library loading to load using the FSSpec. r=dp 1999-10-06 01:09:13 +00:00
kipp%netscape.com
a1f617e75c Fixed bug in ReleaseServcie that was recreating the service manager during shutdown 1999-09-30 21:40:27 +00:00
sfraser%netscape.com
c4ba817155 Fixing use of obsolete types for shaver. 1999-09-29 02:54:18 +00:00
shaver%netscape.com
f28337480b 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
5632fd9b86 Unloading of dlls on shutdown turned off. 1999-09-28 19:42:06 +00:00
dveditz%netscape.com
f9e34fb7e2 Make sure componentMgr calls NR_ShutdownRegistry(), fixing MLKs and registry corruption from unflushed registry buffers.
r=dp,a=chofmann
1999-09-26 21:20:21 +00:00
dp%netscape.com
61664c7872 Separating dll Shutdown from unload. Calling dll shutdown
unconditionally on NS_Shutdown.
1999-09-26 18:06:41 +00:00
dp%netscape.com
602baa248e Passing down NS_Shutdown to Unloading of libraries. 1999-09-26 18:04:27 +00:00
dp%netscape.com
7d88c6385e Adding NS_Shutdown. 1999-09-26 18:02:52 +00:00
dp%netscape.com
009a5392fb UnloadAll() on non-native loaders. 1999-09-23 00:14:00 +00:00
dp%netscape.com
4bf3f842dd Enabling xpcom shutdown to call NSCanUnload() on every component. 1999-09-23 00:01:53 +00:00
shaver%netscape.com
b42e435cb0 add componentType to nsIModule::RegisterSelf 1999-09-22 03:18:27 +00:00
shaver%netscape.com
3948cf5000 need to use different module names to avoid overwriting xpcom.xpt 1999-09-21 14:12:26 +00:00
waterson%netscape.com
06b78978e9 Fix backwards return values on nsIEnumerator::IsDone(). 1999-09-21 01:28:18 +00:00
warren%netscape.com
c08e644f40 fixed ReleaseService and UnregisterService to work during shutdown 1999-09-20 20:54:09 +00:00
warren%netscape.com
8156976010 fixed circular references in nsNativeComponentLoader 1999-09-20 20:54:04 +00:00
warren%netscape.com
681e31774d freed mComponentsDir in nsComponentManager 1999-09-20 20:53:57 +00:00
briano%netscape.com
04e901e2a5 General cleanup. 1999-09-18 02:12:56 +00:00
dveditz%netscape.com
3509f48fd2 match buffered i/o registry change in XP_MAC section 1999-09-17 07:00:55 +00:00
dp%netscape.com
d9d68788ef Caching of what registry was opened to improve performance of multiple
opens on the same registry file.
1999-09-17 05:46:25 +00:00
dp%netscape.com
d0ccf9a6eb Ability for XPCOM to use non-default component registry and component directory 1999-09-16 19:28:57 +00:00
dp%netscape.com
dab9dd104d NS_ADDREF() instead of calling it directly 1999-09-16 19:20:18 +00:00
dp%netscape.com
ea7b692d54 Removing DEBUG_dp 1999-09-16 19:11:00 +00:00
dveditz%netscape.com
7d68f66b73 expose whether the registry is already open or not, which enables the profile
manager to avoid opening and closing the registry ~20 times at startup.
1999-09-16 05:32:28 +00:00
shaver%netscape.com
070f7e8f51 lose some DEBUG_shaver debugging noise 1999-09-15 14:45:29 +00:00
ramiro%netscape.com
1982577a22 Fix for the loser linux tinderbox compiler. 1999-09-14 15:16:31 +00:00
ramiro%netscape.com
5b445b449b Add support for demangling undefined symbols. 1999-09-14 13:40:22 +00:00
warren%netscape.com
d3999bb61a Don't hold the service manager lock around CreateInstance -- deadlock potential. 1999-09-14 04:50:48 +00:00
shaver%netscape.com
bf6e96d80c fix UMR 1999-09-13 22:34:42 +00:00
dp%netscape.com
9ef85f9c81 Implemented dll enumeration and prepopulation. Improves startup performance. 1999-09-11 14:49:55 +00:00
dp%netscape.com
6341cd61aa Typo fixed. AutoRegisterComponent works again. 1999-09-11 07:23:28 +00:00
dveditz%netscape.com
cdf809b15c speed startup by avoiding registry look ups that are guaranteed to fail, eliciting worst-case behavior 1999-09-10 05:27:23 +00:00
shaver%netscape.com
a131f8079e fix memory leaks (eep) and add some debugging noise for myself 1999-09-09 00:48:30 +00:00
toshok%hungry.com
bf77668740 remove the dll from mDllStore if we're about to delete it. keeps us from crashing if we try to load a dll after we fail once. 1999-09-09 00:47:22 +00:00
shaver%netscape.com
ea2955902d fix MLK bugs 13285 and 13286 and prevent repeated PrePopulateRegistry calls 1999-09-08 04:22:37 +00:00
shaver%netscape.com
aee3857b3b teach component manager that there are non-native entries in the registry 1999-09-07 23:18:47 +00:00
shaver%netscape.com
c1950cee17 Moved abs:/rel: handling to ComponentManager.
Made nsIModule::GetClassObject and nsIFactory scriptable for JS components.
Added registryLocation param to nsIModule::(Un)RegisterSelf.
1999-09-07 05:06:37 +00:00
shaver%netscape.com
0a5c997f1a Add nsIComponentManager::registerComponentWithType.
Take advantage of IDLized nsIComponentManager to fix up nsIComponentLoader.idl
and make nsIModule scriptable.
1999-09-06 16:43:09 +00:00
shaver%netscape.com
99777ae194 missed an EXPORT =( 1999-09-05 08:07:31 +00:00
shaver%netscape.com
694400cae3 forgot an IDL file 1999-09-05 07:18:18 +00:00
shaver%netscape.com
6cecf4c569 convert to CreateInstanceFromProgID 1999-09-05 06:27:42 +00:00
dveditz%netscape.com
ee89552282 remove xp_file.h from NSReg.h, required minor tweaking elsewhere to include
now missing NSPR types.
1999-09-04 19:46:18 +00:00
shaver%netscape.com
942e382e8a properly initialize loaders on creation, and remove code that's now in nsFileSpec 1999-09-03 23:51:31 +00:00
shaver%netscape.com
c8ebe122e6 Added ComponentLoaders to registry and abandoned the progID suffix strategy
to reduce evil in universe.
Added nsIComponentManager::RegisterComponentLoader.
Dead code removal.
Make AutoRegister eagerly created all as-yet-unloaded component loaders and
AutoRegister with them as well.
Removed much #ifdef DEBUG_shaver noise.
1999-09-02 07:00:29 +00:00
shaver%netscape.com
2b270b1823 um, didn't mean to check that in 1999-09-02 05:21:10 +00:00
shaver%netscape.com
769fcf3a54 *** empty log message *** 1999-09-02 05:18:09 +00:00
waterson%netscape.com
c1c6e5faeb Create a monitor as a member variable instead of using cached monitor. 1999-09-02 04:12:08 +00:00
shaver%netscape.com
58e1e16a1c missed an EXPORT removal 1999-09-02 01:30:17 +00:00
dp%netscape.com
908e04e95e Dll data written to registry. Autoreg fixed to work with relative
pathnames in registry.
1999-09-01 06:25:20 +00:00
dp%netscape.com
310c55dceb Added Sync().
Prepares for fixing registration.
1999-09-01 06:22:54 +00:00
cyeh%netscape.com
9577b5cefa Remove IGNORE_MANIFEST=1. It doesn't do anything and it confuses people. 1999-09-01 00:54:34 +00:00
shaver%netscape.com
7442945b05 missed nsIFactory.idl export, damn 1999-08-31 22:25:59 +00:00
shaver%netscape.com
655710510e forgot to remove now-generated nsIFactory.h 1999-08-31 22:00:27 +00:00
shaver%netscape.com
1db9afa25d Removed nsIFactory.h (generated now).
Factored ComponentManager to support multiple ComponentLoaders.
Added support for relative paths in registry.
General cleanup.
(Broke detection of changed DLLs; dp is fixing -- thanks!)
1999-08-31 21:40:21 +00:00
dp%netscape.com
b560029264 removing obsolete files 1999-08-26 05:14:09 +00:00
dp%netscape.com
88a4943bfd Removing nsIRegistry::GetIntArray() and SetIntArray(). These aren't
being used and block scritability. So if we need then, we will figure
out a way to add them that wont break scritability.
1999-08-26 05:11:40 +00:00
dp%netscape.com
8d036420a9 Removed default parameter to Open() to facilitate IDLification. 1999-08-26 03:22:26 +00:00
brendan%mozilla.org
defeffaabd Massive spankage to capitalize C++ method and attribute name bindings, per
Architecture Item 6.3 (news://news.mozilla.org/37BA89CF.3823D6F9%40meer.net).
1999-08-25 05:26:25 +00:00
scc%netscape.com
68340a37ef got rid of |NS_IMPL_ISUPPORTS|, where possible, in favor of |NS_IMPL_ISUPPORTS0| or ...1 according to the specific use; got rid of |NS_DEFINE_IID| where possible, or where it should have been |NS_DEFINE_CID|; fixed bad implementations of |QueryInterface|, where possible. Built, tested apprunner, reviewed the changes with hyatt (since he was around to look) before checking in 1999-08-23 10:14:16 +00:00
scc%netscape.com
7981dba18d Added |GetIID| 1999-08-22 20:54:08 +00:00
mccabe%netscape.com
381fb81c4f Replace manual method declarations in implementations of xpcom/ interfaces with NS_DECL_NSIFOO. 1999-08-22 11:25:50 +00:00
dp%netscape.com
e3d3ff58c6 PlatformFind() changed to return nsDll * instead of FactoryEntry. This
is an internal api change.
1999-08-20 23:06:47 +00:00
dp%netscape.com
d42f5605f4 - Adding nsComponentMangager::GetClassObject()
- Adding a nsIID parameter to the nsIModule:GetClassObject()
1999-08-19 14:54:12 +00:00
dp%netscape.com
a5018908e2 Calling shutdown listeners on XPCOM Shutdown. Fix bug #11790 1999-08-14 21:32:29 +00:00