92 Commits

Author SHA1 Message Date
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
shaver%netscape.com
d28ae6ecaf fix memory leaks (eep) and add some debugging noise for myself
git-svn-id: svn://10.0.0.236/trunk@46470 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-09 00:48:30 +00:00
shaver%netscape.com
b052c8e4df fix MLK bugs 13285 and 13286 and prevent repeated PrePopulateRegistry calls
git-svn-id: svn://10.0.0.236/trunk@46297 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-08 04:22:37 +00:00
shaver%netscape.com
e40893df46 teach component manager that there are non-native entries in the registry
git-svn-id: svn://10.0.0.236/trunk@46237 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-07 23:18:47 +00:00
shaver%netscape.com
955b7a1d60 Moved abs:/rel: handling to ComponentManager.
Made nsIModule::GetClassObject and nsIFactory scriptable for JS components.
Added registryLocation param to nsIModule::(Un)RegisterSelf.


git-svn-id: svn://10.0.0.236/trunk@46161 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-07 05:06:37 +00:00
shaver%netscape.com
4a8f1f1ad4 Add nsIComponentManager::registerComponentWithType.
Take advantage of IDLized nsIComponentManager to fix up nsIComponentLoader.idl
and make nsIModule scriptable.


git-svn-id: svn://10.0.0.236/trunk@46103 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-06 16:43:09 +00:00
shaver%netscape.com
708e94e89e convert to CreateInstanceFromProgID
git-svn-id: svn://10.0.0.236/trunk@46048 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-05 06:27:42 +00:00
shaver%netscape.com
3fd6f08466 properly initialize loaders on creation, and remove code that's now in nsFileSpec
git-svn-id: svn://10.0.0.236/trunk@45979 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-03 23:51:31 +00:00
shaver%netscape.com
ba0e48539e 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.


git-svn-id: svn://10.0.0.236/trunk@45674 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-02 07:00:29 +00:00
shaver%netscape.com
c29e82e553 um, didn't mean to check that in
git-svn-id: svn://10.0.0.236/trunk@45660 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-02 05:21:10 +00:00
shaver%netscape.com
215713c944 *** empty log message ***
git-svn-id: svn://10.0.0.236/trunk@45659 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-02 05:18:09 +00:00
shaver%netscape.com
ac1d899ee3 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!)


git-svn-id: svn://10.0.0.236/trunk@45355 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-31 21:40:21 +00:00
brendan%mozilla.org
d87f3f7b04 Massive spankage to capitalize C++ method and attribute name bindings, per
Architecture Item 6.3 (news://news.mozilla.org/37BA89CF.3823D6F9%40meer.net).


git-svn-id: svn://10.0.0.236/trunk@44456 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-25 05:26:25 +00:00
scc%netscape.com
56d5ad0b43 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
git-svn-id: svn://10.0.0.236/trunk@44139 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-23 10:14:16 +00:00
dp%netscape.com
b359dd631b PlatformFind() changed to return nsDll * instead of FactoryEntry. This
is an internal api change.


git-svn-id: svn://10.0.0.236/trunk@43884 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-20 23:06:47 +00:00
dp%netscape.com
4ec4fd68a3 - Adding nsComponentMangager::GetClassObject()
- Adding a nsIID parameter to the nsIModule:GetClassObject()


git-svn-id: svn://10.0.0.236/trunk@43627 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-19 14:54:12 +00:00
sfraser%netscape.com
06d4c42e7e Part of fix for 11790, crash on quit. Don't try to delete static data. r dp, a chofmann
git-svn-id: svn://10.0.0.236/trunk@43320 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-13 23:26:47 +00:00
dp%netscape.com
4d630e99fa - using ComponentManager instead of service manager in nsIModule
- Adding UnregisterComponentSpec()
All the above are required for xpcom review.


git-svn-id: svn://10.0.0.236/trunk@43292 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-13 19:30:13 +00:00
dp%netscape.com
37a1b7bf3f Logging error from canunload
git-svn-id: svn://10.0.0.236/trunk@43069 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-10 23:06:33 +00:00
dp%netscape.com
27741c5206 dummy
git-svn-id: svn://10.0.0.236/trunk@42740 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-09 05:40:51 +00:00
jband%netscape.com
5630b79f6c adding enumeration of CLSIDs and ProgIDs using code from Robert Ginda <rginda@ix.netcom.com>
git-svn-id: svn://10.0.0.236/trunk@42738 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-09 05:02:25 +00:00
rjc%netscape.com
5dd3607160 Use GetFileSpec() correctly.
git-svn-id: svn://10.0.0.236/trunk@42652 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-07 11:23:54 +00:00
rjc%netscape.com
7e9a4319e4 On Mac, check a file's type (skip the creator, so that 3rd party shared libraries can be noticed) to see if its a shared library.
git-svn-id: svn://10.0.0.236/trunk@42577 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-06 23:06:07 +00:00
dp%netscape.com
4f3fd45b8b Using nsObjectHashtable::RemoveAndDelete()
git-svn-id: svn://10.0.0.236/trunk@41890 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-03 00:03:38 +00:00
dp%netscape.com
933c0ab445 VMS changes from Colin Blake <colin@theblakes.com>
git-svn-id: svn://10.0.0.236/trunk@41733 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-31 19:39:23 +00:00
dp%netscape.com
174729ddab - Fixing ComponentManager destruction
- CLSIDToProdID() fixed to use the correct subtree in registry
- ProgID() enumneration on startup enabled
- Added internal UnloadLibraries() that can take a NULL service
  manager too for nsXPComShutdown()'s sake
- Setting autoreg DirectoryIterator not to resolve symbolic links


git-svn-id: svn://10.0.0.236/trunk@41681 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-31 05:55:04 +00:00
sspitzer%netscape.com
7057e8db23 other half of fix for #10697. directory iterators work again. r=blizzard. a=leaf.
git-svn-id: svn://10.0.0.236/trunk@41548 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-29 04:59:13 +00:00
blizzard%redhat.com
3d1ce5aa05 work around for startup crash on linux. checkin approved by cyeh and leaf.
git-svn-id: svn://10.0.0.236/trunk@41481 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-28 20:25:02 +00:00
warren%netscape.com
9238d4066d Added destructor/cleanup code.
git-svn-id: svn://10.0.0.236/trunk@41451 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-28 08:01:03 +00:00
sspitzer%netscape.com
695d359ba6 change the nsIDirectoryIterator::Init interface to match the nsDirectoryIterator ctor: two paramenters, a file spec and a bool for resolveSymlinks. pass in PR_TRUE in the pref and component manager code. this fixes the problem where prefs wouldn't get loaded on the mac!
git-svn-id: svn://10.0.0.236/trunk@41358 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-27 23:33:54 +00:00
valeski%netscape.com
4318fb5b37 mem leak - rev'd by dp
git-svn-id: svn://10.0.0.236/trunk@41048 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-25 13:37:16 +00:00
tbogard%aol.net
0562346fa7 Changed nsCStringKey to nsStringKey. This new key now has the ability to hash on PRUnichar* strings as well as char* strings.
git-svn-id: svn://10.0.0.236/trunk@40584 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-22 02:11:04 +00:00
dp%netscape.com
c64b67e41a Removed delete of void *. HP doesn't like it.
git-svn-id: svn://10.0.0.236/trunk@39448 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-15 00:11:20 +00:00
dp%netscape.com
eecf54f263 Fixing memory leaks and mismatched memory. bug #8935 bug# 9006
Thanks to david.gardiner@unisa.edu.au for finding the memory leaks


git-svn-id: svn://10.0.0.236/trunk@38874 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-09 03:45:19 +00:00