Also remove exception handling at call site in Android components - no need to catch exceptions for method that no longer throws.
Differential Revision: https://phabricator.services.mozilla.com/D206488
Thunderbird uses nsITLSSocketControl.startTLS to drive the XMPP
connection, but since we started enforcing proper thread safety in
bug 1847260, it's asserting when called on the main thread.
This patch marks StartTLS and proxyStartTLS as [noscript] and adds
asyncStartTLS. This new method dispatches a runnable to the socket thread
to call startTLS, then resolves (or rejects with the nsresult as an arg)
on the main thread.
Differential Revision: https://phabricator.services.mozilla.com/D207692
WorkerRunnable no longer keeps a raw pointer(mWorkerPrivate) for the associated WorkerPrivate in this patch.
Removing the WorkerRunnable::mWorkerPrivate needs to fix the following problems.
1. Thread assertions in WorkerRunnable::Dispatch()
To fix this problem, the associated WorkerPrivate is as a parameter and passed to WorkerRunnable::Dispatch() for the dispatching thread assertions. This associated WorkerPrivate is also propagated to PreDispatch() and PostDispatch() for the children classes of WorkerRunnable()
2. Get the associated WorkerPrivate in WorkerRunnable::Run() for environment setup(GlobabObject, JSContext setting for the runnable)
- For WorkerThreadRunnable
Since WorkerThreadRunnable is supposed to run on the worker thread, it does not need to keep a raw pointer to WorkerPrivate as its class member. GetCurrentThreadWorkerPrivate() should always get the correct WorkerPrivate for WorkerThreadRunnable.
- For WorkerParentThreadRunnable
WorkerParentRef is introduced to keep a RefPtr<WorkerPrivate> for WorkerParentThreadRunnable instead of using a raw pointer.
Checking the associated WorkerPrivate existence by WorkerParentRef at the beginning of WorkerParentThreadRunnable::Run(). If the Worker has already shut down, WorkerParentThreadRunnable cannot do anything with the associated WorkerPrivate, so WorkerParentThreadRunnable::Run() will return NS_OK directly but with a warning.
The associated WorkerPrivate is also passed into WorkerRun(), PreRun(), and PostRun(), so the majority of implementations of child classes of WorkerRunnable do not need to be changed.
If there are any cases in which the child classes of WorkerThreadRunnable/WorkerParentThreadRunnable want to keep the associated WorkerPrivate, they should use WorkerRefs instead of raw pointers.
Depends on D205679
Differential Revision: https://phabricator.services.mozilla.com/D207039
In this patch, WorkerParentThreadRunnable is extracted from WorkerThreadRunnable for runnable on the parent thread.
WorkerParentControlRunnable and WorkerParentDebuggeeRunnable are also created for control runnable and debuggee runnable on the parent thread.
Instead of using WorkerRunnable::Target to indicate the thread target, inheriting WorkerThreadRunnable or WorkerParentThreadRunnable to point out that this runnable should run on the worker thread or on the parent thread. So WorkerRunnable::Target is removed in this patch.
This patch also move the dispatching logic into WorkerPrivate to simplify WorkerRunnable::DispatchInternal()'s implementation.
Depends on D205178
Differential Revision: https://phabricator.services.mozilla.com/D205679
This is the first step in splitting the parent thread runnable out of WorkerRunnable.
To reuse the runnable dispatching codes in Worker, we still need a base class for runnable on the worker thread and the parent thread.
In this patch, we rename the original WorkerRunnable to WorkerThreadRunnable and make WorkerRunnable to be WorkerThreadRunnable's parent class.
In the second patch, we will create WorkerParentThreadRunnable and its sub-classes, split from WorkerThreadRunnable for runnable on the Worker's parent thread.
And in the third patch, we will re-structure the content of WorkerParentThreadRunnable to remove unnecessary members.
Differential Revision: https://phabricator.services.mozilla.com/D205178
- Rename ColorParser to ComponentParser.
- Move origin color parsing to parse_color_function.
- Inline the parse_components function.
Differential Revision: https://phabricator.services.mozilla.com/D207836
@file are supported by gcc since gcc 7 and by clang since clang 3.x,
which removes the need for linker script to list input files.
We cannot directly use @file from the compiler driver (it would expand
to a large number of arguments and hit the linker limit) so pass
-Wl,@FILE instead, which is supported since binutils 2.17.
As a side effect this removes the LTO dependency from the check.
Differential Revision: https://phabricator.services.mozilla.com/D207839
Automatic update from web-platform-tests
Change self to 'self' in CSP frame-ancestor test (#45640)
--
wpt-commits: 10bcb6d35b5a9e9edf958f9ef1e14897f3710709
wpt-pr: 45640
Automatic update from web-platform-tests
[line-clamp] Make `line-clamp` create a new BFC
Although `-webkit-line-clamp` has always created an independent
formatting context, our prototype implementation of `line-clamp`
initially made it so the `line-clamp` property (but not
`-webkit-line-clamp`) didn't necessarily create one.
However, in the course of implementing this proposal, the fact that it
did not necessarily create a new BFC raised issues, such as how nested
line-clamps should work, or how floats inside a line-clamp container
should affect floats outside it. These problems go away by having
line-clamp create a new BFC, and this CL takes that route.
This patch also removes
`BlockLineClampData::is_original_line_clamp_context`, which was needed
to be able to distinguish whether `(-webkit-)line-clamp` was specified
on the current block element, or whether it inherited its line clamp
data from its parent. With this change, checking if the current block
is a new BFC is enough.
Bug: 40336192
Change-Id: I8a16ec18ce1653caaf1c7d06280a2a7e4604a946
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5453431
Commit-Queue: Andreu Botella <abotella@igalia.com>
Reviewed-by: Morten Stenshorne <mstensho@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1287280}
--
wpt-commits: 85681c669ff292c3c55bd088bf13fd0cc038d7bd
wpt-pr: 45709
Automatic update from web-platform-tests
Add test for external script hashes in content-security-policy/script-src/script-src-strict_dynamic_hashes (#44769)
* Add test for external script hashes in strict-dynamic
* Use sync test
--
wpt-commits: 947b3ebca48d50d9efffc4e196e61d146e983d86
wpt-pr: 44769
Automatic update from web-platform-tests
[anchor] Implement CSSPositionTryDescriptors
CSSPositionTryDescriptors is a CSSStyleDeclaration which restricts
which properties are valid, which is a new concept in Blink.
This CL implements this by:
- Adding a new parsing mode which is stored on the CSSPropertyValueSet
within the rule. This ensures that we can't smuggle in invalid
properties using cssText.
- Filtering properties during setProperty. This ensures that e.g.
setProperty('color', ...) doesn't work.
Somehow, CSSPositionTryDescriptor is not inheriting the anonymous
named getter/setter from the parent, which is actually what we want
here. (If this is a bug or something and is changed later, the WPT will
fail).
The indexed property getter also doesn't seem to work. This is not
covered by the tests currently. The problem is tracked by
Issue 333965945.
Change-Id: I5fa1b600ed50633a9eb9aa8cfeb43726d64ecf90
Bug: 333967631, 333965945
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5447110
Reviewed-by: Rune Lillesveen <futhark@chromium.org>
Reviewed-by: Philip Jägenstedt <foolip@chromium.org>
Commit-Queue: Anders Hartvoll Ruud <andruud@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1287213}
--
wpt-commits: 9fcc5e1b74b4eec90b2dd05c8f06fb2346651f43
wpt-pr: 45683
Automatic update from web-platform-tests
Await web font loading in css-scoping tests
Some tests did not pass because the web font did not finish loading
before the rendered widths were checked. Await document.fonts.ready to
make the tests predictable.
Bug: 333457515
Change-Id: I830cc11b4ba7a4c8a5579777712085cb3f7e5a1e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5447137
Commit-Queue: Rune Lillesveen <futhark@chromium.org>
Reviewed-by: Munira Tursunova <moonira@google.com>
Cr-Commit-Position: refs/heads/main@{#1287178}
--
wpt-commits: 6eb4b61b016f28234bd31d90d8e4e7ca2037375a
wpt-pr: 45684
Automatic update from web-platform-tests
Deflake compression-dictionary WPT
WPT tests for compression-dictionary are flaky on some bots. There are
two reasons:
1. Installing a dictionary is slow. This requires disk cache access
and SQLite DB access.
2. Handling Clear-Cache is slow. All tests of Compression dictionary
are clearing caches using Clear-Cache HTTP header after running
tests.
To resolve the flakiness, this CL increases the timeout for checking
available dictionaries, and sets a longer timeout for all tests.
Also this CL splits the tests of Clear-Cache into three files.
Bug: 333916144
Change-Id: I9e41083db599ae2f06f51bfe1abac4aba0a6d472
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5445912
Reviewed-by: Patrick Meenan <pmeenan@chromium.org>
Commit-Queue: Tsuyoshi Horo <horo@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1287111}
--
wpt-commits: 73b5c2474612889749dfa8f8db0645c07694e9fb
wpt-pr: 45674
Automatic update from web-platform-tests
compute pressure: Add web test for multiple calls to PressureObserver.observe()
The buggy behavior described in issue 333957909 has been fixed by
https://crrev.com/c/5384658 but we want to make sure this does not
happen again.
Bug: 333957909
Change-Id: Ia1ac67b534eeca3bb3cc1c7832e8df07d3e7847e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5447142
Auto-Submit: Raphael Kubo Da Costa <raphael.kubo.da.costa@intel.com>
Reviewed-by: Reilly Grant <reillyg@chromium.org>
Commit-Queue: Reilly Grant <reillyg@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1286881}
--
wpt-commits: dce39b08c51964db0677e1ce1c5c03b658952297
wpt-pr: 45689
Automatic update from web-platform-tests
Add WPT tests validating layers with transforms
If the canvas has a global shadow, the transform must not be applied on
the shadow filter. This currently doesn't work in Blink for layers: the
transform affects the shadow of the layer.
Bug: 40257559
Change-Id: Ib765073660b1c2b70cf8934603ab124cef4fdca9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5434678
Reviewed-by: Yi Xu <yiyix@chromium.org>
Commit-Queue: Jean-Philippe Gravel <jpgravel@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1286817}
--
wpt-commits: 44a19cee8dc1860c4bfff0070f4061b27976a7c3
wpt-pr: 45691
Automatic update from web-platform-tests
[anchor-pos] Adjust the scroll offsets by the inset area offsets.
Previously the scroll offsets were set up ignoring inset-area, (and
other insets potentially - but that is for a followup).
Adjust the scroll offset by the inset-area if present.
Bug: 333614330
Change-Id: I37e9910f38c81a22b97deba1ac0a171fc5432090
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5448340
Reviewed-by: Mason Freed <masonf@chromium.org>
Commit-Queue: Ian Kilpatrick <ikilpatrick@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1286853}
--
wpt-commits: 60e96d833f5ca63f4ba0da8f3bf07e835b94aec2
wpt-pr: 45693
Automatic update from web-platform-tests
Introduce PointerEvent.deviceProperties
This change replaces deviceId on the PointerEvent interface with a new interface, deviceProperties. DeviceProperties contains one member, uniqueId, which functionally behaves the same as the outgoing deviceId.
Spec: https://github.com/w3c/pointerevents/pull/495
Bug: 330760871
Change-Id: I0f1a9f7d5589f790d94f498a38bfdf55b6f51073
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5388651
Reviewed-by: Robert Flack <flackr@chromium.org>
Commit-Queue: Sahir Vellani <sahir.vellani@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#1286827}
--
wpt-commits: 4013b5285c0977d16542695ae2ed47184730f331
wpt-pr: 45420
Automatic update from web-platform-tests
Short-circuit interpolation calculation for a static-valued property
With the exception of cross-fade interpolations, we can sample a single
keyframe and use its value throughout the animation if the property
is constant-valued. For an animation of the background property that
only explicitly sets the background color, we can short-circuit the
work when applying the animation effect for all of the implicitly set
properties.
Bug: 333861763
Change-Id: Id5634a2656b5e739a91d9593a3ff7c5bb58a85b3
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5426601
Commit-Queue: Kevin Ellis <kevers@chromium.org>
Reviewed-by: Robert Flack <flackr@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1286714}
--
wpt-commits: 066959a2f2e30a073beea8b71d3bde62c9d058e3
wpt-pr: 45612