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

203 Коммитов

Автор SHA1 Сообщение Дата
Kyle Huey a13be59eca Bug 709747: Fix COMPtr logging for .forget(). r=dbaron 2012-06-29 10:10:31 -07:00
Jonathan Watt 970e60a384 Bug 767388 - Kill NS_DEBUG. r=bz.
--HG--
extra : rebase_source : d045208a26345712dbb4628c973c616cd9504f28
2012-06-25 20:59:42 +01:00
Gervase Markham 82ff7027aa Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Marco Bonardo 73a9ed5c84 Bug 718999 - make "You can't dereference a NULL nsCOMPtr" assertions fatal.
r=bsmedberg
2012-01-24 20:37:48 +01:00
Ms2ger b2b42ad049 Bug 709747 - Support nsCOMPtr<T>::forget(I**); r=bsmedberg 2011-12-18 10:39:22 +01:00
Ehsan Akhgari 8165dcad8a Bug 710473 - Backout the nsDerivedSafe part from bug 666414 to make PGO builds on Windows work again; r=roc (cause he volunteered) a=xul-diet 2011-12-13 20:03:24 -05:00
Andrew Quartey 6fe0fd072a Bug 706010 - Remove NS_SPECIALIZE_TEMPLATE and HAVE_CPP_MODERN_SPECIALIZE_TEMPLATE_SYNTAX; r=khuey a=cleanup/removal 2011-12-13 14:17:59 +00:00
Jeff Walden 84471e527a Bug 707352 - Remove NS_FINAL_CLASS completely. r=cjones 2011-12-05 17:10:05 -05:00
Jeff Walden df2b7cbc5c Bug 704127 - Implement MOZ_FINAL as a modifier for classes and virtual member functions. r=cjones
--HG--
extra : rebase_source : d95a3b3e726f810f299314358ba8c5e23557698e
2011-11-20 22:21:16 -08:00
Ehsan Akhgari d306463c79 Bug 689397 - Work around the broken-ness of gcc4.2 on Mac which causes the protection implemented in bug 666414 not take effect; r=bsmedberg 2011-09-26 20:45:25 -04:00
Aditya Bhatt 9a495ee4f8 Bug 689301 - Compile error in nsTimerImpl.cpp with gcc 4.6.0 on Fedora core 15 x64; r=espindola 2011-09-27 17:11:03 -04:00
Ehsan Akhgari 5272acdabd Bug 666414 - Prevent AddRef and Release from being called on the pointers wrapped in nsCOMPtr and nsRefPtr; r=bsmedberg 2011-09-16 16:22:44 -04:00
Matheus Kerschbaum 0f5b3e839c Bug 680625 part 0b: Remove more workarounds for past century compilers. r=ted 2011-08-26 00:35:13 +01:00
Chris Jones 87d0ed7e60 Bug 570912: Allow already_AddRefed<T> to be coerced to already_AddRefed<U> when T can be coerced to U. r=dbaron 2010-06-21 15:35:49 -05:00
Boris Zbarsky fbb1d45b16 Bug 523651. Add a CallQueryInterface that works well with nsCOMPtr. r=bsmedberg 2009-10-23 16:24:47 -04:00
Peter Van der Beken 2c32ed4318 Fix for bug 481677 (Avoid hash lookups in XPCWrappedNative::GetNewOrUsed). r=bz, sr=jst.
--HG--
extra : rebase_source : 6062975766022118372d2e52f81659f87276b8ec
2009-03-18 19:02:48 +01:00
Peter Van der Beken 376551de73 Backing out f385e435c082, fix for bug 481677 (Avoid hash lookups in XPCWrappedNative::GetNewOrUsed), to try to fix orange. 2009-03-19 14:05:26 +01:00
Peter Van der Beken fa079f9105 Fix for bug 481677 (Avoid hash lookups in XPCWrappedNative::GetNewOrUsed). r=bz, sr=jst.
--HG--
extra : rebase_source : 9e25f0d56df57d65559e18acd49412e3e164821e
2009-03-18 19:02:48 +01:00
Benjamin Smedberg 470d4ccbfb Bug 469072 - Annotations in XPCOM, and a couple related code fixups, to make outparams spit out useful warnings, r=bent 2008-12-11 15:13:52 -05:00
Henry Jia 7df96eb40c Bug 178189 - |nsCOMPtr|: do we still care about VC++4.2? and if not, can we remove this comment; r=(scc + benjamin) 2008-09-29 00:17:30 +02:00
Benjamin Smedberg 088d1de487 From bug 449561, bug 445949, and others: let's just ditch nsDerivedSafe since the class of errors it's trying to protect against are uncommon in today's world. r=dbaron 2008-08-11 11:05:58 -04:00
benjamin@smedbergs.us 62231824a0 Bug 419624 - Build framework, basic usage, and testsuite for statically checking the codebase using gcc-dehydra, r=luser,dbaron,tglek 2008-02-27 11:28:13 -05:00
bent.mozilla@gmail.com 491c9c1063 Bug 396369 - "Overload forget method on nsCOMPtr/nsRefPtr to work with out parameters". r=dbaron, sr=bsmedberg, a=damons. 2007-11-11 10:56:45 -08:00
cbarrett@mozilla.com 6e88ffabca Typo fix and poking tinderbox. No bug. 2007-10-29 22:51:33 -07:00
jwalden@mit.edu d09c44d69c Bug 348748 - Cleanup from the handful of patches which have landed since the initial landing that have readded cast macros; I intend to remove the rest of the instances Very Soon, all but certainly before the M8 freeze, so the macro definitions can be removed, again all but certainly before the M8 freeze, if people are okay with them being removed. Still r=bsmedberg, a=no-functionality-change 2007-09-04 23:41:35 -07:00
bent.mozilla@gmail.com dca0f40dcc Bug 392493 - "Add forget() method to nsCOMPtr and nsRefPtr". r=dbaron, a=bzbarsky. 2007-08-28 16:37:22 -07:00
jwalden@mit.edu 6d7584839a Bug 348748 - Replace all instances of NS_STATIC_CAST and friends with C++ casts (and simultaneously bitrot nearly every patch in existence). r=bsmedberg on the script that did this. Tune in next time for Macro Wars: Episode II: Attack on the LL_* Macros. 2007-07-08 00:08:04 -07:00
neil@parkwaycc.co.uk 417d5864d4 Slightly safer and neater fix for strict aliasing bug 351231 r+sr=dbaron 2007-03-23 13:26:20 -07:00
kjh-5727%comcast.net 70b1c37b63 Bug 351231: type-pun warnings from nsCOMPtr, part II. r+sr=dbaron. 2006-11-23 16:10:43 +00:00
kjh-5727%comcast.net e7bf3029de Bug 351231: type-pun warnings from nsCOMPtr. r+sr=dbaron. 2006-11-23 13:21:27 +00:00
cvshook%sicking.cc 636e4e6e5f Don't return nsDerivedSafe when .get() is explicitly used on nsCOMPtr and nsRefPtr. r/sr=dbaron 2006-11-21 21:28:14 +00:00
jag%tty.nl 4e97474bac Bug 324124: nsCOMPtr can be constructed with const char* and nsID
r=bsmedberg, sr=dbaron
2006-01-21 11:23:32 +00:00
bsmedberg%covad.net a4d3866df3 Bug 313309 part 1 - use __fastcall for NS_FASTCALL on windows, r=shaver 2005-11-10 14:43:22 +00:00
dougt%meer.net 55eb21a1ac bug 280245. WinCE build and support changes. r=darin 2005-01-30 21:33:47 +00:00
bryner%brianryner.com 29c70cffe8 Reduce do_GetService code bloat further by adding specialized assignment to nsCOMPtr and providing a version with no error pointer. Also make CallGetService work the same way as CallGetComponent does, as far as using frozen/non-frozen interface to service manager. Bug 264456, r=darin. 2004-11-24 22:48:45 +00:00
darin%meer.net abcd15ca39 fixes bug 266006 "xpcom/glue should not declare methods with NS_COM" r=bsmedberg 2004-10-29 19:43:51 +00:00
neil%parkwaycc.co.uk 6a176399ec Bug 253941 Compilers that know about explicit constructors should be able to stop you from assigning nsISupports and derived pointers directly into incompatible nsCOMPtrs r=scc sr=dbaron 2004-10-25 21:45:00 +00:00
bryner%brianryner.com 23089547be Add a NS_FASTCALL macro that specifies regparm(3) and stdcall on gcc/x86 to improve performance (passing up to 3 arguments in registers instead of on the stack, and having the caller pop any stack arguments). Apply NS_FASTCALL to our most frequently called non-public methods and functions. Also add NS_CDECL to explicitly specify the default calling convention and make it part of NS_IMETHOD, since xptcall can't deal with NS_FASTCALL. Bug 249652, r=darin, sr=dbaron. 2004-07-14 22:14:34 +00:00
gerv%gerv.net 31625ba2b1 Bug 236613: change to MPL/LGPL/GPL tri-license. 2004-04-18 14:21:17 +00:00
sicking%bigfoot.com 82c3229f9b Bug 234725: Make create a special mechanism for nsQueryInterface rather then having it implement nsCOMPtr_helper to save codesize in callers of do_QueryInterface.
r=bryner sr=alecf
2004-03-04 23:04:27 +00:00
bryner%brianryner.com 6c1c138f3c Re-enable nsCOMPtr_base on gcc 3.x, and use the may_alias attribute for mRawPtr to avoid strict aliasing problems on gcc 3.3+. Bug 212082, r=darin, sr=dbaron. 2003-11-13 07:37:14 +00:00
dbaron%dbaron.org ce5146b843 Incorrect test in previous checkin. b=220291 2003-10-23 02:29:47 +00:00
dbaron%dbaron.org 039566e00c Combine NSCAP_FEATURE_FACTOR_DESTRUCTOR and NSCAP_FEATURE_DEBUG_PTR_TYPES into NSCAP_FEATURE_USE_BASE to fix leaks when mixing builds compiled in different ways. b=220291 r=scc sr=bryner a=asa 2003-10-22 23:29:00 +00:00
bryner%brianryner.com a08b523fc1 Make nsCOMPtr operator== work correctly with multiple inheritance (bug 221316). r=dbaron, sr=darin. 2003-10-07 20:43:34 +00:00
dbaron%dbaron.org d0e0b80805 Do not use nsCOMPtr_base with gcc3, since doing so violates aliasing rules. b=212082 r=scc sr=bryner 2003-09-25 05:43:42 +00:00
mkaply%us.ibm.com 1a38ab2d00 rs=leaf
Remove XP_OS2_VACPP from the tree
2003-07-22 18:38:01 +00:00
caillon%returnzero.com 4cc64cee34 Bug 209852. Remove |dont_QueryInterface|.
r=dbaron, sr=jag
2003-06-21 00:15:41 +00:00
sicking%bigfoot.com 13f65a560a Bug 209667: Make it possible to hold an nsRefPtr to a class that lacks an empty ctor. I'll back this out if it breaks any ports.
r=jag sr=dbaron on the nsCOMPtr.h part
r=Pike sr=peterv on the transformiix part
2003-06-19 18:21:39 +00:00
dbaron%dbaron.org 015ab0d484 Change _MSC_VER ifdef since MSVC++ .net 2003 has fixed one of their compiler bugs. b=208439 Patch from Ian Hickson <ian@hixie.ch>. r=dbaron sr=jag 2003-06-05 18:50:16 +00:00
jkeiser%netscape.com ea020d3190 Remove the no-forward-declared-nsCOMPtr hack (bug 107291), r=bugmail@sicking.cc, sr=dbaron@dbaron.org 2003-06-03 03:56:14 +00:00
dbaron%dbaron.org af71f025b3 Fix bustage on IRIX 6.5 tinderbox (native compiler) with another platform test. b=66134 2003-03-18 15:12:20 +00:00
dbaron%dbaron.org 2fe6241286 Change AIX_XLC_364 ifdef back to AIX due to linker errors on current AIX tinderbox. b=66134 2003-03-18 05:50:53 +00:00
mkaply%us.ibm.com 4838fe80e4 Per scc - NS_REINTERPRET_CAST is the right thing here 2003-02-25 19:43:41 +00:00
mkaply%us.ibm.com 097d5ce211 OS/2 bustage - fix from scc - need static cast 2003-02-25 19:38:00 +00:00
scc%mozilla.org 10ccbee43a bug #78016 r=dbradley, sr=dbaron 2003-02-25 15:53:36 +00:00
bryner%netscape.com e43f5a49fd Remove nsIStyleContext (bug 114713), r/sr=dbaron. Changed lots of methods to use nsStyleContext* or already_AddRefed<nsStyleContext> as return values, depending on whether a reference is returned. Turn on nsRefPtr (bug 104346), and change nsDerivedSafe to not declare AddRef and Release explicitly virtual, r=jag, sr=dbaron. 2003-02-22 00:32:13 +00:00
dbaron%fas.harvard.edu a34c46af22 Change my email address from dbaron@fas.harvard.edu to dbaron@dbaron.org. Comment changes only. 2003-01-01 23:53:20 +00:00
jkeiser%netscape.com 35c5cded43 Backing out bug 107291 due to OS/2 having a crappy compiler. 2002-10-08 09:30:40 +00:00
jkeiser%netscape.com 53ea2dfc93 Make forward declarations work with nsCOMPtr (bug 107291), r=sicking@bigfoot.com, sr=dbaron@fas.harvard.edu 2002-10-08 06:19:10 +00:00
dougt%netscape.com 2764a9a972 nsCOMPtr.h needs nsISupportsUtils.h. b=169049, r=rpotts, sr=alecf 2002-09-17 02:32:00 +00:00
scc%mozilla.org 0b992232af bug #132278, r=dbaron, sr=vidur, a=asa, make |nsCOMPtr::operator&()| legal again 2002-03-22 00:05:16 +00:00
dougt%netscape.com 40642fc34c 130405. Makes the xpcom glue library usable. Updates XPCOM Samples. Adds requires lines to a few implict string/category consumers sr=alecf, sr=brendan@mozilla.org a=asa@mozilla.org 2002-03-21 23:43:21 +00:00
jdunn%netscape.com cd34d9887d Change certain AIX ifdefs to AIX_XLC_364 since these ifdefs are only
needed for AIX's xlC 3.6.4 compiler.  Add test to configure to check
compiler version.  NOTE: also adding hpux and aix check for keyboardutils.
r=cls@seawood.org
# 119179
2002-01-25 15:07:38 +00:00
timeless%mac.com 8eccbe5de9 Bugzilla Bug 110080 change !NS_SUCCEEDED(status) to NS_FAILED(status)
r=axel@pike.org sr=kin
2001-11-22 15:12:51 +00:00
dougt%netscape.com 91b4b36d52 backing out changes to 104172. r=ccarlen@netscape.com 2001-10-23 03:50:24 +00:00
dougt%netscape.com b5ba390898 Extraneous Symbol Removal. Patch by Jon Smirl jonsmirl@mediaone.net. r=dougt@netscape.com, sr=alecf@netscape.com. Bug 104172 , 104316 , 104420 , 104426 , 104461 , 104511 , 104527 2001-10-23 01:37:21 +00:00
jaggernaut%netscape.com dc31b7e710 Bug 81444: Remove deprecated null_nsCOMPtr(), r=mozbot, sr=scc. 2001-10-10 07:51:08 +00:00
dbaron%fas.harvard.edu 180cc29e43 Fix typo in include guard. r=jag 2001-10-02 03:18:12 +00:00
gerv%gerv.net 4e12e44b2f Relicensing Round 1, Take 2. Most C-like NPL files -> NPL/GPL/LGPL. Bug 98089. 2001-09-28 20:14:13 +00:00
brendan%mozilla.org dbd7fed5b1 FASTLOAD_20010703_BRANCH landing, r=dbaron, sr=shaver. 2001-07-31 19:05:34 +00:00
scc%mozilla.org 6805c2745f bug #75504; sr=jband. making it impossible to misuse |getter_AddRefs| in the way jband discovered 2001-05-03 10:15:09 +00:00
brendan%mozilla.org 4f5aafa905 Checkin shaver's patch to allow debug Mozilla builds to dynamicly link with XPCOM-based, nsCOMPtr-using optimized plugins (77112, r=brendan, sr=scc, a=chofmann). 2001-04-24 21:13:15 +00:00
dbaron%fas.harvard.edu 1244386ebc Fix bustage on VC++ and gcc 2.7.2.x caused by incorrect overload resolution. 2001-04-07 17:25:16 +00:00
dbaron%fas.harvard.edu 780cb86a7a Replace my previous incorrect fix for |operator==| ambiguities with a correct one: provide additional |operator==| and |operator!=| for comparing nsCOMPtrs to raw pointers that take a non-const raw pointer argument so that builtin operators will not have a better conversion for one argument. b=65664 r=waterson@netscape.com sr=scc@mozilla.org 2001-04-07 15:29:39 +00:00
dbaron%fas.harvard.edu 59a4590389 Make |nsCOMPtr<T>::operator&| private so that it is not used by clients. Legitimate users should use |address_of| instead. b=59414 r=disttsc@bart.nl sr=scc@mozilla.org
Fix ambiguities relating to the various forms of |operator==| defined for nsCOMPtrs by avoiding |const| for parameters for compilers where it (incorrectly) confuses overload resolution.  r=scc@mozilla.org  sr=brendan@mozilla.org  b=65664
2001-02-04 19:57:29 +00:00
dbaron%fas.harvard.edu 3331dd382b Attempt to fix |address_of| bustage on IRIX. r=scc@mozilla.org b=59414 2000-12-10 03:13:53 +00:00
dbaron%fas.harvard.edu 81352c0825 Work in progress for bug 59414. Prepare to make |nsCOMPtr|'s |operator&| private to prevent many cases of accidental usage, and provide |address_of| for clients who really want a pointer to an nsCOMPtr. r=scc@mozilla.org sr=waterson@netcape.com 2000-12-09 04:45:43 +00:00
cls%seawood.org f9754b268f Workaround for long-standing AIX bustage 2000-07-28 08:11:51 +00:00
mkaply%us.ibm.com dc2e138a70 # 37239
r = valeski, a = brendan
OS/2 bring-up - Yes I know this is ugly.
We are getting a linker error on this delete.
We want to get our builds up by any means necessary,
so I need to comment this out for us for now.
2000-06-14 00:26:52 +00:00
scc%mozilla.org 5108fd1bbe further logging fixes; removed |explicit| to "nscore.h"; removed old-style logging definitions for |NSCAP_ADDREF| and |NSCAP_RELEASE|, define them externally if you want them (the new comment says how); fixed some comments... I'll be moving to doc-style comments soon to better support doxygen 2000-06-10 09:58:13 +00:00
scc%mozilla.org fbdb41c4de further fix for the defined case. r=dbaron 2000-06-08 05:08:14 +00:00
scc%mozilla.org 372c751346 Improved logging facilities on |nsCOMPtr| in cooperation with dbaron, for his new logging tools. r=dbaron 2000-06-08 04:52:39 +00:00
waterson%netscape.com 94bd261c1c Canonify HAVE_CPP_ACCESS_CHANGING_USING and HAVE_CPP_AMBIGUITY_RESOLVING_USING. 2000-06-05 00:46:37 +00:00
scc%mozilla.org ebc8903c87 Bug #39824. Checking in patch from dp. This patch fixes exports on some |nsCOMPtr_helper| classes so we can link appropriately. r=scc. 2000-05-20 18:31:45 +00:00
waterson%netscape.com 8e51bfbbef Remove #ifdef that is unnecessary when STL headers are not included. 2000-05-14 00:05:24 +00:00
waterson%netscape.com 2ecdf03c7c Add necessary code to get NEW_STRING_APIS to compile properly on gcc-2.7.2.3. r=scc 2000-05-13 00:05:29 +00:00
scc%netscape.com e3490a6024 changed some comments 2000-05-12 05:20:21 +00:00
waterson%netscape.com 9de0d361a8 Beef up autoconf tests to differentiate 'ambiguity resolving' and 'access changing' support of the 'using' keyword. Add a test to see if the 'std' namespace is used on the platform. r=scc 2000-03-28 07:01:37 +00:00
scc%netscape.com 367b68ace3 slight renaming and fixed a template signature for AIX 2000-03-22 22:52:17 +00:00
scc%netscape.com 532a4d13c7 Added the Bill Law trick to make |nsCOMPtr| break the build for everybody where it use to break it only for Solaris and a few others (the `tainting' problem). Added a haiku. r=danm 2000-03-18 05:17:46 +00:00
scc%netscape.com d6840ff7c1 Renamed an internal typename. Was |nsDontAddRef<T>|, now is |already_AddRefed<T>| in hopes that it can be used outside of "nsCOMPtr.h". Moved |HAVE_CPP_...| symbols out of here and into "nscore.h" because more files need them. r=pinkerton 2000-03-17 23:08:18 +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 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