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

680108 Коммитов

Автор SHA1 Сообщение Дата
Daniel Varga 7f39a7bfe6 Backed out changeset a3a7133456b4 (bug 1589198) for reftest at layout/reftests/svg/filters/filter-nested-filtering-02.svg. On a CLOSED TREE 2019-11-19 15:51:58 +02:00
Nicolas Chevobbe 790f56fb4a Bug 1595594 - Add support for typed arrays to console.table. r=Honza.
In order to render a table, we first check that console.table is
called with data that can be displayed in a table. Until now, we
were missing all the typed arrays.
This revealed some smaller issues:
- BigInt64Array were not marked as typed arrays on the server.
- Generating the repeatId for a message containing BigInts would
  throw because BigInts can't be serialized.

We add test cases for all the typed array, and we take this opportunity
to add a test case to ensure object insides table cells can be expanded.

Differential Revision: https://phabricator.services.mozilla.com/D53155

--HG--
extra : moz-landing-system : lando
2019-11-19 13:37:07 +00:00
Andy Wingo a237b00450 Bug 1597200 - Fix shuffling of WebAssembly stack results toward FP r=lth
In a sadly similar bogosity as in bug 1595466, the multi-value stack
value shuffling code was confused about "stack height" (distance from
FP), "stack offset" (distance from SP), and whether the bytes to be
copied were towards the FP or the SP.

Differential Revision: https://phabricator.services.mozilla.com/D53660

--HG--
extra : moz-landing-system : lando
2019-11-19 08:20:18 +00:00
Valentin Gosu 9503c7faab Bug 1585106 - Use mutex in PACResolver when accessing mRequest from multiple threads r=michal
Differential Revision: https://phabricator.services.mozilla.com/D52488

--HG--
extra : moz-landing-system : lando
2019-11-18 21:29:07 +00:00
Sebastian Streich fcca3f96b4 Bug 1593969 Refactor nsWindowMemoryReporter.cpp r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D51800

--HG--
extra : moz-landing-system : lando
2019-11-19 13:35:42 +00:00
danwalsh99 41f66d6264 Bug 1590358 - Replace static assertions in browser chrome tests with info(), r=remote-protocol-reviewers,whimboo
Differential Revision: https://phabricator.services.mozilla.com/D53352

--HG--
extra : moz-landing-system : lando
2019-11-19 13:37:34 +00:00
Andreas Tolfsen d79e42a0ef bug 1543115: remote: bootstrap from Rust; r=remote-protocol-reviewers,maja_zf
This bootstraps the remote agent from Rust so that we have access
to write to stderr using the eprintln!() macro.  There is a future
intention to expand Rust usage in the remote agent by delegating
CDP and WebDriver Bi-Di protocol schema validation to serde.

The Rust port is faithful to the JS version in terms of functionality,
and in some places improves on the original design by enforcing
a strict division between flag handling code on one hand, and the
remote agent server on the other.

Differential Revision: https://phabricator.services.mozilla.com/D50289

--HG--
extra : moz-landing-system : lando
2019-11-19 12:33:06 +00:00
Andreas Tolfsen 2cb1328cc1 bug 1543115: remote: expose nsIRemoteAgent as XPCOM service; r=remote-protocol-reviewers,maja_zf,nika
This change makes it possible to access the remote agent service
from C++ and Rust.

Differential Revision: https://phabricator.services.mozilla.com/D50288

--HG--
extra : moz-landing-system : lando
2019-11-19 12:32:51 +00:00
Andreas Tolfsen 24f7b88ad4 bug 1543115: remote: introduce nsIRemoteAgent XPIDL interface; r=remote-protocol-reviewers,maja_zf
Adds an XPIDL interface for the remote agent which we will later use to
initialise and start it from a new command-line handler written in Rust.

Differential Revision: https://phabricator.services.mozilla.com/D50287

--HG--
extra : moz-landing-system : lando
2019-11-19 12:32:48 +00:00
Andreas Tolfsen e02175a9ab bug 1543115: remote: make RemoteAgent.listen() accept strings; r=remote-protocol-reviewers,maja_zf
Crafting nsIURIs in Rust is complicated.  Allow RemoteAgent.listen()
to accept both strings and nsIURIs when called in JavaScript.

Differential Revision: https://phabricator.services.mozilla.com/D50286

--HG--
extra : moz-landing-system : lando
2019-11-19 12:32:46 +00:00
Andreas Tolfsen e29e510bb0 bug 1543115: remote: emit "remote-listening" system notification on startup; r=remote-protocol-reviewers,maja_zf
When calling RemoteAgent.listen() across XPIDL the function is run
asynchronously.  In order to find out when the remote agent has started
listening we introduce a "remote-listening" system observer notification.

Differential Revision: https://phabricator.services.mozilla.com/D50285

--HG--
extra : moz-landing-system : lando
2019-11-19 12:32:44 +00:00
Andreas Tolfsen a293581c87 bug 1543115: remote: set needed prefs earlier at startup; r=remote-protocol-reviewers,maja_zf
Although it currently makes no difference, we should ensure the
required preferences are set sooner, in case any of the internal
remote agent features depend on it.

Because we also cannot control when the nsICommandLineHandler for
the remote agent is invoked, setting it sooner rather than later,
seems a lot safer.

Differential Revision: https://phabricator.services.mozilla.com/D50283

--HG--
extra : moz-landing-system : lando
2019-11-19 12:32:41 +00:00
Andreas Tolfsen a30223fe5e bug 1543115: remote: make RemoteAgent.close() safer; r=remote-protocol-reviewers,maja_zf
close() is meant to be failsafe in the sense that it should be
possible to call without side-effects.

We are currently setting up a lot of state in listen() that is not
cleaned up if the server eventually fails to start.  Calling close()
when this happens will ensure any state listen() has accrued is reset.

Differential Revision: https://phabricator.services.mozilla.com/D50282

--HG--
extra : moz-landing-system : lando
2019-11-19 12:32:39 +00:00
Andreas Tolfsen 17705e0460 bug 1543115: remote: merge init() and listen(); r=remote-protocol-reviewers,maja_zf
Having init() as a separate function leads to inconsistencies about
how the required state is checked.

init() prevents the remote agent from being loaded when the
remote.enabled preference is false or it is attempted loaded into a
child process, but listen() already manipulates state before these
checks are run.  This is probably not the intention, but an easy
mistake to make when the code flow is not crystal clear.

Since we never have a need to call init() independently, this patch
merges init() into listen().

Differential Revision: https://phabricator.services.mozilla.com/D50281

--HG--
extra : moz-landing-system : lando
2019-11-19 12:32:31 +00:00
Andreas Tolfsen 5b844c0aa5 bug 1543115: remote: rename XPCOM manifest for conformity; r=remote-protocol-reviewers,maja_zf
All other XPCOM component manifests are named components.conf and
this makes the remote agent's conform with those.

It will also become apparent in a later patch in this changeset
that we need to register two XPCOM components: one implementing
the remote agent service, and one for handling command-line arguments.

Differential Revision: https://phabricator.services.mozilla.com/D50280

--HG--
rename : remote/RemoteAgent.conf => remote/components.conf
extra : moz-landing-system : lando
2019-11-19 12:32:29 +00:00
Emilio Cobos Álvarez f54a5530a5 Bug 1564873 - Fix straight-forward uses of mem::uninitialized in webrender. r=nical
Differential Revision: https://phabricator.services.mozilla.com/D53359

--HG--
extra : moz-landing-system : lando
2019-11-19 13:03:52 +00:00
Emilio Cobos Álvarez 1ce127f931 Bug 1559076 - Minor debugging improvements. r=heycam
These were useful when implementing forwarding, and forgot to send them
earlier.

Differential Revision: https://phabricator.services.mozilla.com/D53767

--HG--
extra : moz-landing-system : lando
2019-11-19 06:47:12 +00:00
Lars T Hansen d71d5e5381 Bug 1581572 - Allow FuncRef on JS/wasm fast paths. r=rhunt
Generalizes the work on AnyRef to also allow FuncRef values to flow
out to JS through parameters on exits to JS or return values on
entries from JS.  (But not from JS to wasm, because that requires more
elaborate type checking and is something we'll do later.)

Differential Revision: https://phabricator.services.mozilla.com/D50436

--HG--
extra : moz-landing-system : lando
2019-11-19 13:16:54 +00:00
Lars T Hansen b5b1bb53d7 Bug 1581572 - Allow AnyRef on JS/wasm fast paths, part 3. r=rhunt,bbouvier
Handle AnyRef argument passing and returns for the inlined JS->wasm
fast path.

Returns are easy: we unbox the AnyRef in the stub layer in the same
way as for other entries.  Calls are trickier: we must box on the JS
side to fit into the current code structure, so there are some
type-sniffing fast paths to avoid unnecessary allocation and if those
fail then the generated code falls back to calling out to C++ to
create a box for general value boxing.

Differential Revision: https://phabricator.services.mozilla.com/D50031

--HG--
extra : moz-landing-system : lando
2019-11-19 13:16:51 +00:00
Lars T Hansen db6e025118 Bug 1581572 - Allow AnyRef on JS/wasm fast paths, part 2. r=rhunt,bbouvier
An AnyRef is an opaque pointer type to wasm but can hold any JS Value;
the Value is boxed when it enters wasm and unboxed when it enters JS.
This boxing and unboxing must also happen when wasm and JS interact
along the fast ("Jit") path, not just through the slow ("Interpreter")
path.

This patch allows an imported function (an exit) that returns anyref
to have a fast path; the Value that we receive from the import is
boxed into the wasm representation, which means allocating an object
for it if the wasm representation can't accomodate it directly
(currently only object or null).

It also allows an exported function (an entry) that accept an anyref
parameter to have a fast path; the value is similarly boxed in the
stub layer.

This patch does not handle argument passing for the inlined JS->wasm
path; that is handled by a separate patch.

Differential Revision: https://phabricator.services.mozilla.com/D49728

--HG--
extra : moz-landing-system : lando
2019-11-19 13:16:46 +00:00
Lars T Hansen dc1c4f5623 Bug 1581572 - Allow AnyRef on JS/wasm fast paths, part 1. r=rhunt,bbouvier
An AnyRef is an opaque pointer type to wasm but can hold any JS Value;
the Value is boxed when it enters wasm and unboxed when it enters JS.
This boxing and unboxing must also happen when wasm and JS interact
along the fast ("Jit") path, not just through the slow ("Interpreter")
path.

This patch (part 1) handles the AnyRef -> Value cases: when Wasm calls
JS with an AnyRef, or when Wasm returns to JS with an AnyRef, the
AnyRef is unboxed into a Value.

This patch does not handle the return value for the inlined JS->wasm
path; that will be handled separately.

Differential Revision: https://phabricator.services.mozilla.com/D49396

--HG--
extra : moz-landing-system : lando
2019-11-19 13:16:42 +00:00
Lars T Hansen f710e1b26a Bug 1596026 - Do not use imported function if it's not an export. r=rhunt
The proper test for whether ref.func should return an original
imported function for a given function index is a double test: first
whether the index is in the import range, but then whether the
original imported function is itself an exported function.

This double test is visible several places in the code, notably in
Instance::initElems and in GetFunctionExport.  The second part of the
test was however missing from Instance::funcRef.

Differential Revision: https://phabricator.services.mozilla.com/D53004

--HG--
extra : moz-landing-system : lando
2019-11-19 12:47:57 +00:00
Lars T Hansen fafdcab770 Bug 1596026 - FuncRef abstraction + document representation of funcref. r=rhunt
Cleanup patch:

This documents the meaning of a 'funcref' value in wasm code (it is
always a pointer to a JSFunction for which IsWasmExportedFunction is
true) and implements a new abstraction, FuncRef, that can be used to
handle functions with more precision than AnyRef.

FuncRef and AnyRef are representationally compatible, so it is
possible to have common code paths using only AnyRef for convenience,
and to use FuncRef where we wish to be more explicit.

Differential Revision: https://phabricator.services.mozilla.com/D53003

--HG--
extra : moz-landing-system : lando
2019-11-19 12:48:00 +00:00
Dorel Luca b9735a21f4 Backed out changeset d5baee70482a (bug 1597197) for DevTools failures in test/browser/browser_jsterm_no_input_and_tab_key_pressed.js. CLOSED TREE 2019-11-19 14:59:36 +02:00
Dorel Luca ce1cde2a76 Backed out 6 changesets (bug 1581572, bug 1596026) for Spidermonkey failure in js/src/wasm/WasmStubs.cpp. CLOSED TREE
Backed out changeset b50479e36a54 (bug 1581572)
Backed out changeset 4ba83138d78e (bug 1581572)
Backed out changeset b1796f474af4 (bug 1581572)
Backed out changeset f3018975e696 (bug 1581572)
Backed out changeset 3799c836c429 (bug 1596026)
Backed out changeset 90b91dd79951 (bug 1596026)
2019-11-19 14:44:20 +02:00
Luca Greco 4c45a675b0 Bug 1597265 - Explicitly mark abuse report panel buttons as type button. r=mstriemer
Any button inside a form is by spec considered a submit button
(as mentioned here https://www.w3.org/TR/html401/interact/forms.html#h-17.5)
and so, when Enter was pressed while the form was focused, a click event
was being triggered on the first button found inside the form
(and the first button was the hidden close icon button).

Explicitly marking all the report panel buttons as type="button" prevent
the report panel from being wrongly cancelled in these scenarios.

Differential Revision: https://phabricator.services.mozilla.com/D53633

--HG--
extra : moz-landing-system : lando
2019-11-18 21:56:56 +00:00
Lars T Hansen 32b898fb8a Bug 1581572 - Allow FuncRef on JS/wasm fast paths. r=rhunt
Generalizes the work on AnyRef to also allow FuncRef values to flow
out to JS through parameters on exits to JS or return values on
entries from JS.  (But not from JS to wasm, because that requires more
elaborate type checking and is something we'll do later.)

Differential Revision: https://phabricator.services.mozilla.com/D50436

--HG--
extra : moz-landing-system : lando
2019-11-19 08:57:04 +00:00
Lars T Hansen 804d7091d9 Bug 1581572 - Allow AnyRef on JS/wasm fast paths, part 3. r=rhunt,bbouvier
Handle AnyRef argument passing and returns for the inlined JS->wasm
fast path.

Returns are easy: we unbox the AnyRef in the stub layer in the same
way as for other entries.  Calls are trickier: we must box on the JS
side to fit into the current code structure, so there are some
type-sniffing fast paths to avoid unnecessary allocation and if those
fail then the generated code falls back to calling out to C++ to
create a box for general value boxing.

Differential Revision: https://phabricator.services.mozilla.com/D50031

--HG--
extra : moz-landing-system : lando
2019-11-19 08:56:42 +00:00
Lars T Hansen 12eb9ce0ac Bug 1581572 - Allow AnyRef on JS/wasm fast paths, part 2. r=rhunt,bbouvier
An AnyRef is an opaque pointer type to wasm but can hold any JS Value;
the Value is boxed when it enters wasm and unboxed when it enters JS.
This boxing and unboxing must also happen when wasm and JS interact
along the fast ("Jit") path, not just through the slow ("Interpreter")
path.

This patch allows an imported function (an exit) that returns anyref
to have a fast path; the Value that we receive from the import is
boxed into the wasm representation, which means allocating an object
for it if the wasm representation can't accomodate it directly
(currently only object or null).

It also allows an exported function (an entry) that accept an anyref
parameter to have a fast path; the value is similarly boxed in the
stub layer.

This patch does not handle argument passing for the inlined JS->wasm
path; that is handled by a separate patch.

Differential Revision: https://phabricator.services.mozilla.com/D49728

--HG--
extra : moz-landing-system : lando
2019-11-19 08:56:19 +00:00
Lars T Hansen 157f92dff6 Bug 1581572 - Allow AnyRef on JS/wasm fast paths, part 1. r=rhunt,bbouvier
An AnyRef is an opaque pointer type to wasm but can hold any JS Value;
the Value is boxed when it enters wasm and unboxed when it enters JS.
This boxing and unboxing must also happen when wasm and JS interact
along the fast ("Jit") path, not just through the slow ("Interpreter")
path.

This patch (part 1) handles the AnyRef -> Value cases: when Wasm calls
JS with an AnyRef, or when Wasm returns to JS with an AnyRef, the
AnyRef is unboxed into a Value.

This patch does not handle the return value for the inlined JS->wasm
path; that will be handled separately.

Differential Revision: https://phabricator.services.mozilla.com/D49396

--HG--
extra : moz-landing-system : lando
2019-11-19 12:15:26 +00:00
Lars T Hansen 0735a0350b Bug 1596026 - Do not use imported function if it's not an export. r=rhunt
The proper test for whether ref.func should return an original
imported function for a given function index is a double test: first
whether the index is in the import range, but then whether the
original imported function is itself an exported function.

This double test is visible several places in the code, notably in
Instance::initElems and in GetFunctionExport.  The second part of the
test was however missing from Instance::funcRef.

Differential Revision: https://phabricator.services.mozilla.com/D53004

--HG--
extra : moz-landing-system : lando
2019-11-19 12:15:27 +00:00
Lars T Hansen af38e73beb Bug 1596026 - FuncRef abstraction + document representation of funcref. r=rhunt
Cleanup patch:

This documents the meaning of a 'funcref' value in wasm code (it is
always a pointer to a JSFunction for which IsWasmExportedFunction is
true) and implements a new abstraction, FuncRef, that can be used to
handle functions with more precision than AnyRef.

FuncRef and AnyRef are representationally compatible, so it is
possible to have common code paths using only AnyRef for convenience,
and to use FuncRef where we wish to be more explicit.

Differential Revision: https://phabricator.services.mozilla.com/D53003

--HG--
extra : moz-landing-system : lando
2019-11-19 08:55:26 +00:00
Daniel Varga 13d7b74de2 Backed out changeset 1f4bac75290e (bug 1580944) for wpt failures at screen-capture/feature-policy.https.html. On a CLOSED TREE 2019-11-19 14:02:09 +02:00
Andrew Osmond d49f193b91 Bug 1589198 - Snap the picture's precise local rect the same as the estimated local rect. r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D53243

--HG--
extra : moz-landing-system : lando
2019-11-18 15:03:00 +00:00
Logan Smyth 246a24953f Bug 1564180 - Integrate SpiderMonkey docs with |mach doc|. r=jimb
Differential Revision: https://phabricator.services.mozilla.com/D53774

--HG--
rename : js/src/doc/SavedFrame/SavedFrame.md => js/src/doc/SavedFrame/index.md
extra : moz-landing-system : lando
2019-11-19 07:28:10 +00:00
sotaro 5c0c09d6fe Bug 1597619 - Remove RequestsUpdatingEGLSurface() r=nical
Resume() could be used as a timing of creating EGLSurface.

Differential Revision: https://phabricator.services.mozilla.com/D53782

--HG--
extra : moz-landing-system : lando
2019-11-19 10:36:55 +00:00
Emily Toop 64fd791361 Bug 1585661 - Update mach geckoview-docs command to upload markdown as well as javadoc. r=agi
Slightly reorganize file structure to make copying files over easier. Needs to land in conjunction with https://github.com/mozilla/geckoview/pull/94, which should land first.

Differential Revision: https://phabricator.services.mozilla.com/D48564

--HG--
rename : mobile/android/docs/geckoview/Gemfile => mobile/android/docs/Gemfile
rename : mobile/android/docs/geckoview/_config.yml => mobile/android/docs/_config.yml
extra : moz-landing-system : lando
2019-11-14 15:53:53 +00:00
Yaron Tausky a763b02585 Bug 1582948 - Fix race condition in session storage test r=asuth
The inner iframe sends a message M to the outer iframe when it
finishes loading, with the intention that the outer iframe will
send the message further to the top-level page. If, however, the
outer iframe's load handler didn't fire yet when it processes M,
it will throw an exception instead of forwarding M. This causes M
to get lost, and the test hangs.

Differential Revision: https://phabricator.services.mozilla.com/D53625

--HG--
extra : moz-landing-system : lando
2019-11-18 21:12:19 +00:00
Alex Chronopoulos a4d3d9d945 Bug 1596065 - Hide database enumeration option in about:support if the pref is off. r=chunmin
Wrap around the pref `media.mediacapabilities.from-database` the option to enumerate MediaCapabilities database in `about:support` page. When the pref is off the button disappears and the enumeration method returns early.

Differential Revision: https://phabricator.services.mozilla.com/D53008

--HG--
extra : moz-landing-system : lando
2019-11-19 01:45:04 +00:00
Nicolas Chevobbe 14ded0304c Bug 1597197 - Add a feature-callout badge on the open editor icon. r=Honza.
Differential Revision: https://phabricator.services.mozilla.com/D53394

--HG--
extra : moz-landing-system : lando
2019-11-19 09:27:58 +00:00
Francesco Lodolo (:flod) dc85008749 Bug 1597573 - Add trs to availableLocaleDisplayNames in mozIntl.jsm r=Pike
Differential Revision: https://phabricator.services.mozilla.com/D53781

--HG--
extra : moz-landing-system : lando
2019-11-19 08:01:18 +00:00
Makoto Kato d1e9c700c9 Bug 1596645 - Support ./mach bootstrap for non-atrifact build of GeckoView on mozilla-build. r=froydnj
Now since we use unicode_literals by bug 1210157, mercurial version check will be error due to `TypeError: environment can only contain strings`.
So we don't use unicode for os.environment['PATH'] when appending Java path.

Differential Revision: https://phabricator.services.mozilla.com/D53139

--HG--
extra : moz-landing-system : lando
2019-11-18 19:30:14 +00:00
Jan-Ivar Bruaroey c4dad3fc64 Bug 1580944 - Require user gesture for getDisplayMedia(). r=pehrsons,tnguyen,ng
Differential Revision: https://phabricator.services.mozilla.com/D53091

--HG--
extra : moz-landing-system : lando
2019-11-18 23:20:13 +00:00
Jeff Walden 6787a82def Bug 1596544 - intl_ValidateAndCanonicalizeUnicodeExtensionType should ignore the second |option| argument until it's needed to report an error. r=anba
Differential Revision: https://phabricator.services.mozilla.com/D53145

--HG--
extra : moz-landing-system : lando
2019-11-19 04:55:39 +00:00
Karl Tomlinson 5e9ea2e150 bug 1592781 auto-finish TaskRunner Tasks created from async functions r=jgraham
Differential Revision: https://phabricator.services.mozilla.com/D51567

--HG--
extra : moz-landing-system : lando
2019-11-07 00:47:33 +00:00
Karl Tomlinson aa7c37f28d Bug 1592781 assert that task.done() is called once only r=jgraham
Depends on D51565

Differential Revision: https://phabricator.services.mozilla.com/D51566

--HG--
extra : moz-landing-system : lando
2019-11-07 00:47:33 +00:00
Karl Tomlinson cf433e8cef Bug 1592781 use existing promise test instead of separate subtest for step_timeout() r=jgraham
Depends on D51564

Differential Revision: https://phabricator.services.mozilla.com/D51565

--HG--
extra : moz-landing-system : lando
2019-11-07 00:47:33 +00:00
Karl Tomlinson f1d05faa5d Bug 1592781 catch unhandled rejections in async TaskRunner Tasks r=jgraham
Unhandled rejections are then reported against the appropriate subtest.

Differential Revision: https://phabricator.services.mozilla.com/D51564

--HG--
extra : moz-landing-system : lando
2019-11-07 00:47:33 +00:00
Karl Tomlinson eda3c9d04d Bug 1592781 use promise_test() to schedule TaskRunner Tasks r=jgraham
promise_test() provides that a subtest is generated for each Task and run even
when an exception is thrown while running a previous Task.

This change also provides that Tasks that do not complete are reported
TIMEOUT, andTasks that are not reached due to TIMEOUT in a previous test
are reported NOTRUN.

The previous logic in Task.run() to generate a subtest for reporting a PASS
after calling _taskFunction() had a flaw that calls to done() during
_taskFunction() would synchronously call _testharnessDone() before the subtest
was generated.

Differential Revision: https://phabricator.services.mozilla.com/D51563

--HG--
extra : moz-landing-system : lando
2019-11-13 02:16:07 +00:00
Bogdan Tara de1f6c0c3c Backed out changeset 4d11ccc12529 (bug 1410412) on mixedpuppy's request 2019-11-19 06:01:46 +02:00