Commit Graph

452 Commits

Author SHA1 Message Date
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
edburns@acm.org
48a65e11e8 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.
2000-01-06 01:05:13 +00:00
blizzard@redhat.com
2126e6b818 Change nsComponentManager::ProgIDToCLSID to nsComponentManager::ProgIDToClassID as per bug #3579. Checking in for sford. r=scc,r=blizzard 1999-12-30 22:03:58 +00:00
shaver@netscape.com
e5a7c92fd5 fix leaf of registryName (#21068, r=beard, a=leaf) 1999-12-09 00:01:46 +00:00
dp@netscape.com
6fb4a9e682 NS_GET_IID(). Thanks to patch from pp@ludasdesign.com r=dp@netscape.com 1999-11-30 23:36:32 +00:00
scc@netscape.com
38f6d21613 clear out the result in |do_CreateInstance| on error. r=pinkerton 1999-11-22 23:01:35 +00:00
beard@netscape.com
09c986a0a1 fix C string leak, bug=18699, r=shaver 1999-11-19 02:14:23 +00:00
fur@netscape.com
b521d8fa7c 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
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
scc@netscape.com
ec91fc2507 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
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
scc@netscape.com
68eaf65ae1 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
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
sfraser@netscape.com
3e46ff6050 Fixing use of obsolete types for shaver. 1999-09-29 02:54:18 +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
dveditz@netscape.com
7c73d2959c 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
c64998697e Passing down NS_Shutdown to Unloading of libraries. 1999-09-26 18:04:27 +00:00
dp@netscape.com
4471c3e79d UnloadAll() on non-native loaders. 1999-09-23 00:14:00 +00:00
dp@netscape.com
b173d0867f Enabling xpcom shutdown to call NSCanUnload() on every component. 1999-09-23 00:01:53 +00:00
waterson@netscape.com
e5089c32df Fix backwards return values on nsIEnumerator::IsDone(). 1999-09-21 01:28:18 +00:00
warren@netscape.com
382c1f8058 freed mComponentsDir in nsComponentManager 1999-09-20 20:53:57 +00:00
dp@netscape.com
2d69c7d581 Ability for XPCOM to use non-default component registry and component directory 1999-09-16 19:28:57 +00:00
shaver@netscape.com
70aec694a4 lose some DEBUG_shaver debugging noise 1999-09-15 14:45:29 +00:00
dp@netscape.com
eb98083f03 Typo fixed. AutoRegisterComponent works again. 1999-09-11 07:23:28 +00:00
dveditz@netscape.com
fb5cbb956c 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
e84b06a56d fix memory leaks (eep) and add some debugging noise for myself 1999-09-09 00:48:30 +00:00
shaver@netscape.com
f76e631685 fix MLK bugs 13285 and 13286 and prevent repeated PrePopulateRegistry calls 1999-09-08 04:22:37 +00:00
shaver@netscape.com
dea9335842 teach component manager that there are non-native entries in the registry 1999-09-07 23:18:47 +00:00
shaver@netscape.com
6e191258bb 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
89c1e7e581 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
77c3544d9c convert to CreateInstanceFromProgID 1999-09-05 06:27:42 +00:00
shaver@netscape.com
c59529bfaa properly initialize loaders on creation, and remove code that's now in nsFileSpec 1999-09-03 23:51:31 +00:00
shaver@netscape.com
b703a644da 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
6829488c1f um, didn't mean to check that in 1999-09-02 05:21:10 +00:00
shaver@netscape.com
04df98c774 *** empty log message *** 1999-09-02 05:18:09 +00:00
shaver@netscape.com
1df39438da 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
brendan@mozilla.org
b3c1a9c6ea 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
6f62a47cac 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
dp@netscape.com
9e455e2f6c 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
a91850cb40 - Adding nsComponentMangager::GetClassObject()
- Adding a nsIID parameter to the nsIModule:GetClassObject()
1999-08-19 14:54:12 +00:00
sfraser@netscape.com
6ef7cf1b5b Part of fix for 11790, crash on quit. Don't try to delete static data. r dp, a chofmann 1999-08-13 23:26:47 +00:00
dp@netscape.com
7528532df0 - using ComponentManager instead of service manager in nsIModule
- Adding UnregisterComponentSpec()
All the above are required for xpcom review.
1999-08-13 19:30:13 +00:00
dp@netscape.com
5c672b9f1f Logging error from canunload 1999-08-10 23:06:33 +00:00
dp@netscape.com
408a7d910b dummy 1999-08-09 05:40:51 +00:00
jband@netscape.com
4e3c9aeea9 adding enumeration of CLSIDs and ProgIDs using code from Robert Ginda <rginda@ix.netcom.com> 1999-08-09 05:02:25 +00:00
rjc@netscape.com
9cdbe5a9d7 Use GetFileSpec() correctly. 1999-08-07 11:23:54 +00:00
rjc@netscape.com
aa92568613 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. 1999-08-06 23:06:07 +00:00
dp@netscape.com
dce267ef2c Using nsObjectHashtable::RemoveAndDelete() 1999-08-03 00:03:38 +00:00