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
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
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
edcdeb94a5
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
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
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
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
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
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
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
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
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
alecf%netscape.com
456a51b989
add new query_interface4 and query_interfac5 (hey, I needed it!)
1999-09-13 23:23:20 +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
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
tbogard%aol.net
ada1396491
XPCOM Cleanup: Added macros to make checking arguments and state upon entering interface boundaries easier.
1999-08-19 05:32:15 +00:00
brendan%mozilla.org
b5c49d66b9
- Fix possessive "its" misspelled as "it's".
...
- Use if statements rather than ?: with 0 "else part" after the : in macros
whose bodies are statements anyway (and already protected by PR_BEGIN_MACRO
and PR_END_MACRO).
- Such if statements test for non-null pointers, so the subsequent statements
to null those pointers can move into the then parts -- there's no point in
setting a null pointer to null again.
1999-07-17 03:32:39 +00:00
warren%netscape.com
84bd74a4fd
Big changes for Necko load groups. Things are much happier now. Now images work (on pages, but not in chrome).
1999-07-16 11:14:36 +00:00
mccabe%netscape.com
07f00c67ca
Remove vestiges of XPIDL_JS_STUBS (no longer used or implemented by xpidl-generated files.)
1999-07-16 01:20:03 +00:00
scc%netscape.com
ab2352e498
switched over to _not_ using |__comobject|. Adjusted assembly to skip extra vtable header, and fixed inheritance in |nsISupports|
1999-07-15 03:02:01 +00:00
mscott%netscape.com
607ea9e584
Rewrite NS_IMPL_THREADSAFE_ADDREF and NS_IMPL_THREADSAFE_RELEASE in cross platform way instead of having separate
...
implementations for windows and everyone else. They are now written to use PR_AtomicIncrement and PR_AtomicDecrement.
this meant adding #include "pratom.h".
A side effect of this change is that no one needs to include "windows.h" in .cpp files which were implementing threadsafe
interfaces. You used to have to do this before with the old implementations.
1999-07-02 20:18:20 +00:00
scc%netscape.com
0dfaa19773
all the changes are in, time to remove the #undef line so the traits class can do the right thing on platforms that support template specialization
1999-06-30 01:40:21 +00:00
scc%netscape.com
ed5943e923
add traits class to solve multiple |GetIID()| problems
1999-06-29 20:11:57 +00:00
dveditz%netscape.com
9fb13399c8
Adding NS_RELEASE_THIS()
1999-06-16 03:28:25 +00:00
waterson%netscape.com
4ef0ae057a
Add MOZ_TRACE_REFCNT to allow you to instrument individual implementations of AddRef() & Release().
1999-06-15 03:25:27 +00:00
bruce%cybersight.com
2c4766ddbd
Remove static IID kISupportsIID from the default QueryInterfaces implementation macro. Replace with call to nsISupports::GetIID(). Tested by dp, myself and tague on the 3 main platforms (Win32, Linux and Mac respectively).
1999-05-29 16:25:18 +00:00
dp%netscape.com
b21d1e72dc
Fixing nsrefcnt to be unsigned long to maintain binary compatibility. All Addref() and Release() prototypes modified appropriately
1999-05-28 04:53:17 +00:00
dp%netscape.com
381323acf0
Reversing changing type of nsrefcnt. Mailnews code has specific Release() implementation that mention a different type. We need to fix that first.
1999-05-28 02:07:49 +00:00
dp%netscape.com
246c3f4fe4
Fixed Binary compability with COM's nsIUnknown w.r.t return value types of Addref and Release.
...
nsrefcnt is defined as unsigned long for windows machines with 4 bytes per long.
1999-05-28 01:22:35 +00:00
scc%netscape.com
04d849f0ec
Fixup CallQueryInterface
1999-05-12 04:50:08 +00:00
jband%netscape.com
ff6dae2ffa
checking in generated versions of these xpcom headers. soon we will be generating these at compile time. Sources for these files are in xpcom/idl. They are regenerated from those files using xpidl -m header filename.idl
1999-05-07 01:45:20 +00:00
scc%netscape.com
470c0f17ac
change |CallQueryInterface| to handle situations where |nsISupports| is ambiguous.
1999-05-04 12:40:52 +00:00
scc%netscape.com
d9a7d33e9a
somebody is including this file inside an |extern "C"| declaration. That's bad. I can't find the culprit, but I can mark the important function |extern "C++"| to allow windows to compile.
1999-05-04 10:23:56 +00:00
scc%netscape.com
09dac5f140
oops
1999-05-04 09:51:04 +00:00
scc%netscape.com
6bab6751e6
Added |CallQueryInterface|, a type-safe interface to |QueryInterface|
1999-05-04 09:44:27 +00:00