Commit Graph

277 Commits

Author SHA1 Message Date
beard%netscape.com
d3012769e3 to avoid unnecessary assertions, configurations not defining NS_MT_SUPPORTED (such as the Mac) shouldn't use the OWNINGTHREAD machinery. r=warren, a=leaf 2000-03-06 23:55:14 +00:00
danm%netscape.com
b976efa3d2 bump refcount in threadsafe release macro. bug 30666 r=warren 2000-03-06 21:10:46 +00:00
warren%netscape.com
ad38c46f08 Fixing mac bustage -- doubly defined NS_IMPL_THREADSAFE_ISUPPORTS macro. 2000-03-05 21:59:15 +00:00
warren%netscape.com
c0497e31be Bug 21556: Making linux be thread-safe. Making tons of classes implement threadsafe AddRef/Release. a=jar 2000-03-05 21:26:01 +00:00
warren%netscape.com
7113f6e49d Bug 21556: Making linux be thread-safe. Exporting NS_CurrentThread from debug builds. a=jar 2000-03-05 10:14:50 +00:00
mkaply%us.ibm.com
5fc1abd8ef # 25555
r= dp@netscape.com
OS/2 changes for Mozilla - add #ifdef, change #ifdef
2000-02-29 15:50:48 +00:00
cls%seawood.org
8b30dc934f BeOS specific tweaks to allow the browser to compile.
Fixed configure.in to properly set developer specific debug flag under BeOS.
Added UNIX_CRASH_ON_ASSERT ifdef to stop BeOS from bring up debugger on non-abort assertions.
2000-02-16 08:06:00 +00:00
dveditz%netscape.com
f620060761 registry speed ups (part of 12817) 2000-02-16 07:45:20 +00:00
scc%netscape.com
18df765f41 wrapped |nsCOMPtr| vs. raw pointer comparisons in a |#ifndef| for |NSCAP_NSCOMPTR_TO_RAW_COMPARISONS_ARE_AMBIGUOUS| which is currently not defined. When an autoconf test defines this symbol, these operators will go away, and Linux will never be bit by the |nsCOMPtr| can't compare to a raw pointer error. Currently, there is no effect. r={mjudge,rginda} 2000-02-12 23:30:52 +00:00
scc%netscape.com
f4f8cc503e Somebody is |#include|ing this file inside an |extern "C"| declaration. This is wrong, and stops the build on some platforms. In the meantime, protect the new template declarations to stop the build bustage. 2000-02-11 08:38:14 +00:00
scc%netscape.com
b7de524c75 Fixed up |NS_IF_ADDREF| to support the following use efficiently in the non-logging case NS_IF_ADDREF(*result = mFoo); as per bug #27343. r=jband (Actually, I like the generated error better when I make this small modification to the template) 2000-02-11 07:12:02 +00:00
scc%netscape.com
d581aa9adf Fixed up |NS_IF_ADDREF| to support the following use efficiently in the non-logging case NS_IF_ADDREF(*result = mFoo); as per bug #27343. r=jband 2000-02-11 07:07:57 +00:00
scc%netscape.com
4addda4681 Added |NS_ISUPPORTS_CAST()|. Added |NS_DebugGetRefCount()| as per bug #26803. r={pinkerton, hyatt} 2000-02-11 01:42:58 +00:00
scc%netscape.com
18d254421b enable the |ASSERT_NO_QUERY_NEEDED| tests for the |getter_AddRefs()| case as well. bug #26420, r=dougt 2000-02-06 21:17:51 +00:00
scc%netscape.com
b3649364e4 Eliminating duplicate macros, r=dougt 2000-02-05 23:55:09 +00:00
warren%netscape.com
8d80a7196e Added NS_IMPL_ISUPPORTS_INHERITED3 macro. 2000-02-03 08:51:30 +00:00
scc%netscape.com
f1d17da7df Fixed tabs, some comments, etc. Made |do_QueryInterface()| not participate in the |...TEST_DONTQUERY_CASES| test to help us debug bug #25327. r=pinkerton 2000-01-29 22:29:08 +00:00
pinkerton%netscape.com
e5d4c38a9a Fix build bustage. needed a typecast in some cases, but not others. 2000-01-26 23:17:53 +00:00
pinkerton%netscape.com
9d8c2663ba fix for NS_INTERFACE_MAP_END_INHERITING, wrong local var passed to base class's QI. r=scc. 2000-01-26 21:54:07 +00:00
dougt%netscape.com
0b0346079c Landing nsIFile. 2000-01-24 21:28:28 +00:00
scc%netscape.com
a2dea03069 macros and defs to removed conditional definition of |GetIID()| within |nsISupports|. r=beard, (waterson?), bug=10477 2000-01-13 05:48:47 +00:00
scc%netscape.com
0fc0a0709f factor the |IMPL_QUERY| macros to support inheriting |QueryInterface|. Redefine all the |NS_IMPL_ISUPPORTSn| macros in terms of the table-style macros. r={pinkerton, sfraser} 2000-01-12 16:01:14 +00:00
dp%netscape.com
331dbeb0cd Providing register and unregister hook per component in the generic
module. r=alecf
2000-01-11 21:18:55 +00:00
jband%netscape.com
bbb40e6dd7 Allow generic module stuff to work with singletons. Needed to fix bug 22922. r=dp 2000-01-07 02:18:13 +00:00
blizzard%redhat.com
d6cf22aa5c 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
sspitzer%netscape.com
22b6b14e23 purify related fixes. first, prevent a crash that was prevent me
from running purify in nsGenericFactory.cpp.  Second, add support
for "mozilla -pure".  Only works if you've build mozilla.bin.pure, of course.
1999-12-15 06:23:50 +00:00
scc%netscape.com
964ca8227e Fix specialized |CallQueryInterface| as per review by travis ... r=travis. 1999-12-08 01:44:06 +00:00
scc%netscape.com
8c4ec2ebea Adding an alternate version of |CallQueryInterface| as an experiment on behalf of travis. This function is not yet called, and should not effect the build or the runtime. r=hyatt 1999-12-07 14:09:29 +00:00
sfraser%netscape.com
ef6b5d0398 Make sure that all warnings just printf on Mac, and don't dump you into MacsBug. r=pinkerton 1999-12-07 07:21:30 +00:00
jband%netscape.com
2eaaa4083b adding member initializer to quiet Purify. r=waterson. 1999-12-07 07:17:44 +00:00
mscott%netscape.com
2266405677 Fix build breakage for Travis. 1999-12-07 00:15:42 +00:00
tbogard%aol.net
2bc8f99632 Changed the way Assertion works. Get ready to remove all the old assertions methods. NS_ASSERTION now works the same way it used with the exception that on Windows it will put up and abort, retry, ignore box if you aren't in the debugger. r=warren. 1999-12-06 23:34:48 +00:00
warren%netscape.com
d25432f38d Prefixed error/warning messages with something bold and assertive! (And somewhat distinguishable from other output.) 1999-12-02 02:37:54 +00:00
waterson%netscape.com
084b9e5d76 Make 'kGrowArrayBy' const. Thanks, Heikki. 1999-12-01 22:44:42 +00:00
warren%netscape.com
9da80972f9 Made WarnIfFalse not call abort. Made abort be continuable on Windows. r=travis 1999-12-01 05:51:45 +00:00
waterson%netscape.com
6d00264a22 Bug 9489. Add support for nsAutoVoidArray. r=scc,shaver 1999-12-01 00:37:11 +00:00
dp%netscape.com
edcdeb94a5 NS_GET_IID(). Thanks to patch from pp@ludasdesign.com r=dp@netscape.com 1999-11-30 23:36:32 +00:00
tbogard%aol.net
88639c509e Flipped the default of the Windows Warning box that can come up. It now requires an environment variable be set to come up. 1999-11-29 05:50:22 +00:00
akkana%netscape.com
efc8c03546 AbortIfFalse should abort on all platforms -- that's the whole point. r=shaver 1999-11-24 21:58:20 +00:00
scc%netscape.com
67b0bb7084 added macros preparing us to move to table-driven QI. Please note: travis will be supporting any problems with this checkin till I'm back online in Michigan. r=tbogard 1999-11-23 05:55:31 +00:00
scc%netscape.com
e2e36b3c4a don't ASSERT that it doesn't support weak references for NULL. r=pinkerton 1999-11-23 03:10:02 +00:00
scc%netscape.com
d34a60c8e2 clear out result in |do_QueryReferent| on error; assert in |NS_GetWeakReference| if the source object doesn't support weak references; also return NS_ERROR_NO_INTERFACE in release builds. r=pinkerton 1999-11-22 22:59:21 +00:00
dveditz%netscape.com
446b50640e x86 win should join unix and alpha win part of DBG_LOG macro 1999-11-22 08:41:04 +00:00
scc%netscape.com
778573923a fixed an annoying, but rare, bug where an |nsCOMPtr| in an ownership ring could |Release()| twice. See the comment in the code for details. r=waterson 1999-11-20 08:19:24 +00:00
dp%netscape.com
f7a9bde3c4 Eliminating leak of factory when getting it from hashtable.
Using NS_IMPL_ISUPPORTS1
Removing NS_DEFINE_IID
r=warren@netscape.com
1999-11-20 07:21:53 +00:00
warren%netscape.com
e43ba43af2 Fixed generic module factory lookup to look in cache. 1999-11-19 02:46:50 +00:00
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
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
tbogard%aol.net
dc27e88ecd NS_WARN_IF_FALSE now by default puts the windows messagebox up on a tripped warning condition. Before it relied on the developer having an environment variable set. r=pink a=sdagley 1999-11-10 04:32:33 +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
d5c96b7f3f missed two T-->nsISupports instances, which primary platforms didn't catch, since they weren't instantiated 1999-11-08 12:25:11 +00:00
scc%netscape.com
20035843b1 Specialize |nsCOMPtr| for |nsISupports| (i.e., |nsCOMPtr<nsISupports>|). The specialization _does_not_ have the invariant that |nsCOMPtr<T>| has of always pointing to the COM-correct interface. An |nsCOMPtr<nsISupports>| essentially means "a pointer to _any_ [XP]COM interface". This change allows dougt to fix his M11 bug. a=chofmann, r={danm, hyatt} 1999-11-08 11:43:11 +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
dougt%netscape.com
fd87026ad8 backing out changes. looks like this stuff is untested in a full build. 1999-11-05 03:31:04 +00:00
cls%seawood.org
9c777b0938 Fix for the template variable change from <T> to <nsISupports>. r=dougt 1999-11-05 03:11:03 +00:00
dougt%netscape.com
477a69da9d Fix for 17842. Make nsCOMPtr<nsISupports> should not be weak typed. scc's
this change to me and since he is on vacation until monday and I need this
for an M11 bug, I am checking it in.   I am hoping it is the right
thing to do.

a=brendan.
1999-11-05 02:18:46 +00:00
dveditz%netscape.com
04c2ee43f4 shutting up copious warnings using /W4 on MSVC 1999-11-03 07:39:19 +00:00
tbogard%aol.net
209f598dcb Second phase of changing NS_ENSURE() to NS_ENSURE_TRUE() and NS_ENSURE_NOT() to NS_ENSURE_FALSE(). r=hyatt 1999-11-02 01:18:52 +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
tbogard%aol.net
3d60c7ebb0 Changed NS_ENSURE to be NS_ENSURE_TRUE. Also changed NS_ENSURE_NOT to be NS_ENSURE_FALSE. Left NS_ENSURE and NS_ENSURE_NOT, but they will soon be going away. 1999-11-01 06:59:16 +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
valeski%netscape.com
aad867ad42 15590, r=kipp. added a nsCStringArray class so the cool string array functionality could be used for CStrings too. this checkin is *part* of a fix to the bug 1999-10-29 20:47:17 +00:00
tbogard%aol.net
0d9a9d8ba4 Just added support for an NS_IMPL_ISUPPORTS 7 - 10. 1999-10-25 03:42:10 +00:00
tbogard%aol.net
8d8ce920cb Just added support for an NS_IMPL_ISUPPORTS6. 1999-10-23 06:55:45 +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
65f6ba5343 Cleanup moz-decl-counter usage and fix NS_LOG_ADDREF usage 1999-10-08 20:41:19 +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
warren%netscape.com
37676fadb0 Added 'Bloaty' refcounting and memory bloat statistics code 1999-10-07 21:50:20 +00:00
waterson%netscape.com
2efd076b82 Bug 15367. Dump 'class' instead of 'file/line' for NS_LOG_REFCNT. r=shaver,dp 1999-10-05 00:07:54 +00:00
kipp%netscape.com
a5969c2c3f r=brendan; applied changes recommended by brendan 1999-10-04 23:35:51 +00:00
tbogard%aol.net
fa4392cf29 Changed NS_ENSURE* macros to use the new NS_WARN_IF_FALSE instead of the NS_ERROR. r=shaver. 1999-10-01 04:34:03 +00:00
beard%netscape.com
effe837ad8 fix breakage on Mac, r=kipp 1999-09-30 22:45:23 +00:00
beard%netscape.com
77f45de475 fix breakage on Mac 1999-09-30 22:30:32 +00:00
kipp%netscape.com
573461a95a Whoops. Fixed 1999-09-30 22:21:31 +00:00
kipp%netscape.com
556d538c8f Added in new nsDebug macros 1999-09-30 21:39:31 +00:00
shaver%netscape.com
b42e435cb0 add componentType to nsIModule::RegisterSelf 1999-09-22 03:18:27 +00:00
scc%netscape.com
ac2969608f Made a protected method for severing weak references early 1999-09-21 20:20:04 +00:00
warren%netscape.com
1eba29ca37 fixed mismatched free issues with nsID::ToString 1999-09-20 20:52:12 +00:00
alecf%netscape.com
456a51b989 add new query_interface4 and query_interfac5 (hey, I needed it!) 1999-09-13 23:23:20 +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
akkana%netscape.com
072e662a0d Print all warning messages on stdout, not just assertions 1999-09-07 19:15:10 +00:00
shaver%netscape.com
e43f44b24b put back <string.h> until we find all the uses =( 1999-09-06 21:22:36 +00:00
shaver%netscape.com
ac29ce202f remove gratuituous <string.h> include 1999-09-06 18:35:03 +00:00
shaver%netscape.com
6cecf4c569 convert to CreateInstanceFromProgID 1999-09-05 06:27:42 +00:00
kipp%netscape.com
948ad27a21 Reworked sizeof api's to be much more useful; updated implementations to match 1999-08-31 03:04:37 +00:00
scc%netscape.com
2162d2e029 some small documentation changes, plus removed a function that was otherwise unused, and was confusing Solaris. 1999-08-26 10:45:50 +00:00
tbogard%aol.net
84fb0f88b5 Added a couple of new macros to the NS_ENSURE family. NS_ENSURE_SUCCESS(res, ret). It ensures that a given result is an XPCOM success code, if not returns back whatever you pass in ret. And NS_ENSURE_NO_AGGREGATION(outer) checks to make sure the instantiating client is not trying to do aggregation and returns back an error if it is. 1999-08-25 14:03:25 +00:00
tbogard%aol.net
80ec2cfdfb Removed the #ifdef DEBUG around the definition of NS_ENSURE. The only difference between the two was the NS_ERROR. NS_ERROR is already conditional upon debug so this was a bit redundant. 1999-08-25 03:16:23 +00:00
tbogard%aol.net
7b7e859ba3 Fixed NS_ENSURE macros to use PR_BEGIN_MACRO and PR_END_MACRO. Also removed indentation before #. 1999-08-24 00:48:43 +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
504c1add4e fixed tabs 1999-08-23 10:07:16 +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
scc%netscape.com
dd71a6971a fixed ambiguous static cast in the NS_IMPL_QUERYINTERFACE2 case 1999-08-21 22:33:15 +00:00
jband%netscape.com
e7f612af72 fix bustage due to ambiguity in use of static_cast 1999-08-21 22:03:39 +00:00
scc%netscape.com
21a9c44373 Bad merge left two copies of ...QUERYINTERFACE2. Sorry. 1999-08-21 20:39:59 +00:00
scc%netscape.com
20c45cddb6 Added NS_IMPL_QUERY_INTERFACE[01]; fixed NS_IMPL_QUERY_INTERFACE2; added NS_IMPL_ISUPPORTS[01]; can't fix NS_IMPL_QUERY_INTERFACE without changing a ton of files, so I'm checking in this partial fix first. Then people can help me switch us away from NS_IMPL_ISUPPORTS and NS_IMPL_QUERY_INTERFACE. Both are now deprecated. 1999-08-21 20:22:35 +00:00