⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Timeline



Sep 2, 2018:

8:41 PM Changeset in webkit [235590] by Alan Bujtas
  • 3 edits
    2 adds in trunk

REGRESSION (r191336): RenderFlexibleBox::adjustChildSizeForMinAndMax crashes in std::optional<>::value()
https://bugs.webkit.org/show_bug.cgi?id=189232
<rdar://problem/43886373>

Reviewed by Brent Fulgham.

Source/WebCore:

It's not guaranteed that RenderFlexibleBox::computeMainAxisExtentForChild() always returns with a valid value.

Test: fast/flexbox/crash-when-min-max-content-is-not-computed.html

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::adjustChildSizeForMinAndMax):

LayoutTests:

  • fast/flexbox/crash-when-min-max-content-is-not-computed-expected.txt: Added.
  • fast/flexbox/crash-when-min-max-content-is-not-computed.html: Added.
9:41 AM Changeset in webkit [235589] by yusukesuzuki@slowstart.org
  • 7 edits
    1 add in trunk

Implement Object.fromEntries
https://bugs.webkit.org/show_bug.cgi?id=188481

Reviewed by Darin Adler.

JSTests:

  • stress/object-from-entries.js: Added.

(shouldBe):
(shouldThrow):
(shouldBe.JSON.stringify.Object.getOwnPropertyDescriptor):
(shouldBe.set get shouldThrow):

Source/JavaScriptCore:

Object.fromEntries becomes stage 3[1]. This patch implements it by using builtin JS.

[1]: https://tc39.github.io/proposal-object-from-entries/

  • builtins/ObjectConstructor.js:

(fromEntries):

  • runtime/ObjectConstructor.cpp:

LayoutTests:

  • js/Object-getOwnPropertyNames-expected.txt:
  • js/script-tests/Object-getOwnPropertyNames.js:
7:25 AM WebKitGTK/2.22.x edited by Michael Catanzaro
(diff)
7:24 AM WebKitGTK/2.22.x edited by berto@igalia.com
(diff)

Sep 1, 2018:

10:35 PM Changeset in webkit [235588] by Michael Catanzaro
  • 2 edits in trunk/Tools

[WPE] 2.21.91 fails to build with ENABLE_MINIBROWSER
https://bugs.webkit.org/show_bug.cgi?id=189006

Reviewed by Darin Adler.

The MiniBrowser source code is missing from the tarball. Oops! Add it.

  • wpe/manifest.txt.in:
10:33 PM Changeset in webkit [235587] by yoshiaki.jitsukawa@sony.com
  • 6 edits
    3 adds in trunk

[WinCairo] Add CryptoDigestOpenSSL
https://bugs.webkit.org/show_bug.cgi?id=188978

Reviewed by Darin Adler.

Source/WebCore/PAL:

Add a CryptoDigest implementation with OpenSSL/LibreSSL and let the
WinCairo port use it.

  • pal/PlatformAppleWin.cmake: Add CryptoDigestWin.cpp to PAL_SOURCES
  • pal/PlatformWin.cmake: Remove CryptoDigestWin.cpp from PAL_SOURCES
  • pal/PlatformWinCairo.cmake: Add CryptoDigestOpenSSL to PAL_SOURCES
  • pal/crypto/openssl/CryptoDigestOpenSSL.cpp: Added.

(PAL::toSHA1Context):
(PAL::toSHA224Context):
(PAL::toSHA256Context):
(PAL::toSHA384Context):
(PAL::toSHA512Context):
(PAL::CryptoDigest::CryptoDigest):
(PAL::CryptoDigest::~CryptoDigest):
(PAL::CryptoDigest::create):
(PAL::CryptoDigest::addBytes):
(PAL::CryptoDigest::computeHash):

Tools:

Add API tests for the PAL::CryptoDigest class.

  • TestWebKitAPI/PlatformWin.cmake:

Add CryptoDigest.cpp to TestWebCoreLib_Sources.

Define -DSTATICALLY_LINKED_WITH_PAL=1 to avoid warnings since
without the definition the functions marked with PAL_EXPORT are supposed to be
imported from another shared library, but as it is, TestWebCoreLib
links PAL statically.

  • TestWebKitAPI/Tests/WebCore/CryptoDigest.cpp: Added.

(TestWebKitAPI::toHex):
(TestWebKitAPI::expect):
(TestWebKitAPI::expectSHA1):
(TestWebKitAPI::expectSHA224):
(TestWebKitAPI::expectSHA256):
(TestWebKitAPI::expectSHA384):
(TestWebKitAPI::expectSHA512):
(TestWebKitAPI::TEST):

8:04 PM Changeset in webkit [235586] by Simon Fraser
  • 17 edits
    2 copies in trunk/Source/WebCore

Rename FilterEffectRenderer to CSSFilter
https://bugs.webkit.org/show_bug.cgi?id=189223

Reviewed by Sam Weinig.

Filter was subclassed by SVGFilter for SVG, and FilterEffectRenderer for CSS,
which was very confusing, especially when the code uses renderer() to get it.

Rename FilterEffectRenderer to CSSFilter, and access via filter().

Future cleanup will deal with FilterEffectRendererHelper.

  • Sources.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSFilterImageValue.cpp:

(WebCore::CSSFilterImageValue::image):

  • platform/graphics/ca/cocoa/PlatformCAFiltersCocoa.mm:
  • platform/graphics/filters/Filter.h:

(WebCore::Filter::isCSSFilter const):

  • rendering/CSSFilter.cpp: Copied from Source/WebCore/rendering/FilterEffectRenderer.cpp.

(WebCore::endMatrixRow):
(WebCore::lastMatrixRow):
(WebCore::CSSFilter::create):
(WebCore::CSSFilter::CSSFilter):
(WebCore::m_sourceGraphic):
(WebCore::CSSFilter::inputContext):
(WebCore::CSSFilter::buildReferenceFilter):
(WebCore::CSSFilter::build):
(WebCore::CSSFilter::updateBackingStoreRect):
(WebCore::CSSFilter::allocateBackingStoreIfNeeded):
(WebCore::CSSFilter::clearIntermediateResults):
(WebCore::CSSFilter::apply):
(WebCore::CSSFilter::computeSourceImageRectForDirtyRect):
(WebCore::CSSFilter::output const):
(WebCore::CSSFilter::setSourceImageRect):
(WebCore::CSSFilter::setMaxEffectRects):
(WebCore::CSSFilter::outputRect const):

  • rendering/CSSFilter.h: Copied from Source/WebCore/rendering/FilterEffectRenderer.h.

(isType):

  • rendering/FilterEffectRenderer.cpp:

(WebCore::FilterEffectRendererHelper::prepareFilterEffect):
(WebCore::FilterEffectRendererHelper::filterContext const):
(WebCore::FilterEffectRendererHelper::beginFilterEffect):
(WebCore::FilterEffectRendererHelper::applyFilterEffect):
(WebCore::endMatrixRow): Deleted.
(WebCore::lastMatrixRow): Deleted.
(WebCore::FilterEffectRenderer::FilterEffectRenderer): Deleted.
(WebCore::m_sourceGraphic): Deleted.
(WebCore::FilterEffectRenderer::create): Deleted.
(WebCore::FilterEffectRenderer::inputContext): Deleted.
(WebCore::FilterEffectRenderer::buildReferenceFilter): Deleted.
(WebCore::FilterEffectRenderer::build): Deleted.
(WebCore::FilterEffectRenderer::updateBackingStoreRect): Deleted.
(WebCore::FilterEffectRenderer::allocateBackingStoreIfNeeded): Deleted.
(WebCore::FilterEffectRenderer::clearIntermediateResults): Deleted.
(WebCore::FilterEffectRenderer::apply): Deleted.
(WebCore::FilterEffectRenderer::computeSourceImageRectForDirtyRect): Deleted.
(WebCore::FilterEffectRenderer::output const): Deleted.
(WebCore::FilterEffectRenderer::setMaxEffectRects): Deleted.
(WebCore::FilterEffectRenderer::outputRect const): Deleted.

  • rendering/FilterEffectRenderer.h:

(WebCore::FilterEffectRendererHelper::FilterEffectRendererHelper):
(WebCore::FilterEffectRenderer::setSourceImageRect): Deleted.

  • rendering/RenderBlockFlow.cpp:
  • rendering/RenderFrame.cpp:
  • rendering/RenderImage.cpp:
  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::requiresFullLayerImageForFilters const):
(WebCore::RenderLayer::filter const):
(WebCore::RenderLayer::filterPainter const):
(WebCore::RenderLayer::setupFilters):
(WebCore::RenderLayer::calculateClipRects const):
(WebCore::RenderLayer::filterRenderer const): Deleted.

  • rendering/RenderLayer.h:
  • rendering/RenderLayerBacking.cpp:
  • rendering/RenderLayerFilterInfo.cpp:

(WebCore::RenderLayer::FilterInfo::setFilter):
(WebCore::RenderLayer::FilterInfo::updateReferenceFilterClients):
(WebCore::RenderLayer::FilterInfo::removeReferenceFilterClients):
(WebCore::RenderLayer::FilterInfo::setRenderer): Deleted.

  • rendering/RenderLayerFilterInfo.h:
  • rendering/updating/RenderTreeBuilderBlock.cpp:
7:54 PM Changeset in webkit [235585] by Darin Adler
  • 13 edits
    1 delete in trunk/Source

[CFNetwork] Update CFNetwork SPI use to use CFNetworkSPI.h more consistently
https://bugs.webkit.org/show_bug.cgi?id=189072
Source/WebCore:

Reviewed by Dan Bernstein.

  • platform/mac/WebCoreNSURLExtras.mm: Include CFNetworkSPI.h and remove a

declaration of +[NSURLProtocol _protocolClassForRequest:].

  • platform/network/mac/ResourceHandleMac.mm: Remove a declaration of

-[NSURLConnection _initWithRequest:delegate:usesCache:maxContentLength:startImmediately:connectionProperties:].
(WebCore::ResourceHandle::createNSURLConnection): Add ignore of
"-Wdeprecated-declarations" around use of the above method, since it
is deprecated.

Source/WebCore/PAL:

Reviewed by Dan Bernstein.

  • pal/spi/cf/CFNetworkSPI.h: Added a FIXME about USE(CFNETWORK_IGNORE_HSTS).

Sorted Objective-C class interfaces alphabetically instead of having them
relatively randomly ordered in the file. Reduced the platform #if statements
since it's not critical to have these SPIs declared only where they are
present, as long as they are used only when they are present. Moved some
additional declarations into this file.

  • pal/spi/cocoa/NSURLDownloadSPI.h: Added more NSURLDownload methods.

Source/WebKit:

Reviewed by Dan Bernstein.

  • NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: Removed NSURLSessionTask

method declarations from this file, they are in CFNetworkSPI.h.

  • NetworkProcess/cocoa/NetworkSessionCocoa.mm: Removed NSURLSessionConfiguration

method declarations from this file, they are in CFNetworkSPI.h.

Source/WebKitLegacy/mac:

Reviewed by Dan Bernstein.

  • Misc/WebDownload.mm: Removed forward declaration of NSURLConnectionDelegateProxy

and declarations for NSURLDownload init methods.

  • Misc/WebDownloadInternal.h: Removed.
  • WebCoreSupport/WebFrameLoaderClient.mm: Removed include of WebDownloadInternal.h.

(WebFrameLoaderClient::convertMainResourceLoadToDownload): Ignore
"-Wdeprecated-declarations" because the method used here is deprecated.

  • WebView/WebView.mm:

(-[WebView _downloadURL:]): Ignore "-Wdeprecated-declarations" because the method
used here is deprecated.

4:14 PM Changeset in webkit [235584] by mitz@apple.com
  • 4 edits
    1 add in trunk

[Cocoa] Crash using KVO for 'serverTrust' property of WKWebView - "this class is not key value coding-compliant for the key serverTrust"
https://bugs.webkit.org/show_bug.cgi?id=189222
<rdar://problem/33283179>

Reviewed by Sam Weinig.

Source/WebKit:

Test: TestWebKitAPI/Tests/WebKitCocoa/WKWebViewServerTrustKVC.mm

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView valueForUndefinedKey:]): Override to handle the "serverTrust" key, which is not

handled automatically by the KVC machinery since the getter’s return type is not an
Objective-C type.

Tools:

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKitCocoa/WKWebViewServerTrustKVC.mm: Added.

(TEST):

1:16 PM Changeset in webkit [235583] by Simon Fraser
  • 4 edits in trunk/Source/WebCore

Add some more filter logging
https://bugs.webkit.org/show_bug.cgi?id=189221

Reviewed by Anders Carlsson.

Add logging in FilterEffect::apply() that shows all the filter rects, and logging
that brackets the application of a whole filter chain, for both SVG and CSS filters.

  • platform/graphics/filters/FilterEffect.cpp:

(WebCore::FilterEffect::apply):

  • rendering/FilterEffectRenderer.cpp:

(WebCore::FilterEffectRendererHelper::applyFilterEffect):

  • rendering/svg/RenderSVGResourceFilter.cpp:

(WebCore::RenderSVGResourceFilter::postApplyResource):

1:03 AM Changeset in webkit [235582] by yusukesuzuki@slowstart.org
  • 3 edits
    1 add in trunk

Function object should convert params to string before throw a parsing error
https://bugs.webkit.org/show_bug.cgi?id=188874

Reviewed by Darin Adler.

JSTests:

  • stress/function-body-to-string-before-parameter-syntax-check.js: Added.

(shouldThrow):

Source/JavaScriptCore:

ToString operation onto the body of the Function constructor should be performed
before checking syntax correctness of the parameters.

  • runtime/FunctionConstructor.cpp:

(JSC::constructFunctionSkippingEvalEnabledCheck):

Note: See TracTimeline for information about the timeline view.