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

1400 Коммитов

Автор SHA1 Сообщение Дата
Sylvestre Ledru 6d84fa8c1b Bug 1464869 - Fix flake8/pep8 issue by hand in xpcom/ r=Nika
MozReview-Commit-ID: KOzQnlWwVuR

--HG--
extra : rebase_source : e14c57fe3bf7f238399f8860b6a05184b4d65163
2018-05-25 22:17:28 -07:00
Sylvestre Ledru 34a5216fe7 Bug 1464869 - Run autopep8 on xpcom/ r=Nika
MozReview-Commit-ID: JDdoIvkmOIx

--HG--
extra : rebase_source : c23ee8d3da399dd837eccf6a63a50cd50f5e81c6
2018-05-25 21:29:52 -07:00
Nika Layzell 3043db4105 Bug 1457972 - Part 10: Make sure to allocate ExtendedVal inline, r=froydnj 2018-05-14 17:55:57 -04:00
Nika Layzell ca0a0c7f42 Bug 1457972 - Part 6: Ensure the extended types list has some basic types with known indexes, r=mccr8
Currently XPCVariant has some code for working with arrays of a series of basic
types. I want to unify and simplify code which works with nsXPTTypes to always
take the topmost level type (rather than passing in an array element type when
working with an array).

This is pretty easy for most of XPConnect, but XPCVariant occasionally needs to
perform calls on made-up array types, which isn't compatible with the current
implementation. Fortunately, it only needs a very small set of array types. This
patch adds a set of simple types (mostly the arithmetic types and
TD_INTERFACE_IS_TYPE for interfaces) to the extra types array unconditionally
with a known index, for XPCVariant.

An other option I was considering was to consider the value `0xff` in the data
byte on nsXPTType to be a flag which indicates that the array element type is
actually the type immediately following the current nsXPTType object in memory,
but that was incompatible with many of the existing nsXPTType consumers which
copy the nsXPTType objects around (e.g. onto the stack), rather than always
using them by reference, so I decided it was not a good approach to take.
2018-05-14 17:55:56 -04:00
Nika Layzell e2240ec5a2 Bug 1457972 - Part 4: Remove dipper types, r=mccr8
In XPConnect, native values are passed around within nsXPTCMiniVariant objects.
an [nsXPTCMiniVariant] contains 64-bits of data in a union type.

nsXPTCMiniVariant values are created by the platform-specific glue code and
passed into XPConnect proper when calling from C++ into JS.

When calling from JS into C++, we instead create nsXPTCVariant objects and pass
them into the glue code. These objects have extra information in addition to the
nsXPTCMiniVariant: namely they also have a `type` field with the type stored in
the variant, space for flags, and a `ptr` field which is passed over IPC instead
of the inner nsXPTCMiniVariant when a flag (`PTR_IS_DATA`) is set.

The JSValue type in XPConnect is always passed as a pointer to a JSValue object,
both for in parameters and out parameters. This is handled by making the JSValue
type be unconditionally flagged as [`IsIndirect()`] This flag is also used for
all types of outparameters.

When the `IsIndirect()` flag is set, it means that the actual data is stored in
the nsXPTCVariant's val field, and it sets the flag to tell the glue code to
instead pass the `ptr` field (which is always pointing to the `val` field for
[legacy reasons]) into the C++ code.

In contrast "dipper" is a different and super weird flag. Currently only the
string class types (nsACString & nsAString) are marked as "dipper". A "dipper"
type is always passed as an "in" type (and thus always passed "directly"), even
when it's actually an out parameter.

XPConnect treats these types as though they are pointer types (nsAString*). This
means that there is no space in the nsXPTCVariant to store the actual nsAString
types when passing from JS into C++, so these values have to be allocated by a
different mechanism (in the current code, there is a size 2 buffer for each
string type in the context and once that buffer is exceeded, we heap allocate
the nsString values).

In effect, the current state looks something like this:
+------------+---------------------+---------------------+
| type       | out (xpt/native)    | in (xpt/native)     |
+------------+---------------------+---------------------+
| TD_INT32   | indirect (int32_t*) | direct (int32_t)    |
+------------+---------------------+---------------------+
| TD_JSVAL   | indirect (JSValue*) | indirect (JSValue*) |
+------------+---------------------+---------------------+
| TD_ASTRING | direct (nsAString*) | direct (nsAString*) |
+------------+---------------------+---------------------+

This patch ensures there is enough space in the nsXPTCVariant to fit the
nsString value, and switches string class types to being unconditionally
indirect instead of using the dipper system. This allows us to delete a ton of
dipper-specific code, and unify the indirect and string class codepaths.

This only affects the size of nsXPTCVariant objects, and does not affect
nsXPTCMiniVariant objects. nsXPTCVariant objects are never allocated by the
platform-specific binding code, rather, they are allocated in an AutoTArray on
the stack as part of the CallMethodHelper object.

The size increase is a total of 1 word, so 4 bytes in 32-bit builds, and 8 bytes
in 64-bit builds, which is ignorable for stack allocated objects.

[nsXPTCMiniVariant]: https://searchfox.org/mozilla-central/rev/eb6c5214a63e20a3fff455e92c876287a8d2e188/xpcom/reflect/xptcall/xptcall.h#20-47
[`IsIndirect()`]: https://searchfox.org/mozilla-central/rev/c0d81882c7941c4ff13a50603e37095cdab0d1ea/xpcom/reflect/xptinfo/xptinfo.h#371
[legacy reasons]: https://searchfox.org/mozilla-central/rev/eb6c5214a63e20a3fff455e92c876287a8d2e188/xpcom/reflect/xptcall/xptcall.h#66-79
2018-05-14 17:55:55 -04:00
Nika Layzell f20e777cdb Bug 1457972 - Part 2: Remove unused code paths in xpconnect, r=mccr8
Thanks to the changes in the previous patch, we had some unused code which we
can get rid of. This patch just cleans stuff up a bit.
2018-05-14 17:55:54 -04:00
Nika Layzell 73efb8abf3 Bug 1457972 - Part 1: Unify xpconnect cleanup codepaths, r=mccr8
It used to be that in XPConnect there were many different pieces of code for
each place where we may need to clean up some untyped values based on their
nsXPTType information. This was a mess, and meant that every time you needed to
add a new data type you'd have to find every one of these places and add support
for your new type to them.

In fact, this was bad enough that it appears that I missed some places when
adding my webidl support! Which means that in some edge cases we may clean up
one of these values incorrectly D:!

This patch adds a new unified method which performs the cleanup by looking at a
nsXPTType object. The idea is that this function takes a void* which is actually
a T* where T is a value of the nsXPTType parmaeter. It clears the value behind
the pointer to a valid state such that free-ing the memory would not cause any
leaks. e.g. it free(...)s owned pointers and sets the pointer to `nullptr`, and
truncates nsA[C]String values such that they reference the static empty string.

I also modify every one of these custom cleanup codepaths to instead call into
this unified cleanup method.

This also involved some simplification of helper methods in order to make the
implementation cleaner.
2018-05-14 17:55:54 -04:00
Nika Layzell c9d0fe3dd2 Bug 1455217 - Part 1: Add an explicit Promise type to xpidl, r=mccr8
This type is fairly simple on the idl parsing side of things. I handle it in the
same way that special types such as ns[C]String, nsid, and jsval are handled, by
using a special native type.

The logic for converting the value between C++ and JS follows the existing logic
from the nsISupports <=> JS Promise conversions.
2018-05-14 17:55:53 -04:00
Jeff Walden 04d21ccac0 Bug 1451248. r=jorendorff, r=bz
--HG--
extra : rebase_source : e26439a5954162bdaf332fbd63d623a3810e19e0
2018-04-25 19:40:09 -07:00
Jorg K 7559921ade Bug 1455221 - Part 3: Increase size of table used by perfect hash function from 256 to 512. r=nika 2018-04-20 10:13:00 +03:00
Nika Layzell 7653728855 Bug 1455221 - Part 2: Assert if there is a duplicated UUID or name in xptcodegen.py, r=mccr8 2018-04-19 10:28:00 +03:00
Nika Layzell e5f31c03d8 Bug 1444991 - Part 4: Handle DOM Objects in XPConnect, r=mccr8
This patch goes through the XPConnect conversion methods, and adds cases for
T_DOMOBJECT which call the Wrap, Unwrap, and Cleanup methods from the
nsXPTDOMObjectInfo objects created in the last part.

For consistency with normal interface pointers, and because it wasn't too
complex, I also added support for including T_DOMOBJECTs in XPCOM arrays.
2018-04-17 19:21:03 -04:00
Nika Layzell 697573d613 Bug 1444991 - Part 3: Generate DOMObject info for xptinfo, r=mccr8
Unlike the other lists in xptinfo, this list contains relocations. Each
DOMObject has 3 functions generated for it, `Wrap`, `Unwrap` and `Cleanup`,
which perform the necessary actions. These are stored as function pointers.

Wrap gets the DOMObject wrapper using the DOM binding code, Unwrap gets the
underlying C++ object, and addrefs it (as XPCOM methods return native types
via getter_AddRefs), and Cleanup releases a reference to the underlying
C++ object, for when the unwrapped object is used as a temporary during a call.

To generate the code, we need to have the declaration of the native C++ type
in scope, so we also emit #include-s for the headerFiles.
2018-04-17 19:21:02 -04:00
Nika Layzell 14da321a67 Bug 1444745 - Part 5: Update consumers of nsIInterfaceInfo to use the nsXPTInterfaceInfo directly, r=mccr8
Due to the decision to keep the old API on nsXPTInterfaceInfo in part 4, this is
a fairly straightforward patch.

1. I had to change a couple of consumers of `IsRetval()` due to the movement of
that flag.
2. I changed all code which held a nsIInterfaceInfo to hold an `const
nsXPTInterfaceInfo*` instead.
3. I changed code which used the nsIInterfaceInfoManager to instead call the
static methods on nsXPTInterfaceInfo.
2018-04-17 19:20:56 -04:00
Nika Layzell 04547a4a00 Bug 1444745 - Part 4: Rewrite xptinfo, and write a new xptcodegen.py to generate the required datastructures, r=mccr8
This patch contains the meat of the changes here. The following summarize the changes:
1. xptinfo.h is rewritten to expose the new interface for reading the XPT data,

The nsXPTInterfaceInfo object exposes methods with the same signatures as
the methods on nsIInterfaceInfo, to make converting code which used
nsIInterfaceInfo as easy as possible, even when those methods don't have
signatures which make a ton of sense anymore. There are also a few methods
which are unnecessary (they return `true` or similar), which should be
removed over time.

Members of the data structures are made private in order to prevent reading
them directly. Code should instead call the getter methods. This should make
it easier to change their memory representation in the future. Constructing
these structs is made possible by making the structs `friend class` with the
XPTConstruct class, which is implemented by the code generator, and is able
to access the private fields.

In addition, rather than using integers with flag constants, I opted for
using C++ bitfields to store individual flags, as I found it made it easier
to both write the code generator, and reason about the layouts of the types.

I was able to shave a byte off of each nsXPTParamInfo (4 bytes -> 3 bytes)
by shoving the flags into spare bits in the nsXPTType. Unfortunately there
was not enough room for the retval flag. Fortunately, we already depend in
our code on the retval parameter being the last parameter, so I worked
around this by removing the retval flag and instead having a `hasretval`
flag on the method itself.

2. An xptinfo.cpp file is added for out-of-line definitions of more complex
methods, and the internal implementation details of the perfect hash.

Notable is the handling of xptshim interfaces. As the type is uniform, a
flag is checked when trying to read constant information, and a different
table with pointers into webidl data structures is checked when the type is
determined to be a shim.

Ideally we could remove this once we remove the remaining consumers of the
existing shim interfaces.

3. A python code generator which takes in the json XPT files generated in the
previous part, and emits a xptdata.cpp file with the data structures. I did
my best to heavily comment the code.

This code uses the friend class trick to construct the private fields of the
structs, and avoid a dependency on the ordering of fields in xptinfo.h.

The sInterfaces array's order is determined by a generated perfect hash
which is also written into the binary. This should allow for fast lookups by
IID or name of interfaces in memory. The hash function used for the perfect
hash is a simple FNV hash, as they're pretty fast.

For perfect hashing of names, another table is created which contains
indexes into the sInterfaces table. Lookup by name is less common, and this
form of lookup should still be very fast.

4. The necessary Makefiles are updated to use the new code generator, and
generate the file correctly.
2018-04-17 19:20:55 -04:00
Nika Layzell f5f86c989e Bug 1444745 - Part 1: Clear out xptinfo and typelib to make way for the this patch, r=mccr8
Unfortunately, I wasn't able to figure out a way to make firefox build & run in
the intermediate stages of these commits. Because of this, I am going to just
delete most of the code which I am deleting in the first patch, as I figure that
those are somewhat uninteresting changes, and then make the other changes in the
following patches.

In total, the following things are deleted:
1. All of xpcom/typelib, except for `xpt/tools` - this directory is being
subsumed entirely into xpcom/reflect/xptinfo.
2. Most of the code in xpcom/reflect/xptinfo, it is being rewritten to avoid
allocating and contain all of the necessary data structures.
3. idl-parser's typelib.py XPT generator, as it will be replaced.
4. Most includes of files which have been deleted.

NOTE: xpcom/typelib/xpt/tools/xpt.py was not removed, as it is used by bundling
code & bundling tests, which we don't want to remove yet.
2018-04-17 19:20:50 -04:00
Andrew McCreight e0c2cdb52a Back out bug 1448454 for compile time and installer size regressions. r=mccr8 2018-04-09 10:24:00 +03:00
Boris Zbarsky c81f762d32 Bug 1452329. Remove nsIDOMXMLDocument. r=mystor
MozReview-Commit-ID: LwbVo7Fx1SQ
2018-04-09 16:30:33 -04:00
Boris Zbarsky eb5f28a236 Bug 1452321. Remove nsIWebBrowserPersistable. r=mystor
MozReview-Commit-ID: CCw86gAtKn3
2018-04-09 16:30:33 -04:00
Boris Zbarsky 1483606219 Bug 1452235 part 4. Remove nsIDOMSerializer. r=qdot
MozReview-Commit-ID: 5foaztSLyEC
2018-04-09 16:30:33 -04:00
Boris Zbarsky cbe438ff09 Bug 1452185 part 4. Remove nsIDOMXULElement. r=qdot
MozReview-Commit-ID: HfFtcj64z2Q
2018-04-09 16:30:32 -04:00
Boris Zbarsky 8c18063150 Bug 1452010 part 3. Remove nsIDOMDOMException. r=qdot
MozReview-Commit-ID: AFKzyxCyriJ
2018-04-06 23:29:13 -04:00
Boris Zbarsky 55cdcb3d94 Bug 1451929. Get rid of DOMCursor. r=qdot 2018-04-05 20:31:03 -04:00
Narcis Beleuzu 58b4822076 Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-04-05 01:09:42 +03:00
Boris Zbarsky 5ae1563978 Bug 1450422. Get rid of nsIDOMDataChannel. r=mystor
MozReview-Commit-ID: Dei5EEd0FZO
2018-04-04 15:32:19 -04:00
Andrew McCreight aed6f3e8aa Bug 1448454 - Make some fields in xpt_struct.h private. r=njn
Many of these fields have accessors, and can only be read indirectly
by going through the XPTHeader data structure anyways, so they should
be marked private. This makes the generated XPT data file noisier due
to the need for constexpr constructors.

I had to fix the ctors for the classes in xptinfo.h to be less weird
because there was a compiler error.

Members in two of the classes need to be marked protected because they
have subclasses in xptinfo.h. Ideally those classes would be merged
in.

MozReview-Commit-ID: 70IdFAhp5je

--HG--
extra : rebase_source : 48cb1ec84c872b8fd6bb8c07f8ad2b47d0173f28
2018-03-26 14:06:01 -07:00
Andrew McCreight c78426147f Bug 1449747 - Remove unused things from nsIInterfaceInfo and xptiWorkingSet. r=froydnj
The things in xptiWorkingSet are neither used nor defined.

MozReview-Commit-ID: 1ZPVe38OVcH

--HG--
extra : rebase_source : 6f74c70758cb66bfdc6ec0a2a27d8cead1b37ed6
2018-03-28 14:03:29 -07:00
arthur.iakab b310d9523e Merge inbound to mozilla-central. a=merge 2018-04-03 12:31:23 +03:00
Boris Zbarsky 9bb77bdfc7 Bug 1450418. Get rid of nsIDOMScreen. r=qdot
MozReview-Commit-ID: A5Rq0BSQt4V
2018-04-03 00:42:41 -04:00
Andrew McCreight da728cc408 Bug 1438688, part 5 - Merge XPTInterfaceDirectoryEntry and XPTInterfaceDescriptor. r=njn
With fully linked XPT data, there is exactly one directory entry per
descriptor, plus one per unresolved interface. There are 1200 of the
former and 40 of the latter. By merging them, we save a 32 bit int per
directory entry, at the cost of 11 bytes per unresolved interface.

This will make VerifyAndAddEntryIfNew slightly slower because it has
to do an nsID equality check rather than a null check, but I can't
imagine that will matter.

My main goal for this patch is to reduce the size of the executable,
to avoid a regression with my static XPT information patches, but it
should reduce memory a little bit, too.

MozReview-Commit-ID: L35YdOuAyF4

--HG--
extra : rebase_source : 8358a73a0f8f81081661538d4a7c9a31b1aa7a56
2018-03-12 13:36:15 -07:00
Andrew McCreight 40c8743812 Bug 1438688, part 4 - Hoist arrays to XPTHeader. r=njn
To allow XPT information to be shared between processes, it needs to
not contain any pointers, because they cause relocations. I've
eliminated pointers by hoisting all of the variable length data
structures to XPTHeader, into a single array for each type of
data. These data structures now use an index into these arrays to find
their first element. Strings are similar, but they are mashed into a
single giant string, including embedded null terminators. Modifying
the accessor methods to support this is easy, because there is only a
single global instance of each of these arrays in XPTHeader.

MozReview-Commit-ID: 5rgwaEBvDYl

--HG--
extra : rebase_source : 2e423f088d662920a89f3b66c70d26fe340b5fce
2018-02-28 15:12:07 -08:00
Andrew McCreight 38814e41a3 Bug 1438688, part 2b - Eliminate XPTHeader data structure. r=njn
Now that there is only one XPTHeader, we can devolve the fields in it
to avoid some indirection. The biggest part here is getting rid of the
mHeader field on xptiTypelibGuts.

The array is [] instead of * to avoid a relocation, by ensuring that
XPTHeader::kInterfaceDirectory as well as the data it points to cannot
be changed.

MozReview-Commit-ID: AzvNTNZKkfi

--HG--
extra : rebase_source : d911a54b3db1f9f57b538d13ae86f28965ab33b3
2018-03-27 14:04:01 -07:00
Andrew McCreight 1d1f9dcdb0 Bug 1438688, part 2 - Load XPT information from a static variable instead of a file. r=njn
This patch removes C++ code related to reading in XPT information from
files. (Code related to packaging XPT files will be removed in the
next patch.) This includes code in the manifest parser, in addition to
the actual code for parsing files.

XPT information is now loaded directly from a single static data
structure, XPTHeader::kHeader, which will be automatically generated
at compile time from .idl files (via .xpt files). Note that the script
to do that is not added until part 6 of this patch series, so linking
will fail on parts 2 through 5.

I inlined XPTInterfaceInfoManager::RegisterXPTHeader into the ctor,
because that is the only caller. It feels like the lock there should
not be needed any more, but I left it alone for now.

The forward declaration of XPTArena in xptiprivate.h is needed because
it was being bootlegged via xpt_xdr.h. Some of the data structures in
reflect/xptinfo/ (which wrap the xpt_struct.h data structures) are
still allocated using XPTArena. Hopefully we can get rid of that in
followup work.

I also deleted a lot of comments in xpt_struct.h that talk about the
on-disk format. I also deleted checking of the major version number,
because that should not matter when the XPT information is baked into
the executable.

MozReview-Commit-ID: 6NJdaCWRBhU

--HG--
extra : rebase_source : 6512a05f2a8bee1e6e6b0423d2cb376d8c34728b
2018-02-28 12:51:39 -08:00
Andrew McCreight a0cc3cb2b0 Bug 1438688, part 1 - Add methods for accessing arrays in xpt_struct.h. r=njn
This lets us hide later changes to how these arrays are stored. There
should be no behavioral change. Some methods in xpt_struct.h are
declared inline at the end of the header due to the order that classes
are declared in the header.

MozReview-Commit-ID: KAxUKn3sDOD

--HG--
extra : rebase_source : 867ce100e5178c85485e6c3bac5d6bfca098f78b
2018-02-28 10:07:45 -08:00
Dorel Luca f24505d99e Backed out 7 changesets (bug 1438688) for android xpcshell failures on builds/worker/workspace/build/tests/bin/components/test_necko.xpt
Backed out changeset 8786eabb61a4 (bug 1438688)
Backed out changeset e05ec1e08b46 (bug 1438688)
Backed out changeset 4c437ba9d984 (bug 1438688)
Backed out changeset 2f243bca1af3 (bug 1438688)
Backed out changeset 4da0e1839353 (bug 1438688)
Backed out changeset 186f916dcc7a (bug 1438688)
Backed out changeset 08b1a5f904e4 (bug 1438688)
2018-04-03 02:30:53 +03:00
Andrew McCreight bb5f0eecd4 Bug 1438688, part 5 - Merge XPTInterfaceDirectoryEntry and XPTInterfaceDescriptor. r=njn
With fully linked XPT data, there is exactly one directory entry per
descriptor, plus one per unresolved interface. There are 1200 of the
former and 40 of the latter. By merging them, we save a 32 bit int per
directory entry, at the cost of 11 bytes per unresolved interface.

This will make VerifyAndAddEntryIfNew slightly slower because it has
to do an nsID equality check rather than a null check, but I can't
imagine that will matter.

My main goal for this patch is to reduce the size of the executable,
to avoid a regression with my static XPT information patches, but it
should reduce memory a little bit, too.

MozReview-Commit-ID: L35YdOuAyF4

--HG--
extra : rebase_source : b3d0780808f9fc708b5b2dffeda45030974dc0bf
2018-03-12 13:36:15 -07:00
Andrew McCreight fd7f85924b Bug 1438688, part 4 - Hoist arrays to XPTHeader. r=njn
To allow XPT information to be shared between processes, it needs to
not contain any pointers, because they cause relocations. I've
eliminated pointers by hoisting all of the variable length data
structures to XPTHeader, into a single array for each type of
data. These data structures now use an index into these arrays to find
their first element. Strings are similar, but they are mashed into a
single giant string, including embedded null terminators. Modifying
the accessor methods to support this is easy, because there is only a
single global instance of each of these arrays in XPTHeader.

MozReview-Commit-ID: 5rgwaEBvDYl

--HG--
extra : rebase_source : 6c35fd1034b727443bb87dfde0a4af4799ed480a
2018-02-28 15:12:07 -08:00
Andrew McCreight f8b6ed2d52 Bug 1438688, part 2b - Eliminate XPTHeader data structure. r=njn
Now that there is only one XPTHeader, we can devolve the fields in it
to avoid some indirection. The biggest part here is getting rid of the
mHeader field on xptiTypelibGuts.

The array is [] instead of * to avoid a relocation, by ensuring that
XPTHeader::kInterfaceDirectory as well as the data it points to cannot
be changed.

MozReview-Commit-ID: AzvNTNZKkfi

--HG--
extra : rebase_source : 7b2043cecee5e8d063ea4d0b4a2223b2261c62e7
2018-03-27 14:04:01 -07:00
Andrew McCreight b739ea968d Bug 1438688, part 2 - Load XPT information from a static variable instead of a file. r=njn
This patch removes C++ code related to reading in XPT information from
files. (Code related to packaging XPT files will be removed in the
next patch.) This includes code in the manifest parser, in addition to
the actual code for parsing files.

XPT information is now loaded directly from a single static data
structure, XPTHeader::kHeader, which will be automatically generated
at compile time from .idl files (via .xpt files). Note that the script
to do that is not added until part 6 of this patch series, so linking
will fail on parts 2 through 5.

I inlined XPTInterfaceInfoManager::RegisterXPTHeader into the ctor,
because that is the only caller. It feels like the lock there should
not be needed any more, but I left it alone for now.

The forward declaration of XPTArena in xptiprivate.h is needed because
it was being bootlegged via xpt_xdr.h. Some of the data structures in
reflect/xptinfo/ (which wrap the xpt_struct.h data structures) are
still allocated using XPTArena. Hopefully we can get rid of that in
followup work.

I also deleted a lot of comments in xpt_struct.h that talk about the
on-disk format. I also deleted checking of the major version number,
because that should not matter when the XPT information is baked into
the executable.

MozReview-Commit-ID: 6NJdaCWRBhU

--HG--
extra : rebase_source : e169b827a64bad5dde15de6be0b2ff5e7aa35e3f
2018-02-28 12:51:39 -08:00
Andrew McCreight 389371b575 Bug 1438688, part 1 - Add methods for accessing arrays in xpt_struct.h. r=njn
This lets us hide later changes to how these arrays are stored. There
should be no behavioral change. Some methods in xpt_struct.h are
declared inline at the end of the header due to the order that classes
are declared in the header.

MozReview-Commit-ID: KAxUKn3sDOD

--HG--
extra : rebase_source : 782fddc7bbf29c8ec73a0c6dbcca0621739e6c6e
2018-02-28 10:07:45 -08:00
Andreea Pavel 398805cbb6 Backed out changeset 5eaa657f6e06 (bug 1448454) for build bustages at /builds/worker/workspace/build/src/xpcom/typelib/xpt/xpt_struct.h:16 on a CLOSED TREE 2018-04-04 03:01:50 +03:00
Andrew McCreight 7c9d910f6d Bug 1448454 - Make some fields in xpt_struct.h private. r=njn
Many of these fields have accessors, and can only be read indirectly
by going through the XPTHeader data structure anyways, so they should
be marked private. This makes the generated XPT data file noisier due
to the need for constexpr constructors.

I had to fix the ctors for the classes in xptinfo.h to be less weird
because there was a compiler error.

Members in two of the classes need to be marked protected because they
have subclasses in xptinfo.h. Ideally those classes would be merged
in.

MozReview-Commit-ID: 70IdFAhp5je

--HG--
extra : rebase_source : a2670a65ace291defc47845c4058477f0ae5360a
2018-03-26 14:06:01 -07:00
Boris Zbarsky 20e0796330 Bug 1447472 part 3. Remove nsIDOMNSEvent. r=qdot
MozReview-Commit-ID: HT1gskFxEZL
2018-03-26 14:53:53 -04:00
Boris Zbarsky 37b111ac2a Bug 1447472 part 2. Remove nsIDOMCustomEvent. r=qdot
MozReview-Commit-ID: 3NPqLIU8cka
2018-03-26 14:53:51 -04:00
Boris Zbarsky 5f1deca99d Bug 1447472 part 1. Remove nsIDOMNotifyPaintEvent. r=qdot
MozReview-Commit-ID: J019gX9963D
2018-03-26 14:53:47 -04:00
Boris Zbarsky 5b0b5358d6 Bug 1446527 part 6. Remove nsIDOMUIEvent. r=qdot
MozReview-Commit-ID: 7GbifGJQUtQ
2018-03-26 14:53:03 -04:00
Andrew McCreight 81b1d1c977 Bug 1447849 - Eliminate the anonymous union from XPTTypeDescriptor. r=njn
For bug 1438688, I need to statically initialize all of the data types
in xpt_struct.h. It turns out that the approach I was using for unions
is C99 and not C++. While for some reason Clang and GCC are okay with
that, MSVC is not.

One of the unions is a gnarly anonymous union in
XPTTypeDescriptor. However, every arm of this union is either 1 or 2
uint8_t, so I think it is reasonable to eliminate the union and
replace it with two fields, mData1 and mData2. I've fixed up the
places that read this data to use accessor methods with nice asserts
about the tag on the variant, so if anything I think that part is
nicer.

The code in xpt_struct.cpp that writes to this data is maybe less
nice, but I'm deleting it in bug 1438688 so I think that's okay. We
also lose some detail in the comments about the relationship between
what is stored in memory compared to what is stored on disk, but I
think that's okay, too.

MozReview-Commit-ID: DGi19f8HnMi

--HG--
extra : rebase_source : e3535ecb3d7f02bdb643df153e8aba3e106d9104
2018-03-21 16:35:55 -07:00
Boris Zbarsky 35d4bc91ec Bug 1444143 part 13. Remove nsIFrameLoader. r=mystor
MozReview-Commit-ID: 4LG8nIePsMH
2018-03-21 22:43:17 -04:00
Peter Van der Beken f5754d679a Bug 888600 - Move ContentFrameMessageManager to WebIDL. Part 6: Mark some IDL interfaces as non-scriptable. r=bz.
--HG--
extra : rebase_source : 5911f91bd7a63cd3603494e087e3858bd0527500
2018-03-01 20:19:56 +01:00
Boris Zbarsky 837dc7eaaa Bug 1446711 part 8. Get rid of nsIDOMMouseEvent. r=qdot
MozReview-Commit-ID: 2FK1MA4LGZj
2018-03-20 00:16:07 -04:00
Boris Zbarsky 1a7c5067ca Bug 1446851. Get rid of nsIDOMWheelEvent. r=qdot
We can't include WheelEventBinding.h in MouseEvents.h because that produces
this include loop:

WheelEventBinding.h -> MouseEventBinding.h -> UIEventBinding.h ->
nsGlobalWindow.h -> nsGlobalWindowInner.h -> nsRefreshDriver.h ->
AnimationEventDispatcher.h -> AnimationComparator.h -> Animation.h ->
EffectCompositor.h -> PseudoElementHashEntry.h -> Element.h ->
PointerEventHandler.h -> MouseEvents.h -> WheelEventBinding.h

MozReview-Commit-ID: 5KNwH69aJYW
2018-03-20 00:16:05 -04:00
Boris Zbarsky 5f74b75e04 Bug 1446850. Get rid of nsIDOMMouseScrollEvent. r=qdot
MozReview-Commit-ID: ZT9E3Fhtw0
2018-03-19 15:50:56 -04:00
Boris Zbarsky d05e564049 Bug 1446710. Get rid of nsIDOMXULCommandEvent. r=qdot
MozReview-Commit-ID: C2C6oWtagG3
2018-03-19 15:50:37 -04:00
Boris Zbarsky 5c19641a68 Bug 1446709. Get rid of nsIDOMScrollAreaEvent. r=qdot
MozReview-Commit-ID: IXixthbqXqM
2018-03-19 15:50:22 -04:00
Boris Zbarsky 5b34d749e4 Bug 1446708. Get rid of nsIDOMFocusEvent. r=qdot
MozReview-Commit-ID: ChTQpN6EzdC
2018-03-19 15:50:19 -04:00
Boris Zbarsky 2f66e620e3 Bug 1446533 part 12. Remove nsIDOMCharacterData. r=mystor
MozReview-Commit-ID: KXex3Rjcire
2018-03-19 15:47:42 -04:00
Boris Zbarsky b990bb4bdb Bug 1446599 part 4. Remove nsIDOMProcessingInstruction. r=mystor
MozReview-Commit-ID: EZVcDlMO3ev
2018-03-19 15:15:40 -04:00
Boris Zbarsky 4fa4d2a7f5 Bug 1446598 part 2. Get rid of nsIDOMComment. r=mystor
MozReview-Commit-ID: GGXPQnlwuUM
2018-03-19 15:15:39 -04:00
Boris Zbarsky 46cdbdc51b Bug 1433566 part 13. Remove nsIDOMText. r=mystor
MozReview-Commit-ID: DvaZ96j5exf
2018-03-19 15:15:39 -04:00
Bogdan Tara 7eb4cdd58d Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-03-17 12:34:09 +02:00
Boris Zbarsky 4fbe59c404 Bug 1445417 part 4. Remove nsIDOMDragEvent. r=mystor
MozReview-Commit-ID: 6hQ7mHLaLcx
2018-03-16 22:25:25 -04:00
Adrian Wielgosik 87a72d3f51 Bug 1446515 - Remove nsIDOMFileList. r=bz
MozReview-Commit-ID: 4ab1e6NTcOB

--HG--
extra : rebase_source : 09388e531e2bcc6a133cc1ec76946a79ddf2bcb0
2018-03-16 20:55:32 +01:00
Noemi Erli 4472289127 Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2018-03-15 19:43:12 +02:00
Adrian Wielgosik 27009d1b15 Bug 1445408 - Remove nsIDOMClientRect. r=bz
MozReview-Commit-ID: HP4E3cADa8i

--HG--
extra : rebase_source : caffa42f22f6c25d62d080aa6f65e5105ad263e9
2018-03-13 14:19:17 +01:00
Adrian Wielgosik bb82957302 Bug 1445408 - Remove nsIDOMClientRectList. r=bz
MozReview-Commit-ID: 22sQNVs0wFP

--HG--
extra : rebase_source : f96617033678e372a32971517300182dd4c3ac57
2018-03-01 17:14:26 +01:00
Adrian Wielgosik 43a3ada8a9 Bug 1418077 - Remove nsIDOMHTMLFormElement. r=bz
MozReview-Commit-ID: 9eQxvfIMB22

--HG--
extra : rebase_source : f75e043da542b567e31d15db25791c738b275a09
2018-03-14 21:42:25 +01:00
Ryan VanderMeulen 5383105dd9 Bug 1086964 - Remove uses of no_pgo that are no longer needed. r=dmajor 2018-03-14 18:18:32 -04:00
Boris Zbarsky 12b661df01 Bug 1445140 part 5. Remove nsIDOMDocumentType. r=mystor
MozReview-Commit-ID: B6iktNYbWn9
2018-03-13 16:24:01 -04:00
Boris Zbarsky dae236c7cb Bug 1444686 part 14. Remove nsIDOMDataTransfer. r=mystor
MozReview-Commit-ID: BLi4w10clkP
2018-03-13 16:24:01 -04:00
Narcis Beleuzu 298d1d55b5 Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-03-13 12:36:54 +02:00
Andrew McCreight 47cc3bb70c Bug 1445073 - Pass XPTInterfaceDirectoryEntry into xptiInterfaceEntry::Create(). r=njn
Also, I set some flags in the ctor instead of later and I also removed
a comment which refers to SetHeader(), which does not exist any more.

MozReview-Commit-ID: 27mcRTnanrZ

--HG--
extra : rebase_source : ec87aed9fa46c2202b607cbcdb4c8347eaa50949
2018-03-12 11:17:48 -07:00
Boris Zbarsky ba4b5f9979 Bug 1444919 part 2. Remove nsIDOMClipboardEvent. r=mystor
MozReview-Commit-ID: YmJ04OiqFo
2018-03-13 00:59:24 -04:00
Andrew McCreight 48c9169246 Bug 1444129, part 7 - Rename fields of XPTMethodDescriptor. r=njn
MozReview-Commit-ID: IwOCyKOY4mR

--HG--
extra : rebase_source : 315d82cb066cbcbfe325279a33366ed7be6fe68a
2018-03-07 15:22:35 -08:00
Andrew McCreight 89bbb84e4f Bug 1444129, part 6 - Rename fields of XPTParamDescriptor. r=njn
MozReview-Commit-ID: 62OFcZ6s2kd

--HG--
extra : rebase_source : 30b263dad71433fb4665235db575d778d07fa785
2018-03-07 15:17:55 -08:00
Andrew McCreight 639c12b1b2 Bug 1444129, part 5 - Rename fields of XPTTypeDescriptor and XPTConstDescriptor. r=njn
MozReview-Commit-ID: LdDpZwKDxJH

--HG--
extra : rebase_source : 2c9f5390792885566fa91b40dc0cbc4a46c0fd42
2018-03-07 14:34:22 -08:00
Andrew McCreight f613470d37 Bug 1444129, part 4 - Rename the one field of XPTTypeDescriptorPrefix. r=njn
MozReview-Commit-ID: 4rO1xtMfHD6

--HG--
extra : rebase_source : 647fc9265ee52d32cab8aa276c64200d66442aa0
2018-03-07 14:06:31 -08:00
Andrew McCreight f7a3e0281d Bug 1444129, part 3 - Rename XPTInterfaceDescriptor fields. r=njn
MozReview-Commit-ID: C5jenxkkDgl

--HG--
extra : rebase_source : 98c588e8433009c00acf014eb58be10b73fdb8cf
2018-03-07 13:40:47 -08:00
Andrew McCreight 324e8c87a2 Bug 1444129, part 2 - Rename fields of XPTInterfaceDirectoryEntry. r=njn
MozReview-Commit-ID: 8bGFwMyzhTx

--HG--
extra : rebase_source : 3097c11e868c6868c9420b8e55893e0f7abd08de
2018-03-07 13:37:08 -08:00
Andrew McCreight 7a9835414d Bug 1444129, part 1 - Rename fields of XPTHeader. r=njn
MozReview-Commit-ID: COPpBBEbVbC

--HG--
extra : rebase_source : c5085ee2e3256516d092768d82464d9c9fd76790
2018-03-07 13:28:54 -08:00
Andrew McCreight e4b9916e1e Bug 1443951 - Remove some ancient XPTInfo logging. r=njn
MozReview-Commit-ID: KCyIEHEnMUf

--HG--
extra : rebase_source : 35936c2cd41d72d51110dbe1fd2fa238cee03106
2018-03-07 13:22:05 -08:00
Andrew McCreight 7566c49fc5 Bug 1442363, part 5 - Constify XPTInterfaceDescriptor::method_descriptors. r=njn
Also, change some reinterpret casts to static casts, because there was
no need for them to be reinterpret.

MozReview-Commit-ID: EtPmwxboaq9

--HG--
extra : rebase_source : 59fe2d74c8567af4d8000cb230e8dc0f8bf728ff
2018-02-27 15:28:16 -08:00
Andrew McCreight 5ba4e8d4e6 Bug 1442363, part 4 - Constify XPTInterfaceDirectoryEntry::interface_descriptor. r=njn
MozReview-Commit-ID: E4DFA4dodK3

--HG--
extra : rebase_source : 039ee0b94f33a8de7f982e97d941a3d5f0a9aaed
2018-02-27 15:23:03 -08:00
Andrew McCreight b58cc63048 Bug 1442363, part 2 - Constify XPTHeader::interface_directory. r=njn
MozReview-Commit-ID: 3oLZFtXBsV8

--HG--
extra : rebase_source : 3a8ac38d09709e0aedaa4ddbf876f073ae9131c9
2018-02-27 15:08:42 -08:00
Andrew McCreight b458c8cf4e Bug 1442363, part 1 - Constify RegisterXPTHeader(). r=njn
Once the XPT data is statically allocated, all of the pointers in
xpt_struct.h have to be made const, as well as the XPTHeader
itself. The existing consumers mostly assume things are const already,
so the bulk of the work is tweaking the deserialization code in
xpt_struct.cpp so that the final result is const. I've broken up these
changes into a set of patches.

This patch also gets rid of xptiTypelibGuts::GetHeader(), which is
never called.

MozReview-Commit-ID: FJpmNjY87SN

--HG--
extra : rebase_source : b28456625e4c80023bd350c67163085011bc7cee
2018-02-27 14:58:03 -08:00
Kannan Vijayan 627eb6ae9a Bug 1411415 - r=bz r=fitzgen 2018-03-05 19:27:02 -05:00
Sebastian Hengst 3a10644021 Backed out 6 changesets (bug 888600) for beta simulation failures: build bustage on Linux and Windows opt (bug 1442036) and devtools failure browser_net_view-source-debugger.js (bug 1441961). a=backout
Backed out changeset 83c87140dc3d (bug 888600)
Backed out changeset 2efb9b1753f6 (bug 888600)
Backed out changeset af5303781961 (bug 888600)
Backed out changeset 79ef59047e63 (bug 888600)
Backed out changeset 30d568d628dd (bug 888600)
Backed out changeset c7bd4c6c9741 (bug 888600)

--HG--
extra : histedit_source : 791b22f6770f4fead2f909478a93d65d85829fe0%2Cbb387309e90f53e1dde45dcf8cf4ebedcc6e5c5e
2018-03-01 11:51:09 +02:00
Andrew McCreight d3c4d54b03 Bug 1441677, part 6 - Get rid of macros for nsXPTParamInfo flags. r=njn
Also, get rid of a gratuitous use of a trinary operator in
nsXPCWrappedJSClass::CallMethod, clean up the style a little, and mark
an unimplemented ctor as deleted.

MozReview-Commit-ID: Kp64sMxyRWc

--HG--
extra : rebase_source : e6082003d3759234cd5f4630b5560b14930c0a88
2018-02-27 13:36:34 -08:00
Andrew McCreight ae2f96e797 Bug 1441677, part 5 - Demacroize nsXPTMethodInfo masks. r=njn
Also, clean up the style a little and mark an unimplemented ctor as
deleted.

MozReview-Commit-ID: JqmveE6qWFa

--HG--
extra : rebase_source : 62c8249de1f52686b4dd5d2a043261d2618d7433
2018-02-27 09:49:58 -08:00
Andrew McCreight 4f8bbff9e8 Bug 1441677, part 4 - Use functions to check XPTInterfaceDescriptor::flags. r=njn
MozReview-Commit-ID: 6qcgWbetgSv

--HG--
extra : rebase_source : c0ebec9533bdcf81a263990b882595f1326e54da
2018-02-27 09:03:13 -08:00
Andrew McCreight 1f1a2fe0ba Bug 1441677, part 3 - Use a function to get the tag of an XPT type. r=njn
MozReview-Commit-ID: Bo5ZR8c9S9D

--HG--
extra : rebase_source : 96c8f4295e358c8fa06736de4cb58376c3be1d10
2018-02-27 09:42:27 -08:00
Andrew McCreight a0cddfbd87 Bug 1441677, part 2 - Move things only used in xpt_struct.cpp there. r=njn
Also, remove a few unused things.

Removing the include of xpt_arena.h from xpt_struct.h required that I
added it to two other files.

MozReview-Commit-ID: 4bMDRYt0Zxc

--HG--
extra : rebase_source : 91548b62dbf4b92bf918d196067e6fabb9a72302
2018-02-27 08:44:28 -08:00
Andreea Pavel d805787970 Merge mozilla-central to autoland. a=merge on a CLOSED TREE 2018-02-28 00:25:43 +02:00
Peter Van der Beken 6cf0e1c871 Bug 888600 - Move ContentFrameMessageManager to WebIDL. Part 6: Mark some IDL interfaces as non-scriptable. r=bz.
--HG--
extra : rebase_source : f6f781b04923f67f60718706a78b3c4de15eca94
2018-02-22 20:22:29 +01:00
Andrew McCreight eda8c9ed75 Bug 1441255, part 2 - Don't make an extra copy of the name string in xptiInterfaceEntry. r=njn
MozReview-Commit-ID: DBOcq2ZNqKu

--HG--
extra : rebase_source : d11137e2ec6a429cd9223a722fac36dc9deeac5a
2018-02-26 11:10:16 -08:00
Andrew McCreight 2c61ab2952 Bug 1441255, part 1 - Fix argument names for xptiInterfaceEntry creation. r=njn
MozReview-Commit-ID: 27n5GsGWnPl

--HG--
extra : rebase_source : 27613c96cc042bb0335fc8a51602ec6071f57b26
2018-02-26 10:51:45 -08:00
Andrew McCreight ee205d4ac0 Bug 1441217 - Use nsXPTMethodInfo instead of XPTMethodDescriptor in XPConnect. r=njn
nsXPTMethodInfo is a nicer structure to use, and this paves the way
for making the two types different, which will be needed if I make
XPTMethodDescriptor statically allocated.

Also, use the higher level accessor methods.

MozReview-Commit-ID: JbRdLU5Wwyt

--HG--
extra : rebase_source : 48f6c4e98e43c75006ceeb02bd727b59d3726681
2018-02-26 08:19:02 -08:00
Andrew McCreight 2820521bfb Bug 1441205 - XPTMethodDescriptor::result is unused. r=njn
This sounds weird, but either:
1) A method is notxpcom, so it can't be called from script and the XPT
information is unused.
2) A method is not notxpcom, in which case the result type is nsresult.

MozReview-Commit-ID: a7SRJn8PlP

--HG--
extra : rebase_source : 457051a47dd3f1f2f49b5f11ef3e5138f9d814e1
2018-02-26 08:49:19 -08:00
Adrian Wielgosik de1e0827c0 Bug 1440441 - Remove nsIDOMFormData. r=kmag,qdot
MozReview-Commit-ID: 9Y8YQBqbSnM

--HG--
extra : rebase_source : 205a3341771d99cb252516f0ffffd107e1c82e5d
2018-02-22 20:42:12 +01:00
Adrian Wielgosik ed00cb8c4e Bug 1440039 - Remove nsIDOMCanvasRenderingContext2D. r=qdot
MozReview-Commit-ID: GY3DdHAfQK2

--HG--
extra : rebase_source : 1fe021831984cb64cedd8c7eba486a0d29f7d66a
2018-02-21 20:49:07 +01:00
Andrew McCreight 30a307235f Bug 1440072 - Eliminate unused cases for XPTConstValue. r=njn
xpt.py only generates constants for a couple of the cases that
XPTConstValue supports. Eliminating the unused cases reduces the size
of this data structure from 64-bit to 32-bit, which reduces the memory
usage of xpti-working set by about 0.02MB.

MozReview-Commit-ID: 1yQkK28fPkR

--HG--
extra : rebase_source : 9d5ce81cfa213cba203ee9c72d2f7dcc8652bd31
2018-02-21 10:36:10 -08:00
Adrian Wielgosik d729e5e045 Bug 1438956 - Remove nsIDOMTimeRanges. r=bz
MozReview-Commit-ID: DAgQ0OkSxkq

--HG--
extra : rebase_source : e995b4d76186032fc048bc7b63f4e1e2aee046b4
2018-02-16 19:34:28 +01:00
Andrew McCreight ae0559d5a5 Bug 1438707, part 6 - Remove nsXPTConstant. r=njn
It is unused.

MozReview-Commit-ID: GXPPTmPUrlj

--HG--
extra : rebase_source : 69f97ceeb0c9d4fa633153c8f882802620f416be
2018-02-15 09:54:11 -08:00
Thomas Wisniewski 7c05457e0d Bug 792808 - Purge nsIXMLHttpRequest, nsIXMLHttpRequestUpload, nsIXMLHttpRequestEventTarget, nsIXHRSendable XPCOM interfaces; r=baku
MozReview-Commit-ID: 8yzCXSeyO85

--HG--
extra : rebase_source : 80f2a96df1e250ad646a20271b7d3dbebf7774e4
2017-11-19 17:11:41 -05:00
Kyle Machulis 0b873f0041 Bug 1407040 - Remove nsIDOMHTMLMediaElement; r=bz
MozReview-Commit-ID: CnVw2IFacjC

--HG--
extra : rebase_source : 08b69f4d535bdefe4e43650dc6140bf029e72bfb
2018-02-15 12:52:30 -08:00
Nils Ohlmeier [:drno] 5d76400725 Bug 1173851: rename DataChannel to RTCDataChannel r=jib,smaug
MozReview-Commit-ID: L8OrIlxM7r1

--HG--
rename : dom/webidl/DataChannel.webidl => dom/webidl/RTCDataChannel.webidl
extra : rebase_source : 013fd0b02c6b5e3a95395bbfed68e27138b507ed
2018-02-09 14:36:48 -08:00
Dorel Luca 977a4712b6 Backed out 2 changesets (bug 1173851) for Mochitest failures on dom/tests/mochitest/general/test_interfaces.html. CLOSED TREE
Backed out changeset aba40941f027 (bug 1173851)
Backed out changeset 36e6f0595461 (bug 1173851)

--HG--
rename : dom/webidl/RTCDataChannel.webidl => dom/webidl/DataChannel.webidl
2018-02-15 01:10:06 +02:00
Nils Ohlmeier [:drno] 95deaeb484 Bug 1173851: rename DataChannel to RTCDataChannel r=jib,smaug
MozReview-Commit-ID: L8OrIlxM7r1

--HG--
rename : dom/webidl/DataChannel.webidl => dom/webidl/RTCDataChannel.webidl
extra : rebase_source : b89dbe0ac4dab71199d758b8cd85ea9655533067
2018-02-09 14:36:48 -08:00
Adrian Wielgosik 6c854a7275 Bug 1438270 - Remove nsIDOMDocumentXBL. r=bz
MozReview-Commit-ID: 4TsjUaEdDP2

--HG--
extra : rebase_source : ab61d1832113a8c7b126b8856de59056fcf5ec5e
2018-02-14 20:10:45 +01:00
Adrian Wielgosik dea9e6d333 Bug 1438024 - Remove nsIMenuBoxObject. r=bz
MozReview-Commit-ID: Jz47v3dKvIY

--HG--
extra : rebase_source : 9896fdb66fc28e315858c353103299be87ae599f
2018-02-11 11:50:03 +01:00
Adrian Wielgosik ee29f405fc Bug 1438024 - Remove nsIScrollBoxObject. r=bz
MozReview-Commit-ID: JOgu5nASqKA

--HG--
extra : rebase_source : 92097e5b33b0ec874b805d8a1d7dc910f99c0df4
2018-02-11 11:48:10 +01:00
Adrian Wielgosik 4ed50ec502 Bug 1438024 - Remove nsIContainerBoxObject. r=bz
MozReview-Commit-ID: ENLYcochOj3

--HG--
extra : rebase_source : 45b00b1ddc999fd808b24629025429c8037a1fbd
2018-02-11 11:45:10 +01:00
Sebastian Hengst d1700a0b7a merge mozilla-central to autoland. CLOSED TREE 2018-02-10 00:34:30 +02:00
Sebastian Hengst f5e840425b merge mozilla-inbound to mozilla-central. a=merge 2018-02-10 00:26:50 +02:00
Boris Zbarsky 523343906d Bug 1436508 part 16. Remove nsIDOMSimpleGestureEvent. r=masayuki
MozReview-Commit-ID: 8JDovhthKtx
2018-02-09 11:17:10 -05:00
Boris Zbarsky 55a170b415 Bug 1436508 part 15. Remove nsIDOMTransitionEvent. r=masayuki
MozReview-Commit-ID: EWWqk9HAwqp
2018-02-09 11:17:10 -05:00
Boris Zbarsky c61fc860fe Bug 1436508 part 14. Remove nsIDOMMutationEvent. r=masayuki
MozReview-Commit-ID: Gf59kFSIuaK
2018-02-09 11:17:10 -05:00
Boris Zbarsky 034e47c66b Bug 1436508 part 12. Remove nsIDOMKeyEvent. r=masayuki
MozReview-Commit-ID: 8giqG5iHiIf
2018-02-09 11:17:10 -05:00
Boris Zbarsky d22cfa08fe Bug 1436508 part 3. Remove nsIDOMCommandEvent. r=masayuki
We never use initCommandEvent anywhere on a CommandEvent, only on
XULCommandEvents.

MozReview-Commit-ID: 8QHYnlPdDvx
2018-02-09 11:17:08 -05:00
Boris Zbarsky d891ae6e2d Bug 1436508 part 2. Remove nsIDOMBeforeUnloadEvent. r=masayuki
MozReview-Commit-ID: 9svlTELngmi
2018-02-09 11:17:08 -05:00
Boris Zbarsky 05de0574d2 Bug 1436508 part 1. Remove nsIDOMAnimationEvent. r=masayuki
MozReview-Commit-ID: GRZzt1xGGDc
2018-02-09 11:17:08 -05:00
Adrian Wielgosik ee7273f84f Bug 1436869 - Remove nsIDOMPaintRequest. r=bz
MozReview-Commit-ID: 3Xpk2v1xbPp

--HG--
extra : rebase_source : e66727a028649557246f005a9b69c850f7831146
2018-02-08 17:24:03 +01:00
Adrian Wielgosik 2c6a0a9273 Bug 1436864 - Remove nsIDOMHistory. r=bz
MozReview-Commit-ID: HVOR03mvW2S

--HG--
extra : rebase_source : d4d81217ee17ca4b9d5e966fc1954cd77ee2437b
2018-02-08 22:33:10 +01:00
Adrian Wielgosik 962c6d6974 Bug 1437135 - Remove nsIDOMValidityState. r=bz
MozReview-Commit-ID: AlRrLxSiIre

--HG--
extra : rebase_source : 93e6d2b4e84b3a1e1781e00e611336508aef8dc5
2018-02-09 19:25:02 +01:00
Cameron McCormack 73774a4b98 Bug 1435666 - Part 4: Remove nsIDOMXPathEvaluator. r=bz
MozReview-Commit-ID: 2nZmbJ9mdwI

--HG--
extra : rebase_source : 3acc54ac7726de2ff00a9b7ddadfcb7e28f573eb
2018-02-05 13:05:45 +08:00
Cameron McCormack 234b89c117 Bug 1435666 - Part 3: Remove nsIDOMXPathResult. r=bz
MozReview-Commit-ID: 9j6dUlanNTi

--HG--
extra : rebase_source : 9a790516379441d4e048009bcacdd26e93fde6ae
2018-02-05 11:39:18 +08:00
Cameron McCormack 70af884bbd Bug 1435666 - Part 2: Remove nsIDOMTimeEvent. r=bz
MozReview-Commit-ID: F2fYWhUKzyp

--HG--
extra : rebase_source : 4dc8397fe050262463d37a9829130c0af707f4ba
2018-02-05 10:31:43 +08:00
Cameron McCormack a3eee241b4 Bug 1435666 - Part 1: Remove nsIDOMSVGElement. r=bz
MozReview-Commit-ID: Hlfnu3pXC0n

--HG--
extra : rebase_source : b50343bbebe2044442af4491f7c97209ad8d4fc0
2018-02-04 17:40:57 +08:00
Boris Zbarsky 13dda50f75 Bug 1435138 part 4. Remove nsIDOMSVGLength. r=qdot
MozReview-Commit-ID: HwKT9Bdby6F
2018-02-02 08:21:33 -05:00
Boris Zbarsky ea872de15a Bug 1434819 part 5. Remove nsIDOMTreeWalker. r=qdot
MozReview-Commit-ID: QmxoxVhppG
2018-02-01 14:26:12 -05:00
Boris Zbarsky 8003341ed5 Bug 1434819 part 2. Remove nsIDOMNodeIterator. r=qdot
MozReview-Commit-ID: 7ln10gj1cLP
2018-02-01 14:26:12 -05:00
Boris Zbarsky 8d91b52952 Bug 1434399 part 13. Remove C++ uses of nsIDOMXULDocument. r=mystor
MozReview-Commit-ID: KSsXLra5DQk
2018-01-31 14:49:28 -05:00
Cosmin Sabou 94617f91cf Backed out 19 changesets (bug 1434399) for build bustages on nsXULPopupManager.cpp on a CLOSED TREE
Backed out changeset 499f6dffd9cb (bug 1434399)
Backed out changeset 018290612415 (bug 1434399)
Backed out changeset f4c3179f8e59 (bug 1434399)
Backed out changeset f3ce2826b857 (bug 1434399)
Backed out changeset 6d2391af01dd (bug 1434399)
Backed out changeset dc98ed8c609a (bug 1434399)
Backed out changeset 8eaa395d6200 (bug 1434399)
Backed out changeset 19b18f4a53be (bug 1434399)
Backed out changeset 8ff378a6e96a (bug 1434399)
Backed out changeset 60fe73be1a26 (bug 1434399)
Backed out changeset faefb2751fdc (bug 1434399)
Backed out changeset 55cdf8b3a959 (bug 1434399)
Backed out changeset b578cc8efb92 (bug 1434399)
Backed out changeset 54cc4cb2fca1 (bug 1434399)
Backed out changeset f5343ef34d6c (bug 1434399)
Backed out changeset 8fb30e066cbd (bug 1434399)
Backed out changeset 21341b656b0f (bug 1434399)
Backed out changeset fab1f8b087a2 (bug 1434399)
Backed out changeset 55250a54852a (bug 1434399)
2018-01-31 22:45:26 +02:00
Boris Zbarsky 467ed0721d Bug 1434399 part 13. Remove C++ uses of nsIDOMXULDocument. r=mystor
MozReview-Commit-ID: KSsXLra5DQk
2018-01-31 14:49:28 -05:00
Boris Zbarsky 7c392f077e Bug 1418085 part 6. Remove nsIDOMHTMLElement. r=mystor
MozReview-Commit-ID: 5QUyFeAQYZQ
2018-01-30 00:25:36 -05:00
Boris Zbarsky 9da3878bc9 Bug 1418076 part 11. Eliminate the nsIDOMHTMLDocument interface. r=mystor
MozReview-Commit-ID: 4lEcUeenbg3
2018-01-26 01:03:25 -05:00
Ehsan Akhgari de3684029d Bug 1433563 - Remove nsIDOMCDATASection; r=qdot 2018-01-26 17:52:44 -05:00
Boris Zbarsky e338b5f525 Bug 1431964 part 9. Stop using nsIDOMAttr in JS. r=mccr8
MozReview-Commit-ID: 59TspEgvNRF
2018-01-21 12:07:31 -05:00
Boris Zbarsky e38dec29f4 Bug 1431964 part 8. Remove nsIDOMMozNamedAttrMap. r=mccr8
MozReview-Commit-ID: C7z0hcjC0Tg
2018-01-20 20:57:26 -05:00
qiaopengcheng-hf@loongson.cn 6193e70667 Bug 1429650 - mips64-linux PrepareAndDispatch float-formate data error when running xpcshell-test js/xpconnect/tests/unit/test_attribute.js and test_params.js r=froydnj 2018-01-15 09:59:11 +08:00
Chris Peterson 37efe4d0e6 Bug 1428535 - Add missing override specifiers to overridden virtual functions. r=froydnj
MozReview-Commit-ID: DCPTnyBooIe

--HG--
extra : rebase_source : cfec2d96faeb11656d86d760a34e0a04cacddb13
extra : intermediate-source : 6176724d63788b0fe8caa3f91607c2d93dbaa7ec
extra : source : eebbb0600447f9b64aae3bcd47b4be66c02a51ea
2017-11-05 19:37:28 -08:00
Cameron McCormack 8731df3c34 Bug 1427512 - Part 29: Remove nsIDOMCSSDeclaration. r=xidorn,jryans,bz
This removes the .style attribute from nsIDOMSVGElement, but there
shouldn't be any users of that.

MozReview-Commit-ID: LOBSFo85Utn
2018-01-11 16:17:57 +08:00
Cameron McCormack 6716a7e0eb Bug 1427512 - Part 28: Remove nsIDOMCSSValue. r=xidorn,bz
MozReview-Commit-ID: 6DasjoMa6C8
2018-01-11 16:17:57 +08:00
Cameron McCormack 66141a0c03 Bug 1427512 - Part 27: Remove nsIDOMCSSPrimitiveValue. r=xidorn,bz
MozReview-Commit-ID: IcGKAjPWacZ
2018-01-11 16:17:57 +08:00
Cameron McCormack 7380ffab13 Bug 1427512 - Part 26: Remove nsIDOMCSSValueList. r=xidorn,bz
MozReview-Commit-ID: Fsclh2aHLy8
2018-01-11 16:17:57 +08:00
Cameron McCormack 3c29060132 Bug 1427512 - Part 25: Remove nsIDOMRect. r=xidorn,bz
Although this is changing nsIDOMCSSPrimitiveValue, that interface will
go away a couple of patches later.

MozReview-Commit-ID: GSisnYWZhHy
2018-01-11 16:17:57 +08:00
Cameron McCormack e3549b2d1c Bug 1427512 - Part 22: Remove nsIDOMStyleSheet. r=xidorn,bz
MozReview-Commit-ID: KO2mWX4P8lI
2018-01-11 16:17:57 +08:00
Cameron McCormack 0ae07fab78 Bug 1427512 - Part 21: Remove nsIDOMStyleSheetList. r=xidorn,jryans,bz
MozReview-Commit-ID: 8ZSTMoWkeRw
2018-01-11 16:17:56 +08:00
Cameron McCormack 09a1815a08 Bug 1427512 - Part 20: Remove nsIDOMMediaList. r=xidorn,jryans,bz
MozReview-Commit-ID: KKnTf7aFfjA
2018-01-11 16:17:56 +08:00
Cameron McCormack a4541d9b18 Bug 1427512 - Part 18: Remove nsIDOMCSSStyleSheet. r=xidorn,jryans,bz
MozReview-Commit-ID: CN3VZvQceZB
2018-01-11 16:17:56 +08:00
Sylvestre Ledru 9bfe27d903 Bug 1394734 - Replace CONFIG['GNU_C*'] by CONFIG['CC_TYPE'] r=glandium
MozReview-Commit-ID: 7duJk2gSd4m

--HG--
extra : rebase_source : 7312fe276e561e8c034a5f6749774ae812727f9c
2017-12-07 22:09:15 +01:00