Commit Graph

1813 Commits

Author SHA1 Message Date
Joshua Cranmer
33e4c4f0ca Bug 450881: Add helpers for XPIDL arrays to nsCOMArray, r=froydnj 2014-01-22 16:19:00 -06:00
Wes Kocher
24f2933e4b Backed out changeset 4c4e95457c87 (bug 961712) for crashing b2g tests on a CLOSED TREE 2014-01-22 15:50:04 -08:00
Chris Lord
72ac4f30f8 Bug 961712 - Buffer (f)printf_stderr on Android. r=gal
Android logging functions append newlines to all output. Layout debugging
(and perhaps other areas) relies on being able to print partial lines, making
its output almost unreadable. This change adds manual buffering between
newlines, making the output readable again.
2014-01-22 20:20:20 +00:00
Wes Kocher
e3dfa27d04 Backed out changeset 03bdec48d0ac (bug 450881) for Windows build bustage 2014-01-21 18:13:21 -08:00
Joshua Cranmer
9e4e7d3356 Bug 450881: Add helpers for XPIDL arrays to nsCOMArray, r=froydnj
--HG--
extra : rebase_source : d87f6cbdd2bab54f5923821409c9197f98b372f4
2014-01-21 18:01:36 -06:00
Phil Ringnalda
454490103b Back out 171c124a1402 (bug 961712) for debug b2g mochitest crashes after timeouts 2014-01-20 13:03:26 -08:00
Chris Lord
37c62e06b4 Bug 961712 - Buffer (f)printf_stderr on Android. r=gal
Android logging functions append newlines to all output. Layout debugging
(and perhaps other areas) relies on being able to print partial lines, making
its output almost unreadable. This change adds manual buffering between
newlines, making the output readable again.
2014-01-20 17:11:39 +00:00
Benoit Jacob
fb8f0a8ef9 Bug 960591 - Prevent implicitly constructing nsTArray<E> elements from E* pointers - r=ehsan 2014-01-17 11:54:19 -05:00
Terrence Cole
6beccf2363 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
77759a327d 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
72e2ce7440 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
15546f37d1 Backed out changeset 06f381426af1 (bug 944905) for windows bustage on a CLOSED TREE 2014-01-07 15:18:43 +01:00
Jacek Caban
40790e8807 Bug 944905 - Fix char16_t/wchar_t mismatch in xpcom/ r=bsmedberg 2014-01-07 14:54:52 +01: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
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
Ehsan Akhgari
1b83407ce9 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
561cae4a0e Bug 950130 - Move more INCLUDES / LOCAL_INCLUDES to moz.build; r=mshal 2013-12-31 10:06:11 +01: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
2e211ee0cd Bug 947626 - Fix index types in nsCOMArray CC helpers and remove whitespace. r=froydnj 2013-12-08 08:56:00 -08:00
Cameron McCormack
cb71a296c0 Bug 947578 - Expose Contains on nsBaseHashtable. r=froydnj 2013-12-08 11:08:58 +11:00
Jon Coppeard
ba4036ae32 Bug 939206 - Fix build error in test code on B2G r=me 2013-12-07 16:09:12 +00:00
Jon Coppeard
73da0d62d8 Bug 942928 - Add tests for nsTArray postbarriers r=sfink 2013-12-07 12:50:44 +00:00
Jon Coppeard
49b6cfda81 Bug 939206 - Fix nsTArray post barriers for JS::Heap<T> elements r=bsmedberg 2013-12-07 12:50:28 +00:00
Jon Coppeard
1347c72bec Bug 946732 - Reinstate xpcom/glue gtests r=BenWa 2013-12-05 16:48:48 +00:00
Jacek Caban
e2cd5ba18b Bug 944905 - Fixed char16_t/wchar_t mismatch in xpcom/ r=bsmedberg 2013-12-04 13:19:09 +01:00
Seth Fowler
579513aaf3 Bug 940142 - Add a lightweight generic hash key class to nsHashKeys.h. r=bsmedberg 2013-12-03 16:23:32 -08:00
Ehsan Akhgari
1af04ef00b Bug 945592 - Convert the type macros in nsTextFormatter.cpp to enum values; r=froydnj 2013-12-03 15:41:25 -05:00
Ehsan Akhgari
f07cba6cad Bug 945118 - Build more of XPCOM in unified mode; r=glandium 2013-12-01 10:47:52 -05:00
Landry Breuil
ce099f1bff 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
8fd06cf41b Bug 874266 - Move all DEFINES that can be moved to moz.build. r=mshal 2013-11-27 22:55:07 +09:00
Mike Hommey
b32a4ed166 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
682364d535 Bug 874266 - Move all DEFINES that can be moved to moz.build. r=mshal 2013-11-28 13:08:16 +09:00
Jacek Caban
12b4d7fd02 Bug 928351 - Char16.h and xpcom/strings/public parts r=ehsan,Waldo 2013-11-27 14:40:54 +01:00
Markus Stange
513b0bcce1 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
685a29f9b1 Bug 931738 - Remove nsPurpleBufferEntry from nsISupportsImpl.h. r=smaug 2013-11-26 14:29:59 -05:00
Benjamin Smedberg
9950de3641 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
a735170d84 Bug 942483 - Port paint-dumping to android/b2g. r=gal 2013-11-23 17:44:18 -05:00
Ehsan Akhgari
4fc038aac3 Bug 941405 - Remove the usages of the register keyword from XPCOM; r=froydnj 2013-11-21 10:42:40 -05:00
Ryan VanderMeulen
4864326b61 Backed out changeset 4887ddabba31 (bug 939231) for mochitest hangs.
CLOSED TREE
2013-11-21 09:39:38 -05:00
Nathan Froyd
c22bf1060b Bug 940160 - constify the PLDHashTableOps struct in nsTHashtable::Init; r=ehsan 2013-11-18 21:34:53 -05:00
Ehsan Akhgari
3d3d26fb09 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
8fd1bc7f20 Bug 672843 part C - convert most of XPCOM except for xpcom/tests, r=vdjeric 2013-11-19 16:27:37 -05:00
Benjamin Smedberg
d3cbd5920f Bug 672843 part B - Remove NS_ENSURE_PROPER_AGGREGATION, r=froydnj 2013-11-19 16:27:36 -05:00
Benjamin Smedberg
ddad5a704a 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
a448351084 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
e19377c4a9 Bug 936912 - Build xpcom in unified mode; r=froydnj 2013-11-18 21:34:00 -05:00