Commit Graph

931 Commits

Author SHA1 Message Date
Benoit Jacob
00e9c80dbb Bug 960591 - Prevent implicitly constructing nsTArray<E> elements from E* pointers - r=ehsan 2014-01-17 11:54:19 -05:00
Terrence Cole
3e141bbf5e Bug 959787 - Handlify several JSAPI interfaces that can GC, Part 3; r=sfink
--HG--
extra : rebase_source : ace7b0fa6ba93acbf0ec8ecaeb68ffa287a33665
2014-01-16 09:48:58 -08:00
Olli Pettay
25af73b606 Bug 958315 - Suspect JS things released by dying C++ objects in the next CC, r=mccr8 2014-01-14 22:23:59 +02:00
Boris Zbarsky
b90683e91c Bug 932837 part 2. Create a refcounted object to manage the lifetime of a JS::StackDescription. r=mccr8, terrence 2014-01-07 19:53:17 -05:00
Carsten "Tomcat" Book
81aa764e2f Backed out changeset 06f381426af1 (bug 944905) for windows bustage on a CLOSED TREE 2014-01-07 15:18:43 +01:00
Jacek Caban
cec8f40264 Bug 944905 - Fix char16_t/wchar_t mismatch in xpcom/ r=bsmedberg 2014-01-07 14:54:52 +01:00
Patrick McManus
8cbe001a55 bug 751465 - websockets dns and proxies r=jduell r=bsmedberg
--HG--
extra : rebase_source : ad2046a95f1ec9000577cc0f67aedc0766a51ed2
2014-01-06 13:52:42 -05:00
Jeff Walden
12220c1619 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
Ehsan Akhgari
eaa7491d77 Bug 927728 - Part 1: Replace PRUnichar with char16_t; r=roc
This patch was automatically generated by the following script:

#!/bin/bash
# Command to convert PRUnichar to char16_t

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*modules/libmar*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name prtypes.h \
       ! -name Char16.h \
         -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 PRUnichar char16_t
2014-01-04 10:02:17 -05:00
Ms2ger
6c7c16c6b2 Bug 950130 - Move more INCLUDES / LOCAL_INCLUDES to moz.build; r=mshal 2013-12-31 10:06:11 +01:00
Nathan Froyd
7890c85b6f 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
c815051008 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
9893f955b9 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
e495d831e0 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
23f5fa315e 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
a56b513d7c Bug 947626 - Fix index types in nsCOMArray CC helpers and remove whitespace. r=froydnj 2013-12-08 08:56:00 -08:00
Cameron McCormack
aefbbe49ca Bug 947578 - Expose Contains on nsBaseHashtable. r=froydnj 2013-12-08 11:08:58 +11:00
Jon Coppeard
8da8e2247b Bug 939206 - Fix build error in test code on B2G r=me 2013-12-07 16:09:12 +00:00
Jon Coppeard
1c310eeb46 Bug 942928 - Add tests for nsTArray postbarriers r=sfink 2013-12-07 12:50:44 +00:00
Jon Coppeard
bd741e1e35 Bug 939206 - Fix nsTArray post barriers for JS::Heap<T> elements r=bsmedberg 2013-12-07 12:50:28 +00:00
Jon Coppeard
2de3b6aa7f Bug 946732 - Reinstate xpcom/glue gtests r=BenWa 2013-12-05 16:48:48 +00:00
Jacek Caban
50a5638f29 Bug 944905 - Fixed char16_t/wchar_t mismatch in xpcom/ r=bsmedberg 2013-12-04 13:19:09 +01:00
Seth Fowler
e7e7614541 Bug 940142 - Add a lightweight generic hash key class to nsHashKeys.h. r=bsmedberg 2013-12-03 16:23:32 -08:00
Ehsan Akhgari
f6e13076f5 Bug 945592 - Convert the type macros in nsTextFormatter.cpp to enum values; r=froydnj 2013-12-03 15:41:25 -05:00
Ehsan Akhgari
ac94bf0c75 Bug 945118 - Build more of XPCOM in unified mode; r=glandium 2013-12-01 10:47:52 -05:00
Landry Breuil
d37a93b867 Bug 944410 - add missing #include <stdarg.h> for va_list on OpenBSD after bug 942483 r=bgirard 2013-11-30 13:48:34 +01:00
Mike Hommey
fdd3247a81 Bug 874266 - Move all DEFINES that can be moved to moz.build. r=mshal 2013-11-27 22:55:07 +09:00
Mike Hommey
2f727b6d62 Backout changeset 3fd4b546eed4 (bug 874266) and changeset a35d2e3a872f (bug 942043) for ASAN build bustage and Windows test bustage
--HG--
extra : amend_source : f20d09aeff1c8b5cbd0f1d24c7ce04e86f3aed1d
2013-11-28 14:24:05 +09:00
Mike Hommey
b038245b8d Bug 874266 - Move all DEFINES that can be moved to moz.build. r=mshal 2013-11-28 13:08:16 +09:00
Jacek Caban
508bdb6c1f Bug 928351 - Char16.h and xpcom/strings/public parts r=ehsan,Waldo 2013-11-27 14:40:54 +01:00
Markus Stange
5f2fccf8a8 Bug 924103 - Add a FilterDescription data structure and code that can create FilterNodes from it. r=roc 2013-11-27 12:25:28 +01:00
Andrew McCreight
eaa17634f8 Bug 931738 - Remove nsPurpleBufferEntry from nsISupportsImpl.h. r=smaug 2013-11-26 14:29:59 -05:00
Benjamin Smedberg
09c0296c7a Bug 938794 - Annotate OOM size as infallible string or data structures abort, r=froydnj
--HG--
extra : rebase_source : f84278dfbba92c6d75458b525a559b6f8598500f
2013-11-25 15:06:17 -05:00
Benoit Girard
74c90d1629 Bug 942483 - Port paint-dumping to android/b2g. r=gal 2013-11-23 17:44:18 -05:00
Ehsan Akhgari
63b20edcc2 Bug 941405 - Remove the usages of the register keyword from XPCOM; r=froydnj 2013-11-21 10:42:40 -05:00
Ryan VanderMeulen
c0e471c6b2 Backed out changeset 4887ddabba31 (bug 939231) for mochitest hangs.
CLOSED TREE
2013-11-21 09:39:38 -05:00
Nathan Froyd
a0e488bb67 Bug 940160 - constify the PLDHashTableOps struct in nsTHashtable::Init; r=ehsan 2013-11-18 21:34:53 -05:00
Ehsan Akhgari
ac44b37d03 Bug 939231 - Stop requiring trace-malloc for the deadlock detector; r=bent
The existing deadlock detector code uses the trace-malloc stack walking
facilities, which is problematic for a few reasons.

1. It is only available in builds with --enable-trace-malloc, which is
   not in the default build configuration.
2. It tries to capture a symbolicated stack trace every time that a lock
   is acquired or released, which is really slow.

This patch changes the deadlock detector to use the XPCOM stack walking
and symbolification facilities, and avoids the symbolification until the
point where we need to print out the call stack, which makes the
deadlock detector a lot faster than it currently is in trace-malloc
builds.
2013-11-21 07:43:23 -05:00
Benjamin Smedberg
dca2c2b5ab Bug 672843 part C - convert most of XPCOM except for xpcom/tests, r=vdjeric 2013-11-19 16:27:37 -05:00
Benjamin Smedberg
d866f6b84f Bug 672843 part B - Remove NS_ENSURE_PROPER_AGGREGATION, r=froydnj 2013-11-19 16:27:36 -05:00
Benjamin Smedberg
f9d80661a4 Bug 672843 part A - Create the new macro NS_WARN_IF and deprecate NS_ENSURE_* in favor of the explicit warning/return style. Also localize each macro so that it's debug and non-debug versions are local in the file, because that makes it easier for new contributors to understand. r=froydnj sr=jst 2013-11-19 16:27:36 -05:00
Jim Blandy
7cf9e41fc9 Bug 896100: Convert all uses of OldMove and MoveRef to true rvalue references and the modern Move and Forward. r=luke, r=waldo 2013-11-19 09:05:36 -08:00
Ehsan Akhgari
fbd7944f83 Bug 936912 - Build xpcom in unified mode; r=froydnj 2013-11-18 21:34:00 -05:00
Mike Hommey
f0d1cd1e10 Bug 939044 - Remove most definitions of MODULE. r=mshal 2013-11-19 11:47:39 +09:00
Joshua Cranmer
4568b8f835 Bug 935789, part 1: Kill most uses of prbit.h, r=ehsan
--HG--
extra : rebase_source : 4c44e60c72e0ece3cea7ed1cf79079bd2a1b6487
2013-11-12 18:22:38 -06:00
Olli Pettay
721a4ec61c Bug 937303 - Make CC logger to pass information about compartments, r=mccr8 2013-11-12 15:53:51 +02:00
Wes Kocher
7a98b79072 Backed out changeset 3d769520a0be (bug 937303) for build bustage 2013-11-11 14:50:00 -08:00
Olli Pettay
f6aefae288 Bug 937303 - Make CC logger to pass information about compartments, r=mccr8
--HG--
extra : rebase_source : 48545d4c83d88f34773ca84e542aa13316ca38c6
2013-11-12 00:12:00 +02:00
Nicholas Nethercote
ae8608b5ae Bug 933605 (part 2) - Don't declare all vars at the top of functions in pldhash.cpp. r=jorendorff.
--HG--
extra : rebase_source : 53da17b46bd986ceefbc66f23e43d2f5b7290fad
2013-10-31 22:33:29 -07:00
Nicholas Nethercote
14a6fa3009 Bug 933605 (part 1) - Remove DEBUG_XXXbrendan-only code. r=jorendorff.
--HG--
extra : rebase_source : 8ebc751e246cf133f899a8563e75f9bff77d9eda
2013-10-31 22:30:45 -07:00