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
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
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
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
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
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
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
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
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
scc%netscape.com
504c1add4e
fixed tabs
1999-08-23 10:07:16 +00:00
scc%netscape.com
0921e3bfc2
renamed to QueryReferent, do_QueryReferent, etc.
1999-08-13 23:00:58 +00:00
scc%netscape.com
2e0d0f92ea
experiment: I don't think it like the forward declaration
1999-08-03 10:44:12 +00:00
scc%netscape.com
264a0e83ae
Moved the typedef to its own file: "nsWeakPtr.h". This avoids the circular includes problem and lets people #include just "nsWeakPtr.h" when they want an |nsWeakPtr|.
1999-08-03 08:15:31 +00:00
scc%netscape.com
f8db1fc479
OK, now only nsCOMPtr.h includes nsIWeakReference, and not the other way around. I'll probably have to make a header file just to contain the one-line typedef I moved.
1999-08-03 08:10:08 +00:00
scc%netscape.com
4756a19b59
Well, not everybody could do it just from the forward declared class. Yes, nsCOMPtr.h and nsIWeakReference.h include eachother, but it works anyway (they test for already being included).
1999-08-03 07:44:53 +00:00
scc%netscape.com
ea78a0060a
Added |do_QueryReference| for initializing/assigning from |nsWeakPtr|s. Also some fixes.
1999-08-03 07:21:39 +00:00
scc%netscape.com
2a0eda4e69
Allow explicit disabling of |...TEST_DONTQUERY_CASES| and |...DEBUG_PTR_TYPES| on the command-line for problematic compilers like QNX et al. This allows me to fix the QNX build, and provide an answer to some people compiling with the Sun Workshop.
1999-07-22 21:09:49 +00:00
scc%netscape.com
89652d3a1f
switching back to the stricter declaration of |nsDerivedSafe<T>::operator=()|. Since I removed |nsISupportsArray::operator=()|, all should be well. I left the old declaration in but commented out, just in case. I hope I don't have to conditionalize this wth an autoconf test. I've built this (with the help of several other people including mjudge, waqar, slamm, et al) on as many other platforms as I could. This declaration is intended to stop people from declaring an |operator=()| in their (XP)COM interface classes.
1999-07-22 20:03:42 +00:00
scc%netscape.com
a9bb3d6a16
new feature lets you `see past' |nsISupports| in |nsCOMPtr|s. Now in the debugger (in debug versions only) you will see the actual type of the object. This is enabled by defining the preprocessor symbol |NSCAP_FEATURE_DEBUG_PTR_TYPES|. It cannot be turned on in non-debug builds. It is currently on in debug builds by default. It may become a feature that has to be enabled with a build command line switch.
NSCAP_FEATURE_ALLOW_RAW_POINTERS is now always the case and no longer optional; NSCAP_FEATURE_ALLOW_COMPARISONS is now always the case and no longer optional; cleaned up the previous definition and invocations of the |Assert_NoQueryNeeded| test.
1999-07-15 03:59:09 +00:00
jband%netscape.com
0938e9a7df
quick fix for bug 9250 - assert on startup
1999-06-30 07:13:26 +00:00
shaver%netscape.com
3059d46d41
partial backout of scc's nsCOMPtr, attempting to revive Win32 build
1999-06-29 22:33:18 +00:00
scc%netscape.com
106c685c8e
added logic to test whether QueryInterface was actually required when it is ommitted, |nsISupports::GetIID()| --> |nsCOMTypeInfo<nsISupports>::GetIID()|, changed the scheme by which we compare with zero to a more robust mechanism, modified specialized |CallQueryInterface| to use the global version
1999-06-29 21:09:59 +00:00
scc%netscape.com
138e0c0a59
fixed for VMS
1999-06-03 20:36:53 +00:00
scc%netscape.com
f951053c41
replaced tabs with spaces as per our standards
1999-06-02 01:59:28 +00:00
scc%netscape.com
5de8115999
added comparisons that will allow |nsnull != myPtr| et al
1999-06-02 01:29:55 +00:00
scc%netscape.com
04d849f0ec
Fixup CallQueryInterface
1999-05-12 04:50:08 +00:00
scc%netscape.com
e5b9f0e804
temporarily commented out CallQueryInterface for UNIX, added NS_EXPORT for Windows
1999-05-10 21:43:29 +00:00
scc%netscape.com
d673031bca
conditionally factored destructor
1999-05-10 20:48:43 +00:00
scc%netscape.com
51bf7982c7
sense of HAVE_CPP_BOOL was backwards, fixed it (thanks, Jim Dunn)
1999-05-05 23:36:38 +00:00
scc%netscape.com
92430ecb22
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Wow! Re-enabled initialization/assignment from raw COM interface pointers, only this time it means the same as |dont_QueryInterface|. Which is what people want and expect. Re-enabled comparisons between |nsCOMPtr|s and raw COM interface pointers; and it means what people expect: are these two 4-byte values equal/not-equal. Added a function for comparing two pointers (either can be raw or nsCOMPtr) called |SameCOMIdentity|, which provides the other kind of comparison.
No current functionality has changed. Everything you're doing now is still legal and valid. These changes only bring some additional options.
-----BEGIN PGP SIGNATURE-----
Version: PGP Personal Privacy 6.0.2
Comment: get my key at < http://www.meer.net/ScottCollins/#key >
iQA/AwUBNzAeufGmojMuVn+fEQInWgCfUVK/7xfd/pdhAmyIe4HhynKsuucAn20t
MRtmNY4e2MAdwClvhR65a5Yv
=elb3
-----END PGP SIGNATURE-----
1999-05-05 10:37:05 +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
d686c1191e
added |null_nsCOMPtr()|, |CallQueryInterface()|, fixed comments; added |const| in several appropriate places
1999-05-04 09:37:35 +00:00
scc%netscape.com
a3aecb2482
inlining the work of |StartAssigment| reduces |nsCOMPtr| overhead on windows.
1999-03-23 20:35:49 +00:00
scc%netscape.com
2ec0a397ea
rename |IID()| --> |GetIID()|
1999-03-03 19:48:57 +00:00
scc%netscape.com
1cd756d76b
backed out depency on nscore.h
1999-03-02 23:52:38 +00:00
scc%netscape.com
eee168d553
now rely on "nscore.h" for NS_REINTERPRET_CAST instead of defining my own. now relying on autoconf system for all unixes. Some tests may need to be fixed.
1999-03-02 23:08:54 +00:00
mcafee%netscape.com
f3ffb9a767
Adding comparisons to autoconf results.
1999-03-01 10:13:18 +00:00
ramiro%netscape.com
1bf8790f66
AIX portability fixes. (Waqar Malik <waqar@netscape.com>)
1999-03-01 06:29:14 +00:00
scc%netscape.com
67bb023757
for VC++5.0, no member using declarations (to prevent internal compiler error); to make this compile fixed type of AddRef and Release in nsDerivedSafe
1999-02-26 23:43:40 +00:00
scc%netscape.com
fb59a99841
deprecated |dont_AddRef|, added a new form of |getter_AddRefs| to take its place. Removed all nothing of bool from the headers (should help gcc)
1999-02-26 19:50:46 +00:00
alecf%netscape.com
6b6c41ebc8
fix AIX bustage
1999-02-26 18:58:08 +00:00
alecf%netscape.com
e5d1ad1d90
fix HPUX bustage - HP's compiler can't do "using" or static casts
1999-02-25 17:47:54 +00:00
mcafee%netscape.com
9feda1b10b
Adding support for Solaris native compiler. a=scc
1999-02-18 22:34:15 +00:00