Граф коммитов

91 Коммитов

Автор SHA1 Сообщение Дата
scc%netscape.com eaeff321cf 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 dfa83459be Added |do_QueryReference| for initializing/assigning from |nsWeakPtr|s. Also some fixes. 1999-08-03 07:21:39 +00:00
scc%netscape.com 73a836eeaa 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 4adb195c6c 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 9d49cb3127 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 cc711499f4 quick fix for bug 9250 - assert on startup 1999-06-30 07:13:26 +00:00
shaver%netscape.com f8f7778a8e partial backout of scc's nsCOMPtr, attempting to revive Win32 build 1999-06-29 22:33:18 +00:00
scc%netscape.com d10f87cd9d 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 0c87834eef fixed for VMS 1999-06-03 20:36:53 +00:00
scc%netscape.com 16cc6edf13 replaced tabs with spaces as per our standards 1999-06-02 01:59:28 +00:00
scc%netscape.com 5c2933b1c2 added comparisons that will allow |nsnull != myPtr| et al 1999-06-02 01:29:55 +00:00
scc%netscape.com 5f7f07adc9 Fixup CallQueryInterface 1999-05-12 04:50:08 +00:00
scc%netscape.com 4fb41627b5 temporarily commented out CallQueryInterface for UNIX, added NS_EXPORT for Windows 1999-05-10 21:43:29 +00:00
scc%netscape.com 64fea0e7f5 conditionally factored destructor 1999-05-10 20:48:43 +00:00
scc%netscape.com 4c26313504 sense of HAVE_CPP_BOOL was backwards, fixed it (thanks, Jim Dunn) 1999-05-05 23:36:38 +00:00
scc%netscape.com 6c7fa04eb5 -----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 314436f96d change |CallQueryInterface| to handle situations where |nsISupports| is ambiguous. 1999-05-04 12:40:52 +00:00
scc%netscape.com f5a32343a4 added |null_nsCOMPtr()|, |CallQueryInterface()|, fixed comments; added |const| in several appropriate places 1999-05-04 09:37:35 +00:00
scc%netscape.com 8eb511fa4b inlining the work of |StartAssigment| reduces |nsCOMPtr| overhead on windows. 1999-03-23 20:35:49 +00:00
scc%netscape.com 31ff626ae9 rename |IID()| --> |GetIID()| 1999-03-03 19:48:57 +00:00
scc%netscape.com 9d21ae3942 backed out depency on nscore.h 1999-03-02 23:52:38 +00:00
scc%netscape.com 8058bf1464 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 49754e4257 Adding comparisons to autoconf results. 1999-03-01 10:13:18 +00:00
ramiro%netscape.com 0875a55f81 AIX portability fixes. (Waqar Malik <waqar@netscape.com>) 1999-03-01 06:29:14 +00:00
scc%netscape.com 312b8d76d7 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 0238953fe3 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 e7831871be fix AIX bustage 1999-02-26 18:58:08 +00:00
alecf%netscape.com 643dbd9b6d fix HPUX bustage - HP's compiler can't do "using" or static casts 1999-02-25 17:47:54 +00:00
mcafee%netscape.com 99b1533740 Adding support for Solaris native compiler. a=scc 1999-02-18 22:34:15 +00:00
scc%netscape.com d4ae494464 updated to new interface for nsCOMPtr 1999-02-17 01:58:25 +00:00
scc%netscape.com f020767dfc Added |nsresult nsCOMPtr::assignment_error() const;| which returns the error, if any, from the most recent operation (constructor or assignment operator) that implicitly calls |QueryInterface|. This did not increase the size of an |nsCOMPtr|. 1999-02-11 01:34:07 +00:00
scc%netscape.com edaa2f7db9 Made the constructor explicit again (see comment) to stop people from breaking the Linux builds. 1999-01-22 01:17:48 +00:00
scc%netscape.com 0c7a4ca128 OK. We were wrong about the SOLARIS case. Sorry. 1999-01-18 20:32:41 +00:00
scc%netscape.com be87c1b10a Added patch for bsdi from netscape.public.mozilla.patches; removed test for !SOLARIS as agreed with macafee. 1999-01-18 18:32:33 +00:00
scc%netscape.com e52a11daa0 Now test pointer result _and_ error code on return from QueryInterface, as some implementations return garbage. 1999-01-16 02:37:22 +00:00
mjudge%netscape.com c2935a0853 scc and I decided that the explicit keyword was not necessary for the constructor.
It never hurts you to make an nsCOMPtr.  MJ
1999-01-15 18:57:31 +00:00
scc%netscape.com a89c841519 defined NSCAP_NEED_UNUSED_VIRTUAL_IMPLEMENTATIONS for GNU 2.7 under linux. Fixed URL leading to the user manual. Noted that ramiro is working on getting all these special #defines handled by the configuration system instead. 1999-01-05 21:07:57 +00:00
scc%netscape.com d5aa76aba6 added |dont_QueryInterface| facility, re-added the NS_ADDREF macros, though conditionally 1998-12-21 23:26:39 +00:00
scc%netscape.com 38897ed3d0 NSCAP_FEATURE_DONT_ADDREF is no longer optional, and the symbol has gone away. This facility turns out to be needed. Also catch the case when operator= is called on a dereferenced smart pointer. Fixed some documentation. 1998-12-18 03:45:44 +00:00
scc%netscape.com e42b720fb2 enabled the dont_AddRef feature, for when functions return an already AddRefed result, e.g. |mSmartPtr = dont_AddRef(GetThing());| 1998-12-17 19:32:00 +00:00
scc%netscape.com cbfe9f5b15 First Checked In. 1998-12-17 19:12:45 +00:00