Timeline
Jul 15, 2018:
- 11:43 PM Changeset in webkit [233843] by
-
- 3 edits in trunk/Tools
[webkitpy] run-web-platform-tests should allow specifying custom WPT metadata directories
https://bugs.webkit.org/show_bug.cgi?id=187353
Reviewed by Youenn Fablet.
When using run-web-platform-tests, allow specifying custom WPT metadata
directory. This will avoid generating such metadata-filled directory
from the port-specific JSON expectations file, and instead will search
for the metadata files and the include manifest inside the specified
directory. The MANIFEST.json file will also be generated under there.
Rationale for this change is prototyping using custom metadata
directories and avoiding generating all this content from a JSON file.
Using this by default in the future would avoid sporradic changes in how
WPT handles metadata .ini files and releases us from the obligation of
adjusting the generator for every such change. This would also allow
managing this metadata content in a separate repository, avoiding
polluting the main webkit.org repository with thousands of .ini files.
If this turns out to be the preferable way of managing the metadata
content, the JSON files under WebPlatformTests/ and the related code in
wpt_runner.py would be removed.
- Scripts/webkitpy/w3c/wpt_runner.py:
(parse_args):
(WPTRunner._wpt_run_paths):
(WPTRunner.run):
- Scripts/webkitpy/w3c/wpt_runner_unittest.py:
(WPTRunnerTest.test_run_with_specified_options):
- 10:22 PM Changeset in webkit [233842] by
-
- 4 edits in trunk/Source/WebKit
[SOUP] http/tests/misc/bubble-drag-events.html crashes
https://bugs.webkit.org/show_bug.cgi?id=182352
Reviewed by Youenn Fablet.
PingLoad is not refcounted and deletes itself when the load finishes. The problem is that the network data
task can also finish the load, causing the PingLoad to be deleted early. We tried to fix it in r233032 in the
network data task soup implementation, but it caused regressions.
- NetworkProcess/PingLoad.cpp:
(WebKit::PingLoad::didReceiveChallenge): Create a weak ref for the ping load before calling the operation completion
handler and return early after the completion handler if it was deleted.
(WebKit::PingLoad::didReceiveResponseNetworkSession): Ditto.
- NetworkProcess/PingLoad.h:
- NetworkProcess/soup/NetworkDataTaskSoup.cpp:
(WebKit::NetworkDataTaskSoup::continueAuthenticate): Revert r233032.
- 10:19 PM Changeset in webkit [233841] by
-
- 2 edits in trunk/Source/WebCore
[iOS apps on macOS] Playing embedded Twitter videos in the News app crashes the web process
https://bugs.webkit.org/show_bug.cgi?id=187690
<rdar://problem/41869703>
Reviewed by Tim Horton.
Work around unexpected behavior when soft-linking AVFoundation. After using
dlopen_preflightto check for the
existence of a library prior to loading the library usingdlopen,dlsymsubsequently returns null for some
symbols that would otherwise be available. This causes us to RELEASE_ASSERT later down the road when we try to
load AVAudioSessionModeDefault in AudioSessionIOS.mm.
To fix this for now, simply check for the library directly instead of using the more lightweight preflight
check. See clone: <rdar://problem/42224780> for more detail.
- platform/graphics/avfoundation/objc/AVFoundationMIMETypeCache.mm:
(WebCore::AVFoundationMIMETypeCache::isAvailable const):
Jul 14, 2018:
- 9:26 PM Changeset in webkit [233840] by
-
- 3 edits in trunk/Source/WebCore
Shrink StyleFillData, StyleStrokeData and StyleMiscData
https://bugs.webkit.org/show_bug.cgi?id=187681
Reviewed by Anders Carlsson.
Shrink these data structures by making more enum classes one byte in size, and
re-ordering. StyleFillData goes from 56 to 48, StyleStrokeData from 80 to 72,
StyleMiscData from 40 to 32 bytes.
- rendering/style/SVGRenderStyleDefs.cpp:
(WebCore::StyleFillData::StyleFillData):
(WebCore::StyleFillData::operator== const):
(WebCore::StyleStrokeData::StyleStrokeData):
(WebCore::StyleStrokeData::operator== const):
(WebCore::StyleStopData::operator== const):
(WebCore::StyleMiscData::StyleMiscData):
- rendering/style/SVGRenderStyleDefs.h:
- 7:13 PM Changeset in webkit [233839] by
-
- 11 edits in trunk/Source/WebCore
Shrink CachedResource and subclasses
https://bugs.webkit.org/show_bug.cgi?id=187546
Reviewed by Daniel Bates.
Shrink CachedResource down from 1384 to 1336 bytes, CachedImage from 1480 to
1424 bytes, and CachedFont a little.
This saves about 23KB on cnn.com.
- loader/ResourceLoaderOptions.h:
- loader/cache/CachedFont.h:
- loader/cache/CachedImage.h:
- loader/cache/CachedResource.cpp:
(WebCore::CachedResource::CachedResource):
- loader/cache/CachedResource.h:
- platform/network/CacheValidation.h:
(WebCore::RedirectChainCacheStatus::RedirectChainCacheStatus):
- platform/network/NetworkLoadMetrics.h:
- platform/network/ParsedContentRange.h:
- platform/network/ResourceRequestBase.h:
- platform/network/ResourceResponseBase.h:
- 5:29 PM Changeset in webkit [233838] by
-
- 11 edits in trunk/Source/WebCore
Shrink some style-related classes and enums
https://bugs.webkit.org/show_bug.cgi?id=187680
Reviewed by Antti Koivisto.
Make all the enum classes in RenderStyleConstants be one byte big (all have less
than 256 values).
Shrink DocumentRuleSet from 384 to 368 bytes by re-ordering, which also helps shrink
StyleResolver from 1024 to 952 bytes.
Shrink BorderValue by re-ordering (now that the layout of Color has changed) which
shrinks BorderData from 168 to 136 bytes.
Convert a couple of other enums to enum class so that they can have explicit size.
- css/DocumentRuleSets.h:
- css/MediaQueryMatcher.cpp:
(WebCore::MediaQueryMatcher::documentElementUserAgentStyle const):
- css/StyleMedia.cpp:
(WebCore::StyleMedia::matchMedium const):
- css/StyleResolver.cpp:
(WebCore::StyleResolver::StyleResolver):
(WebCore::StyleResolver::State::State):
(WebCore::StyleResolver::styleForElement):
(WebCore::StyleResolver::cascadedPropertiesForRollback):
(WebCore::StyleResolver::applyProperty):
(WebCore::cascadeLevelForIndex):
- css/StyleResolver.h:
- rendering/style/BorderValue.h:
- rendering/style/RenderStyle.cpp:
- rendering/style/RenderStyleConstants.h:
- style/StyleTreeResolver.cpp:
(WebCore::Style::TreeResolver::styleForElement):
- svg/SVGElementRareData.h:
(WebCore::SVGElementRareData::overrideComputedStyle):
- 4:44 PM Changeset in webkit [233837] by
-
- 14 edits in trunk/Source
Ensure WebKit stack is ad-hoc signed
https://bugs.webkit.org/show_bug.cgi?id=187667
Patch by Kocsen Chung <Kocsen Chung> on 2018-07-14
Reviewed by Alexey Proskuryakov.
- Configurations/Base.xcconfig:
- 9:59 AM Changeset in webkit [233836] by
-
- 2 edits in trunk/Source/WTF
Replace TR2_OPTIONAL_ASSERTED_EXPRESSION macro in <wtf/Optional.h>
<https://webkit.org/b/187672>
Reviewed by Frédéric Wang.
- wtf/Optional.h:
(std::optional::operator -> const):
(std::optional::operator * const):
(std::optional<T::operator-> const):
(std::optional<T::operator* const):
- Replace TR2_OPTIONAL_ASSERTED_EXPRESSION macro with ASSERT_UNDER_CONSTEXPR_CONTEXT macro and return statement.
- 2:19 AM Changeset in webkit [233835] by
-
- 7 edits12 adds in trunk
[css-masking] Fully support -webkit-clip-path on SVG elements
https://bugs.webkit.org/show_bug.cgi?id=185829
Reviewed by Simon Fraser.
Source/WebCore:
-webkit-clip-path contributes to SVG elements with boxes, shapes and now with
element references to <clipPath> elements as well. Make sure that all types
contribute to hit-testing of the SVG element as well as they should.
Tests: svg/clip-path/webkit-clip-path-after-expected.svg
svg/clip-path/webkit-clip-path-after.svg
svg/clip-path/webkit-clip-path-before-expected.svg
svg/clip-path/webkit-clip-path-before.svg
svg/dynamic-updates/SVGClipPath-prefixed-influences-hitTesting.html
svg/dynamic-updates/SVGClipPath-prefixed-path-influences-hitTesting.html
svg/dynamic-updates/SVGClipPathElement-prefixed-css-transform-influences-hitTesting.html
svg/dynamic-updates/SVGClipPathElement-prefixed-transform-influences-hitTesting.html
- rendering/svg/SVGRenderSupport.cpp: Share code as much as possible.
(WebCore::clipPathReferenceBox):
(WebCore::isPointInCSSClippingArea): Take -webkit-clip-path into account.
(WebCore::SVGRenderSupport::clipContextToCSSClippingArea):
(WebCore::SVGRenderSupport::pointInClippingArea):
- rendering/svg/SVGRenderSupport.h:
- rendering/svg/SVGRenderingContext.cpp: Clip to -webkit-clip-path boxes, shapes and references.
(WebCore::SVGRenderingContext::prepareToRenderSVGContent):
- rendering/svg/SVGResources.cpp: Add -webkit-clip-path references to cached resources. Mimic SVG clip-path.
(WebCore::SVGResources::buildCachedResources):
LayoutTests:
Test -webkit-clip-path element references on SVG elements. Make sure, -webkit-clip-path
contributes to hit testing for element references and basic shapes.
- svg/clip-path/webkit-clip-path-after-expected.svg: Added.
- svg/clip-path/webkit-clip-path-after.svg: Added.
- svg/clip-path/webkit-clip-path-before-expected.svg: Added.
- svg/clip-path/webkit-clip-path-before.svg: Added.
- svg/dynamic-updates/SVGClipPath-prefixed-influences-hitTesting-expected.txt: Added.
- svg/dynamic-updates/SVGClipPath-prefixed-influences-hitTesting.html: Added.
- svg/dynamic-updates/SVGClipPath-prefixed-path-influences-hitTesting-expected.txt: Added.
- svg/dynamic-updates/SVGClipPath-prefixed-path-influences-hitTesting.html: Added.
- svg/dynamic-updates/SVGClipPathElement-prefixed-css-transform-influences-hitTesting-expected.txt: Added.
- svg/dynamic-updates/SVGClipPathElement-prefixed-css-transform-influences-hitTesting.html: Added.
- svg/dynamic-updates/SVGClipPathElement-prefixed-transform-influences-hitTesting-expected.txt: Added.
- svg/dynamic-updates/SVGClipPathElement-prefixed-transform-influences-hitTesting.html: Added.