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

Timeline



Jul 14, 2018:

9:26 PM Changeset in webkit [233840] by Simon Fraser
  • 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 Simon Fraser
  • 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 Simon Fraser
  • 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 ap@apple.com
  • 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 ddkilzer@apple.com
  • 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 krit@webkit.org
  • 7 edits
    12 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.

Jul 13, 2018:

11:48 PM Changeset in webkit [233834] by Ross Kirsling
  • 3 edits in trunk/Tools

[WinCairo] run-api-tests is timing out for almost all test cases
https://bugs.webkit.org/show_bug.cgi?id=187547

Reviewed by Fujii Hironori.

  • Scripts/webkitpy/port/server_process.py:

(ServerProcess._wait_for_data_and_update_buffers_using_win32_apis):
Still attempt to read from stdout/stderr even if the process has exited, as long as it's before the deadline.

  • Scripts/webkitpy/port/server_process_unittest.py:

(TestServerProcess.test_read_after_process_exits):
Add test case.

7:15 PM Changeset in webkit [233833] by Simon Fraser
  • 3 edits in trunk/Source/WebCore

Avoid fetching visitedDependentColor() so many times in editing code
https://bugs.webkit.org/show_bug.cgi?id=187676

Reviewed by Zalan Bujtas.

editingAttributedStringFromRange called style.visitedDependentColor() twice for each property,
and fontAttributesForSelectionStart() called it two or three times. Use a local Color variable
to avoid so many calls. Also replace a call to alpha() with isVisible() which makes the usage more clear.

No behavior change.

  • editing/cocoa/EditorCocoa.mm:

(WebCore::Editor::fontAttributesForSelectionStart const):

  • editing/cocoa/HTMLConverter.mm:

(WebCore::editingAttributedStringFromRange):

6:53 PM Changeset in webkit [233832] by Ryan Haddad
  • 13 edits
    10 copies
    30 adds in trunk

Add TestExpectations and baselines for iOS 12
https://bugs.webkit.org/show_bug.cgi?id=187628

Reviewed by Alexey Proskuryakov.

Tools:

  • Scripts/webkitpy/port/ios.py:

(IOSPort): Bump current version to 12.

LayoutTests:

  • platform/ios-12/TestExpectations: Added.
6:16 PM Changeset in webkit [233831] by Ryan Haddad
  • 172 edits
    171 copies
    74 adds in trunk

Add TestExpectations and baselines for Mojave.
https://bugs.webkit.org/show_bug.cgi?id=187620

Reviewed by Alexey Proskuryakov.

Tools:

  • Scripts/webkitpy/port/mac.py:

(MacPort): Bump current version to 10.14.

LayoutTests:

  • platform/mac/TestExpectations:
6:07 PM Changeset in webkit [233830] by wilander@apple.com
  • 5 edits
    4 adds in trunk/LayoutTests

Flesh out WebSocket cookie tests to cover cookie policy for third-party resources
https://bugs.webkit.org/show_bug.cgi?id=187541
<rdar://problem/42048729>

Reviewed by Alex Christensen.

  • http/tests/cookies/resources/cookie-utilities.js:

Added a function for setting a cookie in a WebSocket handshake.

  • http/tests/websocket/tests/hybi/cookie_wsh.py:

(web_socket_do_extra_handshake):

Now sets the root path for new cookies so that they can be seen by
for example cookies/resources/echo-cookies.php.

  • http/tests/websocket/tests/hybi/websocket-allowed-setting-cookie-as-third-party-expected.txt: Added.
  • http/tests/websocket/tests/hybi/websocket-allowed-setting-cookie-as-third-party.html: Added.
  • http/tests/websocket/tests/hybi/websocket-blocked-from-setting-cookie-as-third-party-expected.txt: Added.
  • http/tests/websocket/tests/hybi/websocket-blocked-from-setting-cookie-as-third-party.html: Added.
  • http/tests/websocket/tests/hybi/websocket-cookie-overwrite-behavior-expected.txt:
  • http/tests/websocket/tests/hybi/websocket-cookie-overwrite-behavior.html:

Now tests under the condition where localhost as third-party is
allowed to set a new cookie as third party. It also makes sure to use
cookies with the path set to the root so that all cookies are visible.

5:04 PM Changeset in webkit [233829] by youenn@apple.com
  • 10 edits
    3 adds
    1 delete in trunk

Support connecting a MediaStreamAudioDestinationNode to RTCPeerConnection
https://bugs.webkit.org/show_bug.cgi?id=187627
<rdar://problem/35334400>

Reviewed by Jer Noble.

Source/WebCore:

When MediaStreamAudioSource is called to read new audio samples,
convert these samples to a WebAudioBufferList and call RealtimeMediaSource::audioSamplesAvailable.
This makes its observers to get the audio data.

Test: webrtc/peer-connection-createMediaStreamDestination.html

  • Modules/mediastream/MediaStream.cpp:

(WebCore::MediaStream::create): Minor refactoring.

  • Modules/webaudio/MediaStreamAudioDestinationNode.cpp:

(WebCore::createMediaStream):
(WebCore::MediaStreamAudioDestinationNode::MediaStreamAudioDestinationNode):
(WebCore::MediaStreamAudioDestinationNode::process):

  • Modules/webaudio/MediaStreamAudioDestinationNode.h:
  • Modules/webaudio/MediaStreamAudioSource.cpp:

(WebCore::MediaStreamAudioSource::MediaStreamAudioSource):
(WebCore::MediaStreamAudioSource::consumeAudio):

  • Modules/webaudio/MediaStreamAudioSource.h:
  • Modules/webaudio/MediaStreamAudioSourceCocoa.cpp: Added.

(WebCore::streamDescription):
(WebCore::MediaStreamAudioSource::consumeAudio):

  • WebCore.xcodeproj/project.pbxproj:
  • platform/audio/AudioDestinationConsumer.h: Removed.
  • platform/mediastream/MediaStreamPrivate.cpp:

(WebCore::MediaStreamPrivate::create):

  • platform/mediastream/MediaStreamPrivate.h:

LayoutTests:

  • webrtc/peer-connection-createMediaStreamDestination-expected.txt: Added.
  • webrtc/peer-connection-createMediaStreamDestination.html: Added.
5:03 PM Changeset in webkit [233828] by timothy@apple.com
  • 9 edits in trunk

Add _drawsBackground to WKWebViewConfiguration.
https://bugs.webkit.org/show_bug.cgi?id=187665
rdar://problem/42182268

Reviewed by Tim Horton.

Source/WebKit:

  • UIProcess/API/APIPageConfiguration.cpp:

(API::PageConfiguration::copy const): Copy m_drawsBackground, and some missing values.

  • UIProcess/API/APIPageConfiguration.h:

(API::PageConfiguration::drawsBackground const): Added.
(API::PageConfiguration::setDrawsBackground): Added.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _initializeWithConfiguration:]): Transfer _drawsBackground to page config.

  • UIProcess/API/Cocoa/WKWebViewConfiguration.mm:

(-[WKWebViewConfiguration init]): Set _drawsBackground to YES.
(-[WKWebViewConfiguration encodeWithCoder:]): Encode _drawsBackground.
(-[WKWebViewConfiguration initWithCoder:]): Decode _drawsBackground.
(-[WKWebViewConfiguration copyWithZone:]): Copy _drawsBackground.
(-[WKWebViewConfiguration _drawsBackground]): Added.
(-[WKWebViewConfiguration _setDrawsBackground:]): Added.

  • UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h:
  • UIProcess/WebPageProxy.cpp: Set m_drawsBackground based on configuration.

Tools:

  • TestWebKitAPI/Tests/WebKitCocoa/Configuration.mm:

(TestWebKitAPI.WebKit.ConfigurationDrawsBackground): Added.

4:20 PM Changeset in webkit [233827] by chris.reid@sony.com
  • 2 edits in trunk/Source/WebCore

[WinCairo] Enable WebGL when Accelerated Compositing is disabled
https://bugs.webkit.org/show_bug.cgi?id=187664

Reviewed by Fujii Hironori.

AC was disabled for WinCairo in r233725 but it can still run WebGL without AC.

  • html/HTMLCanvasElement.cpp:
4:15 PM Changeset in webkit [233826] by Kocsen Chung
  • 7 edits in tags/Safari-606.1.25.1/Source

Versioning.

4:11 PM Changeset in webkit [233825] by Kocsen Chung
  • 1 copy in tags/Safari-606.1.25.1

New tag.

4:11 PM Changeset in webkit [233824] by Matt Baker
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: REGRESSION (r195723): Improve support for resources with '\r' and '\r\n' line endings
https://bugs.webkit.org/show_bug.cgi?id=186453
<rdar://problem/39689180>

Reviewed by Joseph Pecoraro.

Now that the frontend no longer uses offsets from the original source
file to calculate positions within CodeMirror, it is possible to support
resources with '\r' and '\r\n' line endings in the editor.

  • UserInterface/Views/CodeMirrorEditor.js:

(WI.CodeMirrorEditor.create):
(WI.CodeMirrorEditor):

3:54 PM Changeset in webkit [233823] by Chris Dumez
  • 3 edits in trunk/Source/WebCore

Crash under ApplicationCacheGroup::didFailLoadingEntry()
https://bugs.webkit.org/show_bug.cgi?id=187661
<rdar://problem/42179755>

Reviewed by Youenn Fablet.

If ApplicationCacheResourceLoader::create() fails synchronously with
ApplicationCacheResourceLoader::Error::CannotCreateResource error, then
m_entryLoader will be null when didFailLoadingEntry() is called. However,
didFailLoadingEntry() fails to null check m_entryLoader before using it.

  • loader/appcache/ApplicationCacheGroup.cpp:

(WebCore::ApplicationCacheGroup::didFailLoadingEntry):
(WebCore::ApplicationCacheGroup::startLoadingEntry):

  • loader/appcache/ApplicationCacheGroup.h:
3:35 PM Changeset in webkit [233822] by timothy_horton@apple.com
  • 10 edits in trunk/Source/WebKit

WebKit sometimes holds WiFi/BT assertions while the Networking process is suspended
https://bugs.webkit.org/show_bug.cgi?id=187662
<rdar://problem/41999448>

Reviewed by Chris Dumez.

Inform WiFiAssertions when the Networking process is first going into the background,
so it has a chance of dropping its assertions even in cases where the system
suspends the process before we receive prepareToSuspend.

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::processDidTransitionToForeground):
(WebKit::NetworkProcess::processDidTransitionToBackground):

  • NetworkProcess/NetworkProcess.h:
  • NetworkProcess/NetworkProcess.messages.in:
  • NetworkProcess/curl/NetworkProcessCurl.cpp:

(WebKit::NetworkProcess::platformProcessDidTransitionToForeground):
(WebKit::NetworkProcess::platformProcessDidTransitionToBackground):

  • NetworkProcess/soup/NetworkProcessSoup.cpp:

(WebKit::NetworkProcess::platformProcessDidTransitionToForeground):
(WebKit::NetworkProcess::platformProcessDidTransitionToBackground):

  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::sendProcessDidTransitionToForeground):
(WebKit::NetworkProcessProxy::sendProcessDidTransitionToBackground):

  • UIProcess/Network/NetworkProcessProxy.h:
  • UIProcess/WebProcessPool.cpp:

(WebKit::WebProcessPool::updateProcessAssertions):
Plumb the foreground/background transition to NetworkProcess.

  • NetworkProcess/cocoa/NetworkProcessCocoa.mm:

(WebKit::NetworkProcess::platformPrepareToSuspend):
(WebKit::NetworkProcess::platformProcessDidTransitionToBackground):
(WebKit::NetworkProcess::platformProcessDidTransitionToForeground):
Make use of SuspensionReason to explain to WiFiAssertions the
difference between prepareToSuspend and didTransitionToBackground,
so that it can adjust the timing of dropping the assertion.

3:33 PM Changeset in webkit [233821] by achristensen@apple.com
  • 2 edits in trunk/Source/WebCore

Add release assertion to check thread in TimerBase::setNextFireTime
https://bugs.webkit.org/show_bug.cgi?id=187666

Reviewed by Ryosuke Niwa.

This should give us insight into what is causing <rdar://problem/33352721>

  • platform/Timer.cpp:

(WebCore::TimerBase::setNextFireTime):

3:27 PM Changeset in webkit [233820] by Matt Baker
  • 5 edits in trunk/Source/WebInspectorUI

Web Inspector: Basic blocks highlighting should use line/column locations instead of offsets
https://bugs.webkit.org/show_bug.cgi?id=187613
<rdar://problem/42131808>

Reviewed by Joseph Pecoraro.

  • UserInterface/Controllers/BasicBlockAnnotator.js:

Basic blocks sent from the backend include offsets into the original
file, rather than line/column locations. In order to translate to positions
within CodeMirror, we need to calculate the original line and column
for each block.

(WI.BasicBlockAnnotator.prototype.insertAnnotations):
(WI.BasicBlockAnnotator.prototype._calculateBasicBlockPositions.offsetToPosition):
(WI.BasicBlockAnnotator.prototype._calculateBasicBlockPositions):
(WI.BasicBlockAnnotator.prototype._annotateBasicBlockExecutionRanges.):
(WI.BasicBlockAnnotator.prototype._annotateBasicBlockExecutionRanges):
(WI.BasicBlockAnnotator.prototype._highlightTextForBasicBlock):

  • UserInterface/Models/SourceCodePosition.js:

(WI.SourceCodePosition.prototype.offsetColumn):

  • UserInterface/Views/TextEditor.js:

(WI.TextEditor.prototype.getTextInRange):
(WI.TextEditor.prototype.addStyleToTextRange):
Better encapsulation for CodeMirror positions.

  • UserInterface/Workers/Formatter/FormatterUtilities.js:

(get if):
Update String.prototype.lineEndings to support additional line separators.

3:26 PM Changeset in webkit [233819] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[ MacOS WK1 ] Layout Tests in media/media-fragments/ are flaky
https://bugs.webkit.org/show_bug.cgi?id=187557

Unreviewed test gardening.

Patch by Truitt Savell <Truitt Savell> on 2018-07-13

  • platform/mac-wk1/TestExpectations:
3:22 PM Changeset in webkit [233818] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit

REGRESSION (r231676): watchOS WebKit usually doesn't load in the background
https://bugs.webkit.org/show_bug.cgi?id=187663
<rdar://problem/42181185>

Reviewed by Chris Dumez.

  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::applicationDidEnterBackground):
"Screen lock" is very aggressive on watchOS; we want to do our usual
30 seconds of loading in the background when you drop your wrist,
so disable this power optimization on that platform.

2:53 PM Changeset in webkit [233817] by Matt Baker
  • 5 edits in trunk/Source/WebInspectorUI

Web Inspector: Execution highlighting in the frontend should be line/column-based
https://bugs.webkit.org/show_bug.cgi?id=187532
<rdar://problem/42035580>

Reviewed by Joseph Pecoraro.

Source code offsets from Esprima should not be used to calculate ranges
in CodeMirror for expression highlighting.

This also fixes a long standing bug when adjusting for the starting
position of an inline script. Previously the start offset from the script
TextRange was used for this purpose, but the value is often incorrect (see
https://bugs.webkit.org/show_bug.cgi?id=187532#c5). By using the starting
line/column instead, we avoid the problem.

  • UserInterface/Models/ScriptSyntaxTree.js:

(WI.ScriptSyntaxTree.prototype.containersOfPosition):
(WI.ScriptSyntaxTree.prototype.containersOfOffset): Deleted.

  • UserInterface/Models/SourceCodePosition.js:

(WI.SourceCodePosition.prototype.offsetColumn):

  • UserInterface/Views/SourceCodeTextEditor.js:

(WI.SourceCodeTextEditor.prototype.textEditorExecutionHighlightRange.toInlineScriptPosition):
(WI.SourceCodeTextEditor.prototype.textEditorExecutionHighlightRange.fromInlineScriptPosition):
(WI.SourceCodeTextEditor.prototype.textEditorExecutionHighlightRange):
(WI.SourceCodeTextEditor.prototype.textEditorExecutionHighlightRange.convertRangeOffsetsToSourceCodeOffsets): Deleted.

  • UserInterface/Views/TextEditor.js:

(WI.TextEditor.prototype._updateExecutionRangeHighlight):

1:56 PM Changeset in webkit [233816] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

[iOS] [WK1] Crash inside IOSurfacePool::platformGarbageCollectNow() in WebThread
https://bugs.webkit.org/show_bug.cgi?id=187635
<rdar://problem/34297065>

Reviewed by Simon Fraser.

r167717 added code to trigger a CA commit in the web process via platformGarbageCollectNow() in order to free IOSurface-related memory.
However, that code is also running in the web thread in apps using WebKit1, causing unwanted UIView layout on the web thread.

Fix by not triggering this CA commit if it's called on the web thread.

  • platform/graphics/cocoa/IOSurfacePoolCocoa.mm:

(WebCore::IOSurfacePool::platformGarbageCollectNow):

1:40 PM Changeset in webkit [233815] by Chris Dumez
  • 3 edits in trunk/Source/WebKit

WebResourceLoader may try to send a IPC with a destination ID that is 0
https://bugs.webkit.org/show_bug.cgi?id=187654
<rdar://problem/39265927>

Reviewed by Brady Eidson.

WebResourceLoader may try to send a IPC with a destination ID that is 0 according to release
assertion hits we see in the wild. This can lead to HashMap corruption on recipient side when
trying to lookup a key that is 0.

As per the crash traces, we see it starts from WebLoaderStrategy::internallyFailedLoadTimerFired()
which is likely due to the Network process crashing. WebLoaderStrategy::networkProcessCrashed()
calls scheduleInternallyFailedLoad() on each ResourceLoader and clears the WebResourceLoaders in
m_webResourceLoaders. When a ResourceLoader is cancelled (marked as failed), we clear its identifier
and we normally null out the WebLoaderStrategy's coreLoader. However, if we cannot find the
WebResourceLoader in m_webResourceLoaders (because that map was already cleared) then the
WebResourceLoader's coreLoader may not get nulled out, even if the coreLoader's identifier has
been reset. We have 2 lambdas in WebResourceLoader which keep the WebResourceLoader alive and
try to send IPC and are merely doing a null check on the coreLoader before trying to send the
IPC.

To address the issue, we now clear the WebResourceLoader's coreLoader in
WebLoaderStrategy::networkProcessCrashed(). For robustness, we also check that a coreLoader's
identifier is not 0 before trying to send IPC.

  • WebProcess/Network/WebLoaderStrategy.cpp:

(WebKit::WebLoaderStrategy::networkProcessCrashed):

  • WebProcess/Network/WebResourceLoader.cpp:

(WebKit::WebResourceLoader::willSendRequest):
(WebKit::WebResourceLoader::didReceiveResponse):

1:34 PM Changeset in webkit [233814] by graouts@webkit.org
  • 19 edits in trunk/Source/WebCore

Dark Mode: document markers are difficult to see
https://bugs.webkit.org/show_bug.cgi?id=187632
<rdar://problem/41099719>

Reviewed by Simon Fraser.

We update the way we draw the document markers for macOS and use more constrasting colors in dark mode.
Paving the way for future improvements, we move the drawLineForDocumentMarker() method from GraphicsContext
to RenderTheme and implement a first version in RenderThemeMac. The circles used for the underline are now
drawn directly with Core Graphics and we no longer use an image resource. To allow both GraphicsContext
and RenderTheme to have different versions of the drawLineForDocumentMarker() method, the DocumentMarkerLineStyle
enum is now an "enum class".

No new test due to webkit.org/b/105616, webkit.org/b/187655 was raised to track the creation of new tests
when it becomes possible again.

  • platform/graphics/GraphicsContext.h:
  • platform/graphics/GraphicsContextImpl.h:
  • platform/graphics/cairo/CairoOperations.cpp:

(WebCore::Cairo::drawLineForDocumentMarker):

  • platform/graphics/cairo/CairoOperations.h:
  • platform/graphics/cairo/GraphicsContextImplCairo.cpp:

(WebCore::GraphicsContextImplCairo::drawLineForDocumentMarker):

  • platform/graphics/cairo/GraphicsContextImplCairo.h:
  • platform/graphics/cocoa/GraphicsContextCocoa.mm:

(WebCore::GraphicsContext::drawLineForDocumentMarker):

  • platform/graphics/displaylists/DisplayListItems.h:

(WebCore::DisplayList::DrawLineForDocumentMarker::create):
(WebCore::DisplayList::DrawLineForDocumentMarker::DrawLineForDocumentMarker):

  • platform/graphics/displaylists/DisplayListRecorder.cpp:

(WebCore::DisplayList::Recorder::drawLineForDocumentMarker):

  • platform/graphics/displaylists/DisplayListRecorder.h:
  • platform/graphics/nicosia/cairo/NicosiaCairoOperationRecorder.cpp:

(Nicosia::CairoOperationRecorder::drawLineForDocumentMarker):

  • platform/graphics/nicosia/cairo/NicosiaCairoOperationRecorder.h:
  • platform/graphics/win/GraphicsContextCGWin.cpp:

(WebCore::GraphicsContext::drawLineForDocumentMarker):

  • rendering/InlineTextBox.cpp:

(WebCore::InlineTextBox::paintPlatformDocumentMarker): Call drawLineForDocumentMarker() on the RenderTheme on
macOS and on GraphicsContext in all other cases.

  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::drawLineForDocumentMarker):

  • rendering/RenderTheme.h:
  • rendering/RenderThemeMac.h:
  • rendering/RenderThemeMac.mm:

(WebCore::colorForStyle): Provide different colors for light and dark modes.
(WebCore::RenderThemeMac::drawLineForDocumentMarker): A new macOS-specific version of drawLineForDocumentMarker()
where we paint circles using Core Graphics directly.

1:17 PM Changeset in webkit [233813] by Ryan Haddad
  • 2 edits in trunk/LayoutTests

[ WK2 ] Layout Test editing/selection/update-selection-by-style-change.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=187649

Unreviewed test gardening.

Patch by Truitt Savell <Truitt Savell> on 2018-07-13

  • platform/mac-wk2/TestExpectations:
1:08 PM Changeset in webkit [233812] by ddkilzer@apple.com
  • 68 edits
    1 add in trunk/Source/ThirdParty/libwebrtc

libwebrtc.dylib Objective-C classes conflict with third-party frameworks
<https://webkit.org/b/187653>

Reviewed by Alex Christensen.

  • Source/webrtc/sdk/WebKit/WebKitUtilities.mm:
  • Manually add an attribute to change the class name.
  • Source/webrtc/sdk/objc/Framework/Classes/Common/RTCUIApplicationStatusObserver.h:
  • Source/webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLI420Renderer.h:
  • Source/webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLNV12Renderer.h:
  • Source/webrtc/sdk/objc/Framework/Classes/Metal/RTCMTLRenderer.h:
  • Source/webrtc/sdk/objc/Framework/Classes/PeerConnection/RTCDtmfSender+Private.h:
  • Source/webrtc/sdk/objc/Framework/Classes/PeerConnection/RTCVideoRendererAdapter.h:
  • Source/webrtc/sdk/objc/Framework/Classes/PeerConnection/RTCWrappedNativeVideoDecoder.h:
  • Source/webrtc/sdk/objc/Framework/Classes/PeerConnection/RTCWrappedNativeVideoEncoder.h:
  • Source/webrtc/sdk/objc/Framework/Classes/UI/RTCEAGLVideoView.m:
  • Source/webrtc/sdk/objc/Framework/Classes/Video/RTCAVFoundationVideoCapturerInternal.h:
  • Source/webrtc/sdk/objc/Framework/Classes/Video/RTCDefaultShader.h:
  • Source/webrtc/sdk/objc/Framework/Classes/Video/RTCI420TextureCache.h:
  • Source/webrtc/sdk/objc/Framework/Classes/Video/RTCNV12TextureCache.h:
  • Source/webrtc/sdk/objc/Framework/Classes/Video/objc_frame_buffer.h:
  • Source/webrtc/sdk/objc/Framework/Classes/VideoToolbox/objc_video_decoder_factory.h:
  • Source/webrtc/sdk/objc/Framework/Classes/VideoToolbox/objc_video_encoder_factory.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCAVFoundationVideoSource.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCAudioSession.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCAudioSessionConfiguration.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCAudioSource.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCAudioTrack.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCCameraPreviewView.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCCameraVideoCapturer.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCConfiguration.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCDataChannel.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCDataChannelConfiguration.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCDispatcher.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCDtmfSender.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCEAGLVideoView.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCFileLogger.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCFileVideoCapturer.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCIceCandidate.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCIceServer.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCIntervalRange.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCLegacyStatsReport.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCMTLNSVideoView.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCMTLVideoView.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCMediaConstraints.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCMediaSource.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCMediaStream.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCMediaStreamTrack.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCMetricsSampleInfo.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCNSGLVideoView.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCPeerConnection.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCPeerConnectionFactory.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCPeerConnectionFactoryOptions.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCRtpCodecParameters.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCRtpEncodingParameters.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCRtpParameters.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCRtpReceiver.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCRtpSender.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCSessionDescription.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCVideoCapturer.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCVideoCodec.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCVideoCodecFactory.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCVideoCodecH264.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCVideoDecoderVP8.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCVideoDecoderVP9.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCVideoEncoderVP8.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCVideoEncoderVP9.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCVideoFrame.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCVideoFrameBuffer.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCVideoRenderer.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCVideoSource.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCVideoTrack.h:
  • Source/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCVideoViewShading.h:
  • Apply two shell scripts (see bug) to add an attribute to change the name of all classes and protocols.
  • WebKit/0012-Add-WK-prefix-to-Objective-C-classes-and-protocols.patch: Add.
12:41 PM Changeset in webkit [233811] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit

Allow BOCOM and ABC plug-ins to run unsandboxed
https://bugs.webkit.org/show_bug.cgi?id=187652
rdar://problem/42149182

Patch by Zach Li <zachli@apple.com> on 2018-07-13
Reviewed by Youenn Fablet.

  • UIProcess/Plugins/mac/PluginInfoStoreMac.mm:

(WebKit::PluginInfoStore::shouldAllowPluginToRunUnsandboxed):

12:17 PM Changeset in webkit [233810] by ddkilzer@apple.com
  • 2 edits in trunk/Source/ThirdParty/libwebrtc

REGRESSION (r233155): Remove last references to click_annotate.cc and rtpcat.cc

  • libwebrtc.xcodeproj/project.pbxproj: Let Xcode have its way

with the project file by removing orphaned entries.

12:17 PM Changeset in webkit [233809] by ddkilzer@apple.com
  • 2 edits in trunk/Source/ThirdParty/libwebrtc

REGRESSION (r222476): Add missing semi-colons to EXPORTED_SYMBOLS_FILE variables

  • Configurations/libwebrtc.xcconfig:

(EXPORTED_SYMBOLS_FILE): Add missing semi-colons.

11:47 AM Changeset in webkit [233808] by Chris Dumez
  • 4 edits in trunk/Source/WebKit

Add more threading release assertions
https://bugs.webkit.org/show_bug.cgi?id=187647

Reviewed by Alex Christensen.

Add more threading release assertions to help debug <rdar://problem/39265927>.

  • NetworkProcess/NetworkConnectionToWebProcess.cpp:

(WebKit::NetworkConnectionToWebProcess::NetworkConnectionToWebProcess):
(WebKit::NetworkConnectionToWebProcess::~NetworkConnectionToWebProcess):

  • UIProcess/WebProcessProxy.cpp:

(WebKit::m_isInPrewarmedPool):
(WebKit::WebProcessProxy::~WebProcessProxy):
(WebKit::WebProcessProxy::shutDown):
(WebKit::WebProcessProxy::didFinishLaunching):

11:28 AM Changeset in webkit [233807] by chris.reid@sony.com
  • 5 edits in trunk/Source/WebKit

[WinCairo] Add windows storage process connection implementation
https://bugs.webkit.org/show_bug.cgi?id=187531

Reviewed by Fujii Hironori.

  • NetworkProcess/NetworkProcess.cpp:
  • Platform/IPC/Attachment.h:
  • StorageProcess/StorageProcess.cpp:
  • UIProcess/Storage/StorageProcessProxy.cpp:
11:20 AM Changeset in webkit [233806] by Yusuke Suzuki
  • 3 edits in trunk/Source/JavaScriptCore

[32bit JSC tests] stress/cow-convert-double-to-contiguous.js and stress/cow-convert-int32-to-contiguous.js are failing
https://bugs.webkit.org/show_bug.cgi?id=187561

Reviewed by Darin Adler.

This patch fixes the issue that CoW array handling is not introduced in 32bit put_by_val code.
We clean up 32bit put_by_val code.

  1. We remove inline out-of-bounds recording code since it is done in C operation code. This change

aligns 32bit implementation to 64bit implementation.

  1. We add CoW array checking, which is done in 64bit implementation.
  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emit_op_put_by_val):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::emit_op_put_by_val):
(JSC::JIT::emitSlow_op_put_by_val):

11:20 AM Changeset in webkit [233805] by cturner@igalia.com
  • 3 edits in trunk/Source/WebCore

[GStreamer] Use smart pointers for GstByteReader
https://bugs.webkit.org/show_bug.cgi?id=187638

Reviewed by Xabier Rodriguez-Calvar.

  • platform/graphics/gstreamer/GUniquePtrGStreamer.h: Add

specialisation for GstByteReader.

  • platform/graphics/gstreamer/eme/WebKitClearKeyDecryptorGStreamer.cpp:

Use the new smart pointer class to avoid needing to remember where
to call gst_byte_reader_free.
(webKitMediaClearKeyDecryptorDecrypt):

10:46 AM Changeset in webkit [233804] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit

[macOS] REGRESSION (r233536): Development WebContent service got opted back into Library Validation
https://bugs.webkit.org/show_bug.cgi?id=187640

Reviewed by Daniel Bates.

  • Scripts/process-webcontent-entitlements.sh: Add the com.apple.security.cs.disable-library-validation to the Development service regardless of whether restricted entitlements are to be used, because that entitlement is not restricted.
10:28 AM Changeset in webkit [233803] by Basuke Suzuki
  • 7 edits in trunk/Source/WebCore

[Curl] Move HTTP Setup logic from CurlRequest to CurlHandle for reuse.
https://bugs.webkit.org/show_bug.cgi?id=187427

Reviewed by Fujii Hironori.

CurlContext will be used by Secure WebSocket client, but HTTP setup code is
in CurlRequest, which is only for regular HTTP/HTTPS transaction. This patch
allows wss client to setup CurlHandle for HTTPS communication, such as TLS,
proxy or authentication.

No new tests because there's no behavior change.

  • platform/network/curl/CurlContext.cpp:

(WebCore::CurlHandle::CurlHandle):
(WebCore::CurlHandle::enableSSLForHost):
(WebCore::CurlHandle::willSetupSslCtx):
(WebCore::CurlHandle::willSetupSslCtxCallback):
(WebCore::CurlHandle::sslErrors const):
(WebCore::CurlHandle::setUrl):
(WebCore::CurlHandle::enableHttp):
(WebCore::CurlHandle::enableConnectionOnly):
(WebCore::CurlHandle::certificateInfo const):
(WebCore::CurlHandle::enableStdErrIfUsed):
(WebCore::CurlHandle::initialize): Deleted.

  • platform/network/curl/CurlContext.h:

(WebCore::CurlHandle::url const):

  • platform/network/curl/CurlRequest.cpp:

(WebCore::CurlRequest::setupTransfer):
(WebCore::CurlRequest::didReceiveHeader):
(WebCore::CurlRequest::didCompleteTransfer):
(WebCore::CurlRequest::finalizeTransfer):
(WebCore::CurlRequest::willSetupSslCtx): Deleted.
(WebCore::CurlRequest::willSetupSslCtxCallback): Deleted.

  • platform/network/curl/CurlRequest.h:
  • platform/network/curl/CurlSSLVerifier.cpp:

(WebCore::CurlSSLVerifier::CurlSSLVerifier):
(WebCore::CurlSSLVerifier::verify):

  • platform/network/curl/CurlSSLVerifier.h:
10:15 AM Changeset in webkit [233802] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[ MacOS Debug ] Layout Test inspector/view/asynchronous-layout.html is a Flaky Timeout
https://bugs.webkit.org/show_bug.cgi?id=187622

Unreviewed test gardening.

Patch by Truitt Savell <Truitt Savell> on 2018-07-13

  • platform/mac/TestExpectations:
10:14 AM Changeset in webkit [233801] by Chris Dumez
  • 3 edits in trunk/Source/WebKit

NetworkConnectionToWebProcess::m_networkResourceLoaders should use Ref<> for its values
https://bugs.webkit.org/show_bug.cgi?id=187629

Reviewed by Youenn Fablet.

NetworkConnectionToWebProcess::m_networkResourceLoaders should use Ref<> for its values
since they cannot be null.

  • NetworkProcess/NetworkConnectionToWebProcess.cpp:

(WebKit::NetworkConnectionToWebProcess::didClose):
(WebKit::NetworkConnectionToWebProcess::scheduleResourceLoad):
(WebKit::NetworkConnectionToWebProcess::performSynchronousLoad):

  • NetworkProcess/NetworkConnectionToWebProcess.h:
10:10 AM Changeset in webkit [233800] by Matt Baker
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: SourceCodePosition.js missing from Test.html
https://bugs.webkit.org/show_bug.cgi?id=187644

Reviewed by Brian Burg.

  • UserInterface/Test.html:
9:19 AM Changeset in webkit [233799] by Chris Dumez
  • 2 edits in trunk/Tools

Add a FrameLoaderClient willInjectUserScriptForFrame callback
https://bugs.webkit.org/show_bug.cgi?id=187565
<rdar://problem/42095701>

Unreviewed WKTR fix after r233782.

  • WebKitTestRunner/TestInvocation.cpp:

(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):

9:13 AM Changeset in webkit [233798] by Chris Dumez
  • 3 edits
    1 move
    2 deletes in trunk/Tools

Reduce size of WebCore::URL
https://bugs.webkit.org/show_bug.cgi?id=186820
<rdar://problem/42087508>

Unreviewed, re-generates Service worker registrations database used by API tests after r233789.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKitCocoa/SimpleServiceWorkerRegistrations-2.sqlite3: Removed.
  • TestWebKitAPI/Tests/WebKitCocoa/SimpleServiceWorkerRegistrations-2.sqlite3-shm: Removed.
  • TestWebKitAPI/Tests/WebKitCocoa/SimpleServiceWorkerRegistrations-3.sqlite3: Renamed from Tools/TestWebKitAPI/Tests/WebKitCocoa/SimpleServiceWorkerRegistrations-2.sqlite3-wal.
  • TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:

(TEST):

3:47 AM Changeset in webkit [233797] by calvaris@igalia.com
  • 4 edits in trunk/Source/WebCore

[GStreamer][MSE] Add GstFlowCombiner to handle non-linked inactive branches
https://bugs.webkit.org/show_bug.cgi?id=187636

Reviewed by Carlos Garcia Campos.

When we have more than one source buffer, only one will be
rendered and the inactive branch will report linking errors that
we have to deal with.

  • platform/graphics/gstreamer/GUniquePtrGStreamer.h: Added GstFlowCombiner.
  • platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.cpp:

(webkitMediaSrcChain): Combine the flow in the flow combiner.
(webkit_media_src_init): Initialize the flow combiner.
(webKitMediaSrcLinkStreamToSrcPad): Add the proxypad to the
combiner and set the chain function.

  • platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamerPrivate.h:

Declare the flow combiner.

1:10 AM Changeset in webkit [233796] by cturner@igalia.com
  • 5 edits in trunk/Source/WebCore

[GStreamer] Add GstBufferMapped abstraction
https://bugs.webkit.org/show_bug.cgi?id=187600

Reviewed by Xabier Rodriguez-Calvar.

There is a similar abstraction called mapGstBuffer and friends,
which have a slightly different use-case: wanting a buffer that is
mapped for a longer lifetime without have to keep track of the map
infos separately. They could be subsumed by this abstraction, but
everytime they need to write to the buffer, they'd have to remap
the memory blocks.

This abstraction is more for one-short reads and writes saving the user
from remembering to unmap the buffer and having to manage to
auxiliary GstMapInfo structures.

  • platform/graphics/gstreamer/GStreamerCommon.h:

(WebCore::GstMappedBuffer::GstMappedBuffer):
(WebCore::GstMappedBuffer::~GstMappedBuffer):
(WebCore::GstMappedBuffer::data):
(WebCore::GstMappedBuffer::size const):
(WebCore::GstMappedBuffer::operator bool const):

  • platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp:

(WebCore::InbandTextTrackPrivateGStreamer::notifyTrackOfSample):

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:

(WebCore::MediaPlayerPrivateGStreamerBase::handleSyncMessage):
(WebCore::MediaPlayerPrivateGStreamerBase::initializationDataEncountered):

  • platform/graphics/gstreamer/eme/WebKitClearKeyDecryptorGStreamer.cpp:

(webKitMediaClearKeyDecryptorSetupCipher):
(webKitMediaClearKeyDecryptorDecrypt):

12:04 AM Changeset in webkit [233795] by mark.lam@apple.com
  • 2 edits in trunk/Source/WTF

Signal.cpp's activeThreads() should only create its ThreadGroup once.
https://bugs.webkit.org/show_bug.cgi?id=187634
<rdar://problem/40662311>

Reviewed by Yusuke Suzuki.

registerThreadForMachExceptionHandling() is relying on the activeThreads()
ThreadGroup being a singleton.

  • wtf/threads/Signals.cpp:

(WTF::activeThreads):

Note: See TracTimeline for information about the timeline view.