Commit Graph

545991 Commits

Author SHA1 Message Date
ffxbld
5dadcbe55b No bug, Automated HPKP preload list update from host bld-linux64-spot-307 - a=hpkp-update 2017-07-10 09:13:32 -07:00
ffxbld
cff6343801 No bug, Automated HSTS preload list update from host bld-linux64-spot-307 - a=hsts-update 2017-07-10 09:13:29 -07:00
Carsten "Tomcat" Book
de712a1cc5 merge mozilla-inbound to mozilla-central a=merge 2017-07-10 12:26:15 +02:00
Carsten "Tomcat" Book
6121e5b902 Backed out changeset 31c43a9ffa8b (bug 1379474) for bustage 2017-07-10 08:06:30 +02:00
Lars T Hansen
814a1042c6 Bug 1373414 - Backout wasm work stealing on JS helper threads. r=shu
--HG--
extra : rebase_source : 8b1dbd5f5885d41c281da137496ac5e268f4029c
extra : source : 55393d7d4f5d8a0d6258cc3035f418a05ba40aea
2017-07-07 16:03:39 -07:00
Wes Kocher
b43f3b0d25 Backed out 2 changesets (bug 1344751) for frequent android crashes in test_fetch_cors_sw_reroute.html a=backout
Backed out changeset ec02a5ecb2b4 (bug 1344751)
Backed out changeset 10c975d4a8f9 (bug 1344751)

MozReview-Commit-ID: GauB18HNj15
2017-07-10 14:17:35 -07:00
Boris Zbarsky
66481a7a29 Bug 1371259 part 9. Make UnwrapReflectorToISupports return already_AddRefed<nsISupports>. r=peterv
The main reason to not do this would be performance (avoiding the
addref/release), but there are two main mitigating factors:

1)  All calls to UnwrapReflectorToISupports that pass in a Web IDL object
    already do the addref (and in fact QI).  So this only affects the
    XPCWrappedNative case.

2)  The vast majority of the callers proceed to QI on the pointer anyway, and a
    second addref is cheap; it's the first addref after a CC that can be
    expensive on a cycle-collected object.

Going through the changes one by one:

* In GlobalObject::GetAsSupports, we do have a change that slightly slows down
  precisely in the XPCWrappedNative global case.  That's the message managers
  and the backstagepass.  And this really only affects calls to Web IDL statics
  from those globals.

* In UnwrapArgImpl we're talking about a Web IDL method taking an "external
  interface" type, and the UnwrapReflectorToISupports call is immediately
  followed by QI anyway.

* In UnwrapXPConnectImpl we're talking about the case when we have a
  non-WebIDL-object implementation of a Web IDL interface.  Again, this is the
  message manager globals, for EventTarget.  And we have a QI call immediately
  after the UnwrapReflectorToISupports.

* In the generated HasInstance hook for EventTarget we will be slightly slower
  when the LHS of the instanceof is an XPCWrappedNative.  And not much slower,
  because again there's an immediate QI.

* In InstallXBLField we're never going to have an XPCWrappedNative as thisObj;
  it's always an Element in practice.  So this is no more expensive than before.

* In sandbox's GetPrincipalOrSOP we now have an extra addref.  But it was
  followed by various QIs anyway.

* In XPCConvert::JSValToXPCException we have an extra addref if someone throws
  an XPCWrappedNative, which is fairly unlikely; our actual Exception objects
  are on Web IDL bindings.  Plus we have an immediate QI.

* In xpc::HasInstance we have an extra addred if the LHS of instanceof is an
  XPCWrappedNative.  But, again, there's an immediated QI after the
  UnwrapReflectorToISupports.

* In xpcJSWeakReference::Init we are likely doing an extra addref, but again
  immediately followed by QI.

I think it's worth making this change just to remove the footgun and that the
perf impact, if any, is pretty minimal.
2017-07-10 16:05:26 -04:00
Boris Zbarsky
9cdb2834a8 Bug 1371259 part 8. Get rid of nsIXPConnect::GetNativeOfWrapper. r=peterv
Most of these changes are just replacements of GetNativeOfWrapper with
UnwrapReflectorToISupports, which is all it did under the hood.

The other changes are as follows:

* In nsDOMClassInfo, we really care whether we have a window, so we can just
  UNWRAP_OBJECT to the Window interface, since Window is always on Web IDL
  bindings now.  Also, the weird compartment check hasn't been needed ever since
  GetNativeOfWrapper stopped returning things off the passed-in object's
  prototype chain (Firefox 22, bug 658909).
* The only use of do_QueryWrapper was to get a Window in nsDocument; again we
  can UNWRAP_OBJECT.
* In XPCJSRuntime, we again just want to check for a Window, so UNWRAP_OBJECT.
2017-07-10 16:05:25 -04:00
Boris Zbarsky
c524a4da7c Bug 1371259 part 7. Root the unwrapped object in XPCConvert code. r=mccr8 2017-07-10 16:05:25 -04:00
Boris Zbarsky
fa152ffab7 Bug 1371259 part 6. Root the unwrapped object in PRE_HELPER_STUB. r=mccr8 2017-07-10 16:05:25 -04:00
Boris Zbarsky
6761a93bcb Bug 1371259 part 5. Use a safer implementation of IsFileList. r=peterv 2017-07-10 16:05:25 -04:00
Boris Zbarsky
cdd8fe10d4 Bug 1371259 part 4. Stop using UnwrapArg to unwrap this values. r=peterv 2017-07-10 16:05:25 -04:00
Boris Zbarsky
5c76874a46 Bug 1371259 part 3. Change UnwrapObject<> and the UNWRAP_OBJECT macro to allow passing in mutable object or value handles for the thing being unwrapped, and do so at various callsites. r=peterv
I did audit all UNWRAP_OBJECT callers to make sure that the lifetimes of all the
temporary Rooted or the RefPtrs they unwrap into are long enough.
2017-07-10 16:05:24 -04:00
Boris Zbarsky
5fd161c633 Bug 1371259 part 2. Change union conversions for non-owning unions to pass a MutableHandle through to the underlying conversion code. r=peterv 2017-07-10 16:05:24 -04:00
Boris Zbarsky
6ed5936b6b Bug 1371259 part 1. Pass maybe-mutable Value handles, not JSObject*, into CastableObjectUnwrapper. r=peterv
The idea is that CastableObjectUnwrapper will want to have a MutableHandle for
the thing it's unwrapping whenever its target is a raw pointer.  Since we have
convenient MutableHandle<Value> in most cases, it's easier to switch
CastableObjectUnwrapper to working with MutableHandle<Value> or Handle<Value>
instead of trying to get MutableHandle<JSObject*> in the right places.

There are basically two changes here:

1) Make CastableObjectUnwrapper work with at thing that looks like a Value.
2) Change various callsites to pass in MutableHandle<Value>, in addition to a
   Handle<Value>, into the JS-to-C++ conversion templates.  The
   MutableHandle<Value> is passed as ${maybeMutableVal}.  It may not actually
   end up being a MutableHandle in some cases.

The reason for passing both a Handle and a MutableHandle is that when the thing
we actually have is a Rooted named "foo" the Handle will be "foo" but the
MutableHandle is most naturally written as "&foo".  This is not a problem if
you're just passing it through, but if you want to test whether it's an object,
say, you have a problem.  Writing "foo.isObject()" is ok, but "&foo.isObject()"
is not, and neither is "(&foo).isObject()".  This could be worked around by
passing the MutableHandle as "JS::MutableHandle<JS::Value>(&foo)" or something,
and then "JS::MutableHandle<JS::Value>(&foo).isObject()" does work.  But it
makes the code very hard to read.

So we just pass both things along; ${val} should be used for readonly access and
${maybeMutableVal} any time you really want a MutableHandle.
2017-07-10 16:05:24 -04:00
Andrea Marchesini
b92fb666a1 Bug 1375659 - FetchConsumer must check if the operation has been aborted before starting, r=bkelly 2017-07-10 22:07:44 +02:00
Michael Layzell
912e6a35f2 Bug 1378201 - Improve the performance of TableRowsCollection, r=ehsan
MozReview-Commit-ID: 4joB73SXNGA
2017-07-10 15:54:55 -04:00
Masayuki Nakano
7edb06b6ab Bug 1367482 NativeKey::HandleCharMessage() should treat a WM_CHAR message for '\r' as a Enter key press r=m_kato
Starting from 52, NativeKey::HandleCharMessage() ignores all control characters.  However, some keyboard layout utilities may send WM_CHAR message whose wParam is '\r' for emulating pressing Enter key.  For supporting such utilities, we should dispatch Enter keypress event when HandleCharMessage() receives such event.

Note that this patch does NOT support a pair of WM_KEYDOWN and WM_CHAR whose wParam is '\r' but the WM_KEYDOWN isn't VK_RETURN.  If there is such case, we need to support it too.  However, it needs a lot of code changes.  So, we shouldn't support it until such bug is filed actually.

MozReview-Commit-ID: CWyvBtLmXgg

--HG--
extra : rebase_source : 6e9b27dc2fb9eb75626cdd5ab339d348a7be3040
2017-07-08 03:08:07 +09:00
Xidorn Quan
aa1f5767c8 Bug 1372464 - Use ComputedValues rather than element to get style rule list. r=heycam
MozReview-Commit-ID: JPBbhrxG0Lh

--HG--
extra : rebase_source : 5bec19320bd8fa04efc37bd9301f6f9ecb95ca19
2017-07-10 09:38:58 +10:00
Xidorn Quan
3fd921b5a3 servo: Merge #17646 - stylo: Use ComputedValues rather than element to get style rule list (from upsuper:bug1372464); r=heycam
This is the Servo side of [bug 1372464](https://bugzilla.mozilla.org/show_bug.cgi?id=1372464).

Source-Repo: https://github.com/servo/servo
Source-Revision: 95a85a301f1d014c45448a4d5d4f5a8497904af6

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : be1244951c8d868b79ee09b37d1f26615f6ec89f
2017-07-09 20:07:41 -07:00
Ralph Giles
8151fd3c3c Bug 1379339 - Enable stylo in macOS automation builds. r=gps
Enable stylo in Firefox Nightly builds for macOS so we can
get testing feedback until we have addressed issues blocking
enabling it for developer builds.

MozReview-Commit-ID: 3y0QT4oiBpt

--HG--
extra : rebase_source : 531162da334a6d124dcd7328f45d677cb4933551
2017-07-07 18:42:01 -07:00
Micah Tigley
585c654fe0 Bug 1372745 - Add a pref for max rows/columns for grid outline to render. r=gl
MozReview-Commit-ID: HRlQdEdP5aV
2017-07-06 20:04:02 -06:00
L. David Baron
57e3e8641f Bug 1343715 - Remove nsA[C]String::SetDataFlags. r=dmajor
MozReview-Commit-ID: EDQbH9pZKtZ

--HG--
extra : transplant_source : %FA%16%DC%A2C%DAM%F8%AC9%B6%F3d%DF%9E%5B%80%99%7E%B3
2017-07-10 12:23:11 -07:00
L. David Baron
715cb90c8e Bug 1343715 - Split nsTSubstring::mFlags into separate variables for class and data flags (rust bindings changes). r=mystor
Thanks to Manish for help in reflecting this idiomatically in rust.

MozReview-Commit-ID: 8tB7vsc5yxc

--HG--
extra : transplant_source : F%87%16%82.P%BD%F3%B1%A4%19%BA%F0%3DQ%F6%ED%BD%95%60
2017-07-10 12:23:11 -07:00
L. David Baron
c59666d841 Bug 1343715 - Split nsTSubstring::mFlags into separate variables for class and data flags. r=dmajor
MozReview-Commit-ID: JW1p5BxpHKA

--HG--
extra : transplant_source : %20e%CF%FA%60%A2%1Bn%1A%C6%A2%DBAy%3C%E0b%0C%077
2017-07-10 12:23:10 -07:00
L. David Baron
539cb0d5a7 Bug 1343715 - Use SetDataFlags in ForgetSharedBuffer. r=dmajor
I believe this should fix some incorrect clearing of F_CLASS_FIXED.

MozReview-Commit-ID: 4ga2NEM9M5Z

--HG--
extra : transplant_source : %ECF%CF%D0%F6%19%9F%24%86%EFR%CAVZ%ED%60%D5nU%D8
2017-07-10 12:23:10 -07:00
Wei-Cheng Pan
421c3c6958 Bug 1376760 - Fix race condition for ICustomDestinationList usage. r=jimm
MozReview-Commit-ID: fgZjrHqiek

--HG--
extra : rebase_source : fc4a347bbba68f8927ac3afc85db748ffc03eff1
2017-07-06 14:06:09 +08:00
Connor Brewster
d6b636476c servo: Merge #17505 - Remove unnecessary recv in the constellation (from cbrewster:less_blocking); r=asajeffrey,glennw
<!-- Please describe your changes on the following line: -->

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

Source-Repo: https://github.com/servo/servo
Source-Revision: 82f65f6eb38400affcc8e8bbc9023f345baf3942

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 7bc5b0604156f6622162331e8d4e05ebb01b41e6
2017-07-09 14:39:59 -07:00
Sebastian Hengst
3ee16c27a3 merge mozilla-central to autoland. r=merge a=merge 2017-07-09 23:30:59 +02:00
Sebastian Hengst
ebc180f7d5 Backed out changeset 7cb5f70b086d (bug 1377543) for breaking Android multi-locale builds. r=backout a=backout
MozReview-Commit-ID: 1Ow65BnlErT
2017-07-09 23:29:32 +02:00
ffxbld
b7e531410e No bug, Automated HPKP preload list update from host bld-linux64-spot-308 - a=hpkp-update 2017-07-09 09:02:40 -07:00
ffxbld
74998d2dd7 No bug, Automated HSTS preload list update from host bld-linux64-spot-308 - a=hsts-update 2017-07-09 09:02:37 -07:00
Masatoshi Kimura
56b88afb3b Bug 1379436 - Add some reftests for line-height: calc(). r=xidorn
MozReview-Commit-ID: HMLWU1Wfynp

--HG--
extra : rebase_source : 352673d362b54414b8b2aa9eb262468819ae9bf4
2017-07-09 19:42:39 +09:00
Sebastian Hengst
d00887532b merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: IZdWUL0ee1b
2017-07-09 11:19:35 +02:00
Sebastian Hengst
4d844a1828 merge autoland to mozilla-central. r=merge a=merge
MozReview-Commit-ID: BYX9oaWnQjG
2017-07-09 11:18:17 +02:00
Kartikaya Gupta
540da41b2f Bug 1379394 - Add a pref to allow disabling the one-handed-zoom gesture in APZ. r=botond
MozReview-Commit-ID: LUB83oLyVkm

--HG--
extra : rebase_source : 4fd4b1c4a2069f4dcf8084be33aac1f64e7bd636
2017-07-08 23:04:33 -04:00
Emilio Cobos Álvarez
4358a07aad Bug 1379433: Test. r=heycam
MozReview-Commit-ID: EsDTzjLkqVk

--HG--
extra : rebase_source : 9dd98c3d058fafa993b60d7f15012c1ffedcc0ad
2017-07-09 04:16:20 +02:00
Emilio Cobos Álvarez
d27be80d37 servo: Merge #17644 - stylo: Run the stylehseet invalidation pass also for stylesheet removals (from emilio:invalidation-stylesheet-removals); r=heycam
People apparently do all sorts of silly stuff with stylesheets, see Google Inbox
in bug 1379203.

Bug: 1379433
Reviewed-By: heycam
MozReview-Commit-ID: 4x2d3glOFu8
Source-Repo: https://github.com/servo/servo
Source-Revision: 00e366ac82ee3fe3119ecffc68d895974f33c5e0

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 460637505da4995e4b93e6eac36c81d097d96a5b
2017-07-09 05:18:36 -07:00
ffxbld
4aaa085139 No bug, Automated HPKP preload list update from host bld-linux64-spot-389 - a=hpkp-update 2017-07-08 09:13:56 -07:00
ffxbld
904f22f37f No bug, Automated HSTS preload list update from host bld-linux64-spot-389 - a=hsts-update 2017-07-08 09:13:53 -07:00
Olli Pettay
e0ed9babb5 Bug 1376382, key event handling is asynchronous, try to fix test to be more async too, r=masayuki 2017-07-08 17:23:08 +03:00
Sebastian Hengst
7076377b5e Backed out changeset 4ea831e6e7d1 (bug 1357490) for frequently failing toolkit/components/extensions/test/xpcshell/test_ext_privacy_update.js on Linux x64 asan. r=backout 2017-07-08 11:31:57 +02:00
Sebastian Hengst
e0967cf4de Backed out changeset e017440a55a8 (bug 1357490) 2017-07-08 11:30:47 +02:00
Sebastian Hengst
7d874f78d7 Backed out changeset fa4a2714ae9b (bug 1357486) for frequently failing xpcshell's toolkit/mozapps/extensions/test/xpcshell/test_delay_update_webextension.js on Windows debug. r=backout 2017-07-08 11:24:18 +02:00
Sebastian Hengst
9f5d4e2cf0 Backed out changeset 4e252b1de0d0 (bug 1357486) 2017-07-08 11:23:44 +02:00
Sebastian Hengst
bfb49e4366 Backed out changeset c72d36a91e44 (bug 1357486) 2017-07-08 11:23:40 +02:00
Sebastian Hengst
7cc4391f90 Backed out changeset 0159b012fa2d (bug 1357486) 2017-07-08 11:23:36 +02:00
Sebastian Hengst
8b0a1ec03d Backed out changeset 44ab0cca4956 (bug 1357486) 2017-07-08 11:23:32 +02:00
Sebastian Hengst
a9d690dc5b Backed out changeset 5fba1531fbaf (bug 1357486) 2017-07-08 11:23:28 +02:00
Sebastian Hengst
15b1ddec90 Backed out changeset 7124641a168f (bug 1357486) 2017-07-08 11:23:24 +02:00