Commit Graph

152 Commits

Author SHA1 Message Date
Randall Barker
c236b48231 Bug 1093934 - Create a XPCOM library that can be used to support standalone WebRTC. r=nfroyd
--HG--
extra : rebase_source : 93f11457b16b344e148a6fcb924b286ef8a48051
2015-04-03 15:52:00 +02:00
Wes Kocher
e226c762ee Backed out changeset 0f5799df920b (bug 1093934) for various test failures CLOSED TREE
--HG--
extra : amend_source : 047ed43008cea68775c544cdf0df2819cfb24589
2015-04-02 13:42:34 -07:00
Randall Barker
683155c363 Bug 1093934 - Create a XPCOM library that can be used to support standalone WebRTC r=froydnj 2015-04-02 12:12:37 -07:00
Andrew McCreight
2f48802ae0 Bug 1147572 - Remove implementation language field from DOM class info. r=jst 2015-03-30 10:45:39 -07:00
Andrew McCreight
46dfeaba0b Bug 1148070 - Change nsIClassInfo::getHelperForLanguage() to getScriptableHelper(). r=bholley 2015-03-29 07:52:54 -07:00
Andrea Marchesini
e6f385fb3d Bug 1148527 - Indentation fix after bug 1145631, r=ehsan 2015-03-27 18:52:19 +00:00
Ehsan Akhgari
883849ee32 Bug 1145631 - Part 1: Replace MOZ_OVERRIDE and MOZ_FINAL with override and final in the tree; r=froydnj
This patch was automatically generated using the following script:

function convert() {
echo "Converting $1 to $2..."
find . \
       ! -wholename "*/.git*" \
       ! -wholename "obj-ff-dbg*" \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert MOZ_OVERRIDE override
convert MOZ_FINAL final
2015-03-21 12:28:04 -04:00
Thomas Zimmermann
614234540f Bug 1137151: Enable test for non-public ref-counted destructors on gcc 4.8 and later, r=nfroyd 2015-03-10 13:44:02 +01:00
Birunthan Mohanathas
2f07a9ef3a Bug 1060696 - Remove NS_INIT_ISUPPORTS. r=froydnj 2015-01-16 07:34:46 +02:00
Ehsan Akhgari
4354953b4f Bug 1118486 - Part 1: Use = delete instead of MOZ_DELETE directly; r=Waldo
Most of this patch (with the exception of dom/bindings/Codegen.py) was
generated by the following bash script:

#!/bin/bash

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*/.hg*" \
       ! -wholename "*/.git*" \
       ! -wholename "obj-*" \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert MOZ_DELETE '= delete'
2015-01-08 23:19:05 -05:00
Ehsan Akhgari
f32bb086bc Bug 1117035 - Mark virtual overridden functions as MOZ_OVERRIDE in XPCOM; r=froydnj 2015-01-05 11:25:41 -05:00
Daniel Holbert
c923bd8716 Bug 1108024: Add MOZ_OVERRIDE annotations to function-decls in NS_DECL_ISUPPORTS & its variants. r=froydnj 2014-12-05 12:49:05 -08: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
Ralph Giles
ce4de52e2b Bug 1057224 - Disable MOZ_ASSERT_CLASSNAME on gcc < 4.7. r=ehsan
The new MOZ_ASSERT_CLASSNAME check in MOZ_COUNT_CTOR and friends
fails under gcc 4.4 on the B2G ICS emulator build, because
nsGonkCameraControl calls the COUNT macros from a local class.

This wasn't allowed in C++03, but that was changed in C++11, and
our more recent toolchains either don't reject the code or don't
encounter such a nested class name.

I picked gcc 4.7 as the minimum version because that's the version
used by the B2G JB Emulator build, which works. There's no restriction
on clang or msvc version.
2014-08-23 15:32:00 -07:00
Ralph Giles
6a76603421 Bug 1057224 - Assert that MOZ_COUNT_* are passed a class name. r=ehsan
This helps detect typos, which lead to undetected or spurious
leaks in the leak check.
2014-08-22 14:32:00 -07:00
Ralph Giles
68b266f440 Back out 2f60f94d4d3c and d06c2e71aca2 for cross-platform breakage. 2014-08-22 15:13:03 -07:00
Ralph Giles
35a20c876d Bug 1057224 - Assert that MOZ_COUNT_* are passed a class name. r=ehsan
This helps detect typos, which lead to undetected or spurious
leaks in the leak check.
2014-08-22 14:32:00 -07:00
Benoit Jacob
51673d1d22 Bug 1035394 - Add dangerous public destructor detection to _INHERITED refcounting macros - r=khuey 2014-07-08 17:23:18 -04:00
Benoit Jacob
c5347881cc Bug 1028588 - Make XPCOM refcounting assert against public destructors (leaving aside _INHERITED macros for now) - r=khuey 2014-07-07 14:27:32 -04: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
Benoit Jacob
5636a738e0 Bug 1028428 - clang+libc++ still doesn't provide a usable std::is_destructible, so just use the fallback implementation instead - no review, bustage fix 2014-06-21 15:46:27 -04:00
Kyle Huey
d46f3641a6 Bug 1027251: Disable destructor checking on Windows. r=me 2014-06-20 07:33:00 -07:00
Benoit Jacob
891264cd81 Bug 1027251 - Enforce that dangerous public destructors must be explicitly whitelisted - r=ehsan 2014-06-20 07:08:25 -04:00
Benoit Jacob
b468bd741b Bug 1027251 - Initial empty HasDangerousPublicDestructor whitelist - r=ehsan 2014-06-18 22:28:59 -04: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
Ehsan Akhgari
52accff3a3 Bug 1013664 - Fix bad implicit conversion constructors in XPCOM; r=froydnj
--HG--
extra : rebase_source : e3260a536292175cb1ad23a53dfe9e3f4bb8ff10
2014-05-21 21:33:28 -04:00
Neil Rashbrook
5b3f3e053a Bug 514280 Only use nsCOMPtr for interfaces r=bsmedberg 2014-05-11 10:47:11 +01:00
Neil Rashbrook
fac8c73779 Backout of bug 514280 changeset c738f7348dea for build failure on a CLOSED TREE 2014-05-08 20:35:09 +01:00
Neil Rashbrook
5b1f7b4a77 Bug 514280 Only use nsCOMPtr for interfaces r=bsmedberg 2014-05-08 20:08:38 +01:00
Birunthan Mohanathas
764bbc2196 Bug 900908 - Part 4: Remove numbered macros in nsIClassInfoImpl.h/nsISupportsImpl.h. r=froydnj 2014-04-27 03:07:00 -04:00
Birunthan Mohanathas
784f1fabb9 Bug 900908 - Part 1: Add variadic variants of numbered macros in nsISupportsImpl.h. r=froydnj
The old numbered macros are still present, but simply forward to the variadic
macro. They will be removed after all instances of the numbered macros have
been converted.
2014-04-24 11:20:00 +02:00
Ehsan Akhgari
187792e965 Improve the comment about MOZ_COUNT_CTOR/DTOR, text mostly by bent
no bug, DONTBUILD, landed on a CLOSED TREE
2014-04-11 15:41:22 -04:00
Ehsan Akhgari
bc39621b6b Add a comment to indicate that MOZ_COUNT_CTOR/DTOR should not be used in refcounted objects
no bug, DONTBUILD, landed on a CLOSED TREE
2014-04-11 15:12:38 -04:00
Steve Workman
0afcd538f0 Bug 925623 - Implement NS_IMPL_ISUPPORTS13 r=bsmedberg 2014-03-27 13:54:10 -07:00
Ehsan Akhgari
186680d83a Bug 798158 - Part 1: Use a pointer-sized type to store refcounts internally; r=bsmedberg 2014-03-27 16:38:33 -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
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
Patrick McManus
0e9470feb7 bug 751465 - websockets dns and proxies r=jduell r=bsmedberg
--HG--
extra : rebase_source : ad2046a95f1ec9000577cc0f67aedc0766a51ed2
2014-01-06 13:52:42 -05:00
Nathan Froyd
fb3a3066d1 Bug 950882 - micro-optimize NS_TableDrivenQI calling sequence by reordering argument list; r=bsmedberg
For register-rich ABIs (e.g. x86-64 and ARM), QueryInterface's incoming
registers are going to look like:

arg register 1: |this|
arg register 2: the IID of interest
arg register 3: the outparam instance pointer

Most of our QI implementations call NS_TableDrivenQI, which expects
arguments like so:

arg register 1: |this|
arg register 2: the QITableEntry table
arg register 3: the IID of interest
arg register 4: the outparam instance pointer

So we're going to have to do a register shuffle of the IID and the
outparam to be able to load the QITableEntry pointer before calling into
NS_TableDrivenQI.

This patch reorders the argument list of NS_TableDrivenQI so that the
first three arguments match the order that QueryInterface receives them
in.  Then your typical QueryInterface implementation becomes:

- load local |table|
- tail-call NS_TableDrivenQI

Eliminating the register shuffling reduces text size by 12K on an
Android ARM build.
2013-12-13 19:50:02 -05:00
Andrew McCreight
76b4feac36 Bug 937818, part 1 - Add objects to the purple buffer on AddRef. r=smaug
ICC uses this to track objects that have been AddRef'd during ICC graph building.
For those objects, we may not have the proper information for them, so treat them
as live.
2013-12-17 19:29:57 -08:00
Carsten "Tomcat" Book
dd80853527 Backed out changeset 261091719842 (bug 937818) for static rooting hazard analysis bustage on a CLOSED TREE 2013-12-17 09:20:51 +01:00
Andrew McCreight
3145a6bc8f Bug 937818, part 1 - Add objects to the purple buffer on AddRef. r=smaug
ICC uses this to track objects that have been AddRef'd during ICC graph building.
For those objects, we may not have the proper information for them, so treat them
as live.
2013-12-16 21:30:53 -08:00
Nathan Froyd
1b5da13c0d Bug 950281 - micro-optimize NS_TableDrivenQI by ensuring the table has at least 1 non-null entry; r=bsmedberg 2013-12-13 19:17:18 -05:00
Andrew McCreight
685a29f9b1 Bug 931738 - Remove nsPurpleBufferEntry from nsISupportsImpl.h. r=smaug 2013-11-26 14:29:59 -05: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
Kyle Huey
6baf345b3f Bug 919380: Disable threadsafety assertions when --enable-profiling is set. r=smaug 2013-09-24 09:53:40 +08:00
Ehsan Akhgari
08499bf765 Bug 917348 - Part 1: Make NS_IMPL_CYCLE_COLLECTING_AGGREGATED build on non-debug configurations; r=bsmedberg
--HG--
extra : rebase_source : 4984cf31e6855b721dabb27315b4255179aa586d
2013-09-17 12:05:13 -04:00
Kyle Huey
197c9dc222 Bug 907914: Turn on refcounting threadsafety assertions in opt trunk builds. r=bent 2013-08-30 10:06:37 -07:00
Ms2ger
18cd92e9b4 Bug 903844 - Add/update include-what-you-use annotations for various files; r=ehsan+khuey 2013-08-22 08:31:21 +02:00