Nathan Froyd
7873eb0325
Bug 1095541 - part 2 - move already_AddRefed to its own header file; r=bsmedberg
2014-11-07 11:17:41 -05:00
Nathan Froyd
7c3afbd946
Bug 1095633 - part 1 - remove uses of HAVE_CPP_TROUBLE_COMPARING_TO_ZERO from headers; r=bz
2014-11-07 14:44:12 -05:00
Nicholas Nethercote
f57e56e187
Bug 1058388 - Remove NS_COM_GLUE and IMETHOD_VISIBILITY. r=bsmedberg.
...
--HG--
extra : rebase_source : 250ec1323d4097101a8e0331a2bf7fab59f72b1d
2014-08-27 15:47:27 -07:00
Birunthan Mohanathas
dffead394b
Bug 1046841 - Fix comment style of nsCOMPtr.h. r=froydnj
2014-08-25 12:17:20 -07:00
Jeff Walden
e9e4aa4f5e
Bug 1044598 - Make nsCOMPtr.h no longer depend on the un-definition of MOZ_HAVE_CXX11_NULLPTR. r=ehsan
...
--HG--
extra : rebase_source : cc737646470e6ebb81f87d3a0751f20b712c9390
2014-07-29 11:41:45 -07:00
Birunthan Mohanathas
c9fb2c0d48
Bug 1022456 - Fix modelines in xpcom/{base,glue,io,string,threads}/. r=froydnj
2014-06-30 08:39:45 -07:00
Birunthan Mohanathas
6b53f3d634
Bug 1022456 - Convert xpcom/glue/ to Gecko style. r=froydnj
2014-06-26 18:35:39 -07:00
Chris Peterson
4d8cb6ff03
Bug 1013065 - Remove bug 65664's NSCAP_DONT_PROVIDE_NONCONST_OPEQ workaround. r=dbaron
2014-05-04 23:11:04 -07:00
Ehsan Akhgari
6011b07362
Bug 1015430 - Fix more XPCOM constructors to clarify whether they should be explicit; r=froydnj
2014-05-25 21:16:01 -04:00
Nathan Froyd
4bb75e1989
Bug 984443 - get rid of #ifndef $OTHER_HEADER bits from xpcom/ as relics of a bygone era; r=ehsan
2014-03-17 12:20:47 -04:00
Kyle Huey
817b5ccbd9
Bug 345123: Remove nsGetterAddRefs<T>'s operator nsISupports**. r=bsmedberg
2014-03-15 12:00:17 -07:00
Kyle Huey
b564544cf7
Bug 967364: Pass already_AddRefed by reference instead of by value. r=bsmedberg
2014-03-15 12:00:17 -07:00
Kyle Huey
1f3d658bb3
Bug 967364: Use every already_AddRefed. r=bsmedberg
2014-03-15 12:00:16 -07:00
Kyle Huey
65644eb5a0
Bug 967364: Privatize already_AddRefed::mRawPtr. r=bsmedberg
2014-03-15 12:00:15 -07:00
Kyle Huey
fe6c4e28d6
Bug 967364: Rename already_AddRefed::get to take. r=bsmedberg
2014-03-15 12:00:15 -07:00
L. David Baron
03ba2e465b
Bug 976350 patch 1: Move the contents of nsTraceRefcnt.h into nsISupportsImpl.h. r=bsmedberg
...
This makes sense since the file no longer contains anything with the
nsTraceRefcnt name in it, and it will allow renaming nsTraceRefcntImpl
back to nsTraceRefcnt.
2014-02-26 13:36:35 -08:00
Nathan Froyd
4efe7278e6
Bug 976161 - delete dead NSCAP_DISABLE_TEST_DONTQUERY_CASES code; r=bsmedberg
2014-02-24 13:02:43 -05:00
Jeff Walden
5d3f01c937
Bug 953296 - Implement mozilla::NullptrT as a typedef to use to accept nullptr values. Also add mozilla::IsNullPointer<T>, a trait for detecting *only* true nullptr (emulated nullptr [__null] used by gcc 4.4/4.5 isn't true nullptr). r=ehsan
...
Generally, if you want a decltype(nullptr)-based overload, you should use SFINAE and IsNullPointer. (Examples are provided in NullPtr.h comments.) The problem is NullptrT matches far more than just __null as emulated nullptr for gcc 4.4/4.5 overloading purposes. This problem is unavoidable without true nullptr. Currently, the only valid use for NullptrT is believed to be in operator overloads. All existing nullptr-overloading code has been rewritten to use the appropriate technique for the situation, and MOZ_HAVE_CXX11_NULLPTR is no longer an API.
--HG--
extra : rebase_source : 01abfcb66ae569db7b04a7b53f5cd5fd8151bffd
2014-01-02 17:27:41 -06:00
Birunthan Mohanathas
0cfca404c5
Bug 784739 - Switch from NULL to nullptr in xpcom/ (2/3); r=ehsan
2013-10-10 16:41:39 -04:00
Ehsan Akhgari
2824b29025
Bug 895322 - Part 1: Replace the usages of MOZ_STATIC_ASSERT with C++11 static_assert; r=Waldo
...
This patch was mostly generated by running the following scripts on the codebase, with some
manual changes made afterwards:
# static_assert.sh
#!/bin/bash
# Command to convert an NSPR integer type to the equivalent standard integer type
function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
! -wholename "*security/nss*" \
! -wholename "*/.hg*" \
! -wholename "obj-ff-dbg*" \
! -name nsXPCOMCID.h \
! -name prtypes.h \
-type f \
\( -iname "*.cpp" \
-o -iname "*.h" \
-o -iname "*.cc" \
-o -iname "*.mm" \) | \
xargs -n 1 `dirname $0`/assert_replacer.py #sed -i -e "s/\b$1\b/$2/g"
}
convert MOZ_STATIC_ASSERT static_assert
hg rev --no-backup mfbt/Assertions.h \
media/webrtc/signaling/src/sipcc/core/includes/ccapi.h \
modules/libmar/src/mar_private.h \
modules/libmar/src/mar.h
# assert_replacer.py
#!/usr/bin/python
import sys
import re
pattern = re.compile(r"\bMOZ_STATIC_ASSERT\b")
def replaceInPlace(fname):
print fname
f = open(fname, "rw+")
lines = f.readlines()
for i in range(0, len(lines)):
while True:
index = re.search(pattern, lines[i])
if index != None:
index = index.start()
lines[i] = lines[i][0:index] + "static_assert" + lines[i][index+len("MOZ_STATIC_ASSERT"):]
for j in range(i + 1, len(lines)):
if lines[j].find(" ", index) == index:
lines[j] = lines[j][0:index] + lines[j][index+4:]
else:
break
else:
break
f.seek(0, 0)
f.truncate()
f.write("".join(lines))
f.close()
argc = len(sys.argv)
for i in range(1, argc):
replaceInPlace(sys.argv[i])
--HG--
extra : rebase_source : 4b4a4047d82f2c205b9fad8d56dfc3f1afc0b045
2013-07-18 13:59:53 -04:00
Ms2ger
1a40020bdd
Bug 213324 - Remove getter_AddRefs(T*); r=ehsan
2013-07-10 11:56:21 +02:00
Aryeh Gregor
52b3c9c146
Bug 859817 - Eliminate implicit conversion from raw pointer to already_AddRefed; r=bz sr=bsmedberg
2013-04-10 17:22:53 +03:00
Aryeh Gregor
f0404a303a
Bug 859817 - Remove implicit conversions from raw pointer to already_AddRefed; r=Ms2ger
2013-04-22 14:15:59 +03:00
Aryeh Gregor
2223e977f2
Bug 859817 - Introduce already_AddRefed.downcast(); r=ehsan
2013-04-21 14:56:06 +03:00
Joshua Cranmer
c8f20f3eb1
Bug 856108 - Port static analyses to clang, part 2f: use MOZ_STACK_CLASS in xpcom. r=bsmedberg
2013-04-11 22:21:40 -05:00
Boris Zbarsky
94ecd538e8
Bug 857645. Make it possible to copy-initialize an nsCOMPtr<T> from an already_AddRefed<U> as long as U inherits from T. r=ehsan
2013-04-03 22:33:34 -04:00
Phil Ringnalda
f827800026
Back out 8396d7543197 (bug 857645) for build bustage
...
CLOSED TREE
2013-04-04 22:27:19 -07:00
Boris Zbarsky
0611604263
Bug 857645. Make it possible to copy-initialize an nsCOMPtr<T> from an already_AddRefed<U> as long as U inherits from T. r=ehsan
2013-04-05 00:57:39 -04:00
Trevor Saunders
801c9b79ba
bug 822717 - remove checks for old gcc r=glandium
2012-12-18 13:22:28 -05:00
Benoit Jacob
7cc7c472e5
Bug 806279 - CC macros refactoring: part 3: fold the TRAVERSE_NATIVE and AMBIGUOUS cases - r=mccr8,smaug
2012-11-15 02:32:39 -05:00
Benoit Jacob
6d7beedec6
Bug 806279 - CC macros refactoring: part 1: implement type-generic CC UNLINK/TRAVERSE macros - r=mccr8,smaug
2012-11-15 02:32:39 -05:00
Makoto Kato
3acf1dcf48
Bug 786579 - Remove old MSVC (<=2003) support. r=khuey
2012-09-28 16:02:40 +09:00
Joshua Cranmer
a1186c1020
Bug 773637 - Kill NS_SCRIPTABLE annotations, Part 1: Remove NS_*PARAM annotations. r=ehsan
...
--HG--
extra : rebase_source : a0b4bc50fece36d9a90fed61431635948bfa33b5
2012-07-06 15:14:07 -05:00
Ehsan Akhgari
1bdfc194e2
Backout changeset 34c8a2369cbc (bug 771266) because the fastcall annotation actually matters
2012-07-05 18:19:07 -04:00
Ehsan Akhgari
5906a56d51
Bug 771266 - Part 2: Remove the fastcall annotation from ~nsCOMPtr_base, because it doesn't mean anything now that it's inline; irc-r=Neil
2012-07-05 16:26:59 -04:00
Ehsan Akhgari
6236bad8d7
Bug 771266 - Inline nsCOMPtr_base's destructor; r=jlebar
2012-07-05 15:12:13 -04:00
L. David Baron
9e2b8313b4
Back out half of the previous patch for bug 709747, since the nsCOMPtr<nsISupports>::forget(nsISupports**) specialization is substantially different from nsCOMPtr<T>::forget(I**), and uses swap which already does the needed logging.
2012-06-29 22:50:45 -07:00
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