[LFC] Do not collapse margin with the parent when element has border/padding.
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2018-06-27  Zalan Bujtas  <zalan@apple.com>
2
3         [LFC] Do not collapse margin with the parent when element has border/padding.
4         https://bugs.webkit.org/show_bug.cgi?id=187114
5
6         Reviewed by Antti Koivisto.
7
8         * layout/blockformatting/BlockFormattingContext.cpp:
9         (WebCore::Layout::BlockFormattingContext::layout const):
10         * layout/blockformatting/BlockMarginCollapse.cpp:
11         (WebCore::Layout::isMarginTopCollapsedWithParent):
12         (WebCore::Layout::BlockFormattingContext::MarginCollapse::collapsedMarginTopFromFirstChild):
13         (WebCore::Layout::BlockFormattingContext::MarginCollapse::marginTop):
14
15 2018-06-27  Simon Fraser  <simon.fraser@apple.com>
16
17         Fix Windows build after r233268.
18
19         * platform/graphics/ca/win/PlatformCALayerWin.cpp:
20         (PlatformCALayerWin::hasContents const):
21         * platform/graphics/ca/win/PlatformCALayerWin.h:
22
23 2018-06-27  Zalan Bujtas  <zalan@apple.com>
24
25         [LFC] Out-of-flow positioned element's height depends on its containing block's height.
26         https://bugs.webkit.org/show_bug.cgi?id=187082
27
28         Reviewed by Antti Koivisto.
29
30         We can't really compute the final height of an out-of-flow element until after its containing block's height is computed.
31
32         * layout/FormattingContext.cpp:
33         (WebCore::Layout::FormattingContext::layoutOutOfFlowDescendants const):
34         * layout/FormattingContext.h:
35         * layout/LayoutContext.cpp:
36         (WebCore::Layout::LayoutContext::updateLayout):
37         (WebCore::Layout::LayoutContext::layoutFormattingContextSubtree):
38         * layout/LayoutContext.h:
39         * layout/blockformatting/BlockFormattingContext.cpp:
40         (WebCore::Layout::BlockFormattingContext::layout const):
41         * layout/layouttree/LayoutContainer.h:
42         (WebCore::Layout::Container::outOfFlowDescendants const):
43         (WebCore::Layout::Container::outOfFlowDescendants): Deleted.
44
45 2018-06-27  Youenn Fablet  <youenn@apple.com>
46
47         Disable content blockers in NetworkLoadChecker except for ping loads
48         https://bugs.webkit.org/show_bug.cgi?id=187083
49         <rdar://problem/41440083>
50
51         Reviewed by Chris Dumez.
52
53         Add internals API to reload a frame without content extensions.
54
55         Test: http/tests/contentextensions/reload-without-contentextensions.html
56
57         * testing/Internals.cpp:
58         (WebCore::Internals::reloadWithoutContentExtensions):
59         * testing/Internals.h:
60         * testing/Internals.idl:
61
62 2018-06-27  Simon Fraser  <simon.fraser@apple.com>
63
64         https://hackernoon.com/ uses lots of layer backing store
65         https://bugs.webkit.org/show_bug.cgi?id=186909
66         rdar://problem/40257540
67
68         Reviewed by Tim Horton.
69         
70         The existing "backing store detached" logic, which was used to eliminate backing store
71         for compositing layers outside the viewport, had a number of bugs that allowed layers
72         to have backing store when they should not.
73         
74         Specifically, any code path that ended up in setNeedsDisplay{InRect}() in PlatformCALayer
75         could trigger backing store creation on layers that should have never had any.
76         
77         Rather than monkeypatch all the GraphicsLayerCA call sites that call setNeedsDisplay{InRect}(),
78         just bail early from the PlatformCALayer* methods that trigger repaints.
79         
80         Tests didn't catch this because they just dumped the state of the backingStoreAttached flag. To fix this,
81         create backingStoreAttachedForTesting() which also tests whether the layer has contents.
82
83         Test: compositing/backing/backing-store-attachment-outside-viewport.html
84
85         * platform/graphics/GraphicsLayer.cpp:
86         (WebCore::GraphicsLayer::dumpProperties const):
87         (showGraphicsLayerTree):
88         * platform/graphics/GraphicsLayer.h:
89         (WebCore::GraphicsLayer::backingStoreAttachedForTesting const):
90         * platform/graphics/GraphicsLayerClient.h:
91         * platform/graphics/ca/GraphicsLayerCA.cpp:
92         (WebCore::GraphicsLayerCA::backingStoreAttachedForTesting const):
93         (WebCore::GraphicsLayerCA::setNeedsDisplay):
94         * platform/graphics/ca/GraphicsLayerCA.h:
95         * platform/graphics/ca/PlatformCALayer.h:
96         * platform/graphics/ca/cocoa/PlatformCALayerCocoa.h:
97         * platform/graphics/ca/cocoa/PlatformCALayerCocoa.mm:
98         (PlatformCALayerCocoa::setNeedsDisplay):
99         (PlatformCALayerCocoa::setNeedsDisplayInRect):
100         (PlatformCALayerCocoa::hasContents const):
101
102 2018-06-27  David Kilzer  <ddkilzer@apple.com>
103
104         Fix clang static analyzer warnings: Branch condition evaluates to a garbage value
105         <https://webkit.org/b/186968>
106
107         Reviewed by Zalan Bujtas.
108
109         This patch changes two stack-allocated `bool` variables into
110         `std::optional<bool>` since the functions that set the variable
111         may return early without setting it.  It also changes one
112         stack-allocated pointer to be initialized to `nullptr`.
113
114         * animation/AnimationTimeline.cpp:
115         (WebCore::AnimationTimeline::updateCSSTransitionsForElement):
116         Update for change to CSSPropertyAnimation::getPropertyAtIndex()
117         argument type.
118
119         * editing/ios/EditorIOS.mm:
120         (WebCore::Editor::writeImageToPasteboard): Initialize
121         `cachedImage` stack pointer to nullptr since getImage() has an
122         early return that doesn't set `cachedImage`.
123         * editing/mac/EditorMac.mm:
124         (WebCore::Editor::writeImageToPasteboard): Ditto.
125
126         * page/animation/CSSPropertyAnimation.cpp:
127         (WebCore::CSSPropertyAnimation::getPropertyAtIndex):
128         * page/animation/CSSPropertyAnimation.h:
129         (WebCore::CSSPropertyAnimation::getPropertyAtIndex):
130         - Change method to take `std::optional<bool>` instead of `bool`
131           as second argument since the method may return early without
132           setting `isShorthand`.
133
134         * page/animation/CompositeAnimation.cpp:
135         (WebCore::CompositeAnimation::updateTransitions): Update for
136         change to CSSPropertyAnimation::getPropertyAtIndex() argument
137         type.
138
139         * rendering/InlineFlowBox.cpp:
140         (WebCore::InlineFlowBox::placeBoxesInBlockDirection): Also
141         rename local `emphasisMarkIsOver` to `emphasisMarkIsAbove` to
142         match other call sites.
143         (WebCore::InlineFlowBox::addTextBoxVisualOverflow):
144         (WebCore::InlineFlowBox::computeOverAnnotationAdjustment const):
145         (WebCore::InlineFlowBox::computeUnderAnnotationAdjustment const):
146         - Update for change to InlineTextBox::emphasisMarkExistsAndIsAbove()
147           argument type.
148         * rendering/InlineTextBox.cpp:
149         (WebCore::InlineTextBox::emphasisMarkExistsAndIsAbove const):
150         - Change method to take `std::optional<bool>` instead of `bool`
151           as second argument since the method may return early without
152           setting `above`.
153         (WebCore::InlineTextBox::paintMarkedTextForeground):
154         - Update for change to InlineTextBox::emphasisMarkExistsAndIsAbove()
155           argument type.
156         * rendering/InlineTextBox.h:
157         (WebCore::InlineTextBox::emphasisMarkExistsAndIsAbove const):
158         - Change method to take `std::optional<bool>` instead of `bool`.
159
160 2018-06-27  Zalan Bujtas  <zalan@apple.com>
161
162         [LFC] Move formatting context root layout logic to a dedicated function.
163         https://bugs.webkit.org/show_bug.cgi?id=187097
164
165         Reviewed by Antti Koivisto.
166
167         * layout/blockformatting/BlockFormattingContext.cpp:
168         (WebCore::Layout::BlockFormattingContext::layout const):
169         (WebCore::Layout::BlockFormattingContext::layoutFormattingContextRoot const):
170         * layout/blockformatting/BlockFormattingContext.h:
171
172 2018-06-27  Zalan Bujtas  <zalan@apple.com>
173
174         [LFC] Compute static position for out-of-flow elements only when required.
175         https://bugs.webkit.org/show_bug.cgi?id=187096
176
177         Reviewed by Antti Koivisto.
178
179         Computing static position for out-of-flow elements could be somewhat expensive, so let's not do it unless we actually need it.
180
181         * layout/FormattingContextGeometry.cpp:
182         (WebCore::Layout::staticVerticalPositionForOutOfFlowPositioned):
183         (WebCore::Layout::staticHorizontalPositionForOutOfFlowPositioned):
184         (WebCore::Layout::FormattingContext::Geometry::outOfFlowNonReplacedVerticalGeometry):
185         (WebCore::Layout::FormattingContext::Geometry::outOfFlowNonReplacedHorizontalGeometry):
186         (WebCore::Layout::FormattingContext::Geometry::outOfFlowReplacedVerticalGeometry):
187         (WebCore::Layout::FormattingContext::Geometry::outOfFlowReplacedHorizontalGeometry):
188         * layout/blockformatting/BlockFormattingContextGeometry.cpp:
189         (WebCore::Layout::BlockFormattingContext::Geometry::staticPosition):
190         (WebCore::Layout::BlockFormattingContext::Geometry::staticPositionForOutOfFlowPositioned): Deleted.
191
192 2018-06-27  Nan Wang  <n_wang@apple.com>
193
194         AX: [iOS] Remove the ability to set keyboard focus when VoiceOver takes focus
195         https://bugs.webkit.org/show_bug.cgi?id=187076
196
197         Reviewed by Chris Fleizach.
198
199         We shouldn't set keyboard focus when assistive technology takes focus since
200         this is causing website incompatibility issues by causing focus to be lost.
201
202         Test: accessibility/ios-simulator/accessibility-focus-do-not-set-focus.html
203
204         * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
205         (-[WebAccessibilityObjectWrapper accessibilityElementDidBecomeFocused]):
206
207 2018-06-21  Emilio Cobos Álvarez  <emilio@crisal.io>
208
209         Move clearChildNeedsStyleRecalc into resetStyleForNonRenderedDescendants.
210         https://bugs.webkit.org/show_bug.cgi?id=186881
211
212         Reviewed by Antti Koivisto.
213
214         Every caller does this already.
215
216         No new tests, no change in behavior.
217
218         * style/StyleTreeResolver.cpp:
219         (WebCore::Style::resetStyleForNonRenderedDescendants):
220         (WebCore::Style::TreeResolver::resolveComposedTree):
221
222 2018-06-27  Tomas Popela  <tpopela@redhat.com>
223
224         [GStreamer] Coverity scan issues
225         https://bugs.webkit.org/show_bug.cgi?id=187087
226
227         Reviewed by Xabier Rodriguez-Calvar.
228
229         Fix uninitialized members.
230
231         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
232         * platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
233         * platform/graphics/gstreamer/mse/SourceBufferPrivateGStreamer.h:
234
235 2018-06-27  Zan Dobersek  <zdobersek@igalia.com>
236
237         [GCrypt] Move definitions of GCryptUtilities helpers into a separate source file
238         https://bugs.webkit.org/show_bug.cgi?id=187033
239
240         Reviewed by Michael Catanzaro.
241
242         Move the GCryptUtilities helpers that operate on libgcrypt values and
243         constants into a separate source file. This limits a bit the amount of
244         inlining the compiler might feel compelled to do, and the resulting
245         shared library is 8kB smaller in size.
246
247         * crypto/gcrypt/GCryptUtilities.cpp: Copied from Source/WebCore/crypto/gcrypt/GCryptUtilities.h.
248         (WebCore::hmacAlgorithm):
249         (WebCore::digestAlgorithm):
250         (WebCore::hashCryptoDigestAlgorithm):
251         (WebCore::mpiLength):
252         (WebCore::mpiData):
253         (WebCore::mpiZeroPrefixedData):
254         (WebCore::mpiSignedData):
255         * crypto/gcrypt/GCryptUtilities.h:
256         (WebCore::hmacAlgorithm): Deleted.
257         (WebCore::digestAlgorithm): Deleted.
258         (WebCore::hashCryptoDigestAlgorithm): Deleted.
259         (WebCore::mpiLength): Deleted.
260         (WebCore::mpiData): Deleted.
261         (WebCore::mpiZeroPrefixedData): Deleted.
262         (WebCore::mpiSignedData): Deleted.
263         * platform/SourcesGCrypt.txt:
264
265 2018-06-26  Yusuke Suzuki  <utatane.tea@gmail.com>
266
267         [JSC] Pass VM& to functions more
268         https://bugs.webkit.org/show_bug.cgi?id=186241
269
270         Reviewed by Mark Lam.
271
272         * bindings/js/JSCustomElementRegistryCustom.cpp:
273         (WebCore::JSCustomElementRegistry::define):
274
275 2018-06-26  Simon Fraser  <simon.fraser@apple.com>
276
277         CSSGradientValue's color stops vector wastes 12KB on theverge.com
278         https://bugs.webkit.org/show_bug.cgi?id=186988
279
280         Reviewed by Sam Weinig.
281
282         Shrink the color stops vector when we're done parsing the stops.
283
284         * css/CSSGradientValue.h:
285         (WebCore::CSSGradientValue::doneAddingStops):
286         * css/parser/CSSPropertyParserHelpers.cpp:
287         (WebCore::CSSPropertyParserHelpers::consumeDeprecatedGradient):
288         (WebCore::CSSPropertyParserHelpers::consumeGradientColorStops):
289         (WebCore::CSSPropertyParserHelpers::consumeAngularGradientColorStops):
290
291 2018-06-25  Yusuke Suzuki  <utatane.tea@gmail.com>
292
293         Remove static initializers more
294         https://bugs.webkit.org/show_bug.cgi?id=186969
295
296         Reviewed by Michael Catanzaro.
297
298         This patch removes static initializers more. They typically exists in GTK port.
299
300         No behavior change.
301
302         * Sources.txt:
303         * WebCore.xcodeproj/project.pbxproj:
304         * page/ResourceUsageData.cpp: Removed.
305         * page/ResourceUsageData.h:
306         Remove ResourceUsageData constructors since default constructors are enough.
307
308         (WebCore::MemoryCategoryInfo::MemoryCategoryInfo):
309         * platform/gtk/PasteboardHelper.cpp:
310         (WebCore::markupPrefix):
311         (WebCore::removeMarkupPrefix):
312         (WebCore::PasteboardHelper::fillSelectionData):
313         Use NeverDestroyed<> and static functions.
314
315         * platform/mediastream/gstreamer/GStreamerAudioCaptureSource.cpp:
316         (WebCore::defaultVolumeCapability):
317         (WebCore::GStreamerAudioCaptureSource::capabilities const):
318         CapabilityValueOrRange's constructor is not constexpr.
319
320         * platform/network/soup/SoupNetworkSession.cpp:
321         (WebCore::initialAcceptLanguages):
322         (WebCore::proxySettings):
323         (WebCore::SoupNetworkSession::SoupNetworkSession):
324         (WebCore::SoupNetworkSession::setupProxy):
325         (WebCore::SoupNetworkSession::setProxySettings):
326         (WebCore::SoupNetworkSession::setInitialAcceptLanguages):
327         Use NeverDestroyed<> and static functions.
328
329 2018-06-26  Daniel Bates  <dabates@apple.com>
330
331         REGRESSION (r231479): Unable to buy Odeon cinema tickets in STP (bogus 'X-Frame-Options' to 'SAMEORIGIN')
332         https://bugs.webkit.org/show_bug.cgi?id=186090
333         <rdar://problem/40692595>
334
335         Reviewed by Andy Estes.
336
337         Fix up Content Security Policy logic for checking the frame ancestors now that we
338         exclude the frame that initiated the load request.
339
340         Test: http/tests/security/XFrameOptions/cross-origin-iframe-post-form-to-parent-same-origin-x-frame-options-page-allow.html
341
342         * page/csp/ContentSecurityPolicy.cpp:
343         (WebCore::ContentSecurityPolicy::allowFrameAncestors const): 
344         * page/csp/ContentSecurityPolicyDirectiveList.cpp:
345         (WebCore::checkFrameAncestors):
346
347 2018-06-26  Chris Dumez  <cdumez@apple.com>
348
349         Simplify NetworkStorageSession::getAllStorageAccessEntries()
350         https://bugs.webkit.org/show_bug.cgi?id=187016
351
352         Reviewed by Youenn Fablet.
353
354         Iterate over the HashMaps' values instead of iterating over their keys and then looking them
355         up in the HashMap.
356
357         * platform/network/cf/NetworkStorageSessionCFNet.cpp:
358         (WebCore::NetworkStorageSession::getAllStorageAccessEntries const):
359
360 2018-06-26  Eric Carlson  <eric.carlson@apple.com>
361
362         [Mac] AirPlay picker uses incorrect theme in Dark mode
363         https://bugs.webkit.org/show_bug.cgi?id=187054
364         <rdar://problem/41291093>
365
366         Reviewed by Timothy Hatcher.
367
368         * Modules/mediasession/WebMediaSessionManager.cpp:
369         (WebCore::WebMediaSessionManager::showPlaybackTargetPicker): Add useDefaultAppearance parameter.
370         * Modules/mediasession/WebMediaSessionManager.h:
371
372         * platform/graphics/MediaPlaybackTargetPicker.cpp:
373         (WebCore::MediaPlaybackTargetPicker::showPlaybackTargetPicker): Ditto.
374         * platform/graphics/MediaPlaybackTargetPicker.h:
375
376         * platform/graphics/avfoundation/objc/MediaPlaybackTargetPickerMac.h:
377         * platform/graphics/avfoundation/objc/MediaPlaybackTargetPickerMac.mm:
378         (WebCore::MediaPlaybackTargetPickerMac::showPlaybackTargetPicker): Choose theme based on
379         useDefaultAppearance parameter.
380
381         * platform/mock/MediaPlaybackTargetPickerMock.cpp:
382         (WebCore::MediaPlaybackTargetPickerMock::showPlaybackTargetPicker): Log parameter.
383         * platform/mock/MediaPlaybackTargetPickerMock.h:
384
385 2018-06-26  Thibault Saunier  <tsaunier@igalia.com>
386
387         [GStreamer] Do not forget to set stream on track switching
388         https://bugs.webkit.org/show_bug.cgi?id=187049
389
390         Reviewed by Philippe Normand.
391
392         This was an overlooked issue introduced in Bug #186678
393
394         This is already tested, but we currently run only tests against playbin2
395
396         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
397         (WebCore::MediaPlayerPrivateGStreamer::enableTrack):
398
399 2018-06-26  Zalan Bujtas  <zalan@apple.com>
400
401         [LFC] Fixed positioning is a subcategory of absolute positioning.
402         https://bugs.webkit.org/show_bug.cgi?id=187043
403
404         Reviewed by Antti Koivisto.
405
406         https://www.w3.org/TR/CSS22/visuren.html#absolute-positioning
407         References in this specification to an absolutely positioned element (or its box) imply that the element's 'position'
408         property has the value 'absolute' or 'fixed'.
409
410         * layout/layouttree/LayoutBox.cpp:
411         (WebCore::Layout::Box::isAbsolutelyPositioned const):
412         * layout/layouttree/LayoutBox.h:
413         (WebCore::Layout::Box::isOutOfFlowPositioned const):
414
415 2018-06-26  Commit Queue  <commit-queue@webkit.org>
416
417         Unreviewed, rolling out r233143.
418         https://bugs.webkit.org/show_bug.cgi?id=187046
419
420         broke media/video-ended-event-negative-playback.html
421         (Requested by philn on #webkit).
422
423         Reverted changeset:
424
425         "[GStreamer] Remove useless workaround"
426         https://bugs.webkit.org/show_bug.cgi?id=186921
427         https://trac.webkit.org/changeset/233143
428
429 2018-06-25  Zalan Bujtas  <zalan@apple.com>
430
431         [LFC] Computed height for in-flow non-replaced should not include padding and border.
432         https://bugs.webkit.org/show_bug.cgi?id=187031
433
434         Reviewed by Antti Koivisto.
435
436         In certain cases the height of a non-replaced in-flow box is computed using the bottom position of its last in-flow child.
437         The in-flow child's bottom position is in the coordinate system of the containing block's border box (border box's top left is 0, 0) ->
438         it includes both the (top) border and the padding of the containing block.
439
440         * layout/blockformatting/BlockFormattingContextGeometry.cpp:
441         (WebCore::Layout::BlockFormattingContext::Geometry::inFlowNonReplacedHeightAndMargin):
442
443 2018-06-26  Zan Dobersek  <zdobersek@igalia.com>
444
445         Crash in WebAnimation::runPendingPlayTask
446         https://bugs.webkit.org/show_bug.cgi?id=186189
447
448         Reviewed by Carlos Garcia Campos.
449
450         Avoid crashes on nullopt std::optional dereference in the
451         runPendingPlayTask() and runPendingPauseTask() methods of the
452         WebAnimation class by defaulting to a Seconds(0) value.
453
454         In both cases the std::optional value is the current time retrieved from
455         the associated DocumentTimeline object. But there's no guarantee that
456         the timeline is active and the resulting time value is resolved (i.e.
457         not nullopt). Dereferencing the nullopt Seconds value doesn't cause a
458         problem on configurations still building as C++14 and the fallback
459         std::optional implementation provided by WTF -- no signal is raised, and
460         a 0 value is returned. Configurations building as C++17 on the other
461         hand use the stdlib-provided std::optional that does raise a signal on
462         invalid access, leading to crashes.
463
464         The default-to-Seconds(0) solution avoids crashes on configurations
465         that build with C++17 support enabled, and thus match configurations
466         that are still using WTF's std::optional. This still doesn't address the
467         underlying problem of retrieving current time from an inactive document
468         timeline and using it as ready time for the pending play/pause task
469         execution.
470
471         runPendingPlayTask() change addresses crashes in the following tests:
472         - fast/animation/css-animation-resuming-when-visible.html
473         - fast/animation/css-animation-resuming-when-visible-with-style-change.html
474         - imported/w3c/web-platform-tests/web-animations/interfaces/Animatable/animate-no-browsing-context.html
475         - imported/w3c/web-platform-tests/web-animations/interfaces/Animatable/getAnimations.html
476
477         runPendingPauseTask() change addresses crashes in the following tests:
478         - animations/multiple-animations-timing-function.html
479
480         * animation/WebAnimation.cpp:
481         (WebCore::WebAnimation::runPendingPlayTask):
482         (WebCore::WebAnimation::runPendingPauseTask):
483
484 2018-06-26  Antoine Quint  <graouts@apple.com>
485
486         [Web Animations] Show the feature as "Supported in Preview"
487         https://bugs.webkit.org/show_bug.cgi?id=187037
488
489         Reviewed by Dean Jackson.
490
491         Web Animations are enabled by default in STP.
492
493         * features.json:
494
495 2018-06-26  Miguel Gomez  <magomez@igalia.com>
496
497         [GTK] Many webpages can crash the browser in WebCore::CoordinatedGraphicsLayer::transformedVisibleRect
498         https://bugs.webkit.org/show_bug.cgi?id=179304
499
500         Reviewed by Michael Catanzaro.
501
502         When adding new CoordinatedGraphicsLayers to the tree, check that they have the appropriate
503         CompositingCoordinator. If that's not the case, set the appropriate one to the layer and its
504         children and set the state of those layers so they are rendered properly.
505
506         * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
507         (WebCore::CoordinatedGraphicsLayer::addChild):
508         (WebCore::CoordinatedGraphicsLayer::addChildAtIndex):
509         (WebCore::CoordinatedGraphicsLayer::addChildAbove):
510         (WebCore::CoordinatedGraphicsLayer::addChildBelow):
511         (WebCore::CoordinatedGraphicsLayer::replaceChild):
512         (WebCore::CoordinatedGraphicsLayer::setCoordinatorIncludingSubLayersIfNeeded):
513         * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:
514
515 2018-06-25  Keith Rollin  <krollin@apple.com>
516
517         Adjust WEBCORE_EXPORT annotations for LTO
518         https://bugs.webkit.org/show_bug.cgi?id=186944
519         <rdar://problem/41384880>
520
521         Reviewed by David Kilzer.
522
523         Adjust a number of places that result in WebKit's
524         'check-for-weak-vtables-and-externals' script reporting weak external
525         symbols:
526
527             ERROR: WebCore has a weak external symbol in it (/Volumes/Data/dev/webkit/OpenSource/WebKitBuild/Release/WebCore.framework/Versions/A/WebCore)
528             ERROR: A weak external symbol is generated when a symbol is defined in multiple compilation units and is also marked as being exported from the library.
529             ERROR: A common cause of weak external symbols is when an inline function is listed in the linker export file.
530             ...
531
532         These cases are caused by inline methods being marked with WTF_EXPORT
533         (or related macro) or with an inline function being in a class marked
534         as such, and when enabling LTO builds.
535
536         For the most part, address these by removing the WEBCORE_EXPORT
537         annotation from inline methods. In some cases, move the implementation
538         out-of-line because it's the class that has the WEBCORE_EXPORT on it
539         and removing the annotation from the class would be too disruptive.
540         Finally, in other cases, move the implementation out-of-line because
541         check-for-weak-vtables-and-externals still complains when keeping the
542         implementation inline and removing the annotation; this seems to
543         typically (but not always) happen with destructors.
544
545         No new tests. There is no changed functionality. Only the annotation
546         and treatment of inline methods are altered.
547
548         * animation/AnimationTimeline.h:
549         (WebCore::AnimationTimeline::pause):
550         * page/CacheStorageProvider.h:
551         (): Deleted.
552         * page/scrolling/ScrollingTree.h:
553         (WebCore::ScrollingTree::reportSynchronousScrollingReasonsChanged):
554         (WebCore::ScrollingTree::reportExposedUnfilledArea):
555         * platform/audio/PlatformMediaSessionManager.h:
556         (WebCore::PlatformMediaSessionManager::hasActiveNowPlayingSession const):
557         (WebCore::PlatformMediaSessionManager::lastUpdatedNowPlayingTitle const):
558         (WebCore::PlatformMediaSessionManager::lastUpdatedNowPlayingDuration const):
559         (WebCore::PlatformMediaSessionManager::lastUpdatedNowPlayingElapsedTime const):
560         (WebCore::PlatformMediaSessionManager::lastUpdatedNowPlayingInfoUniqueIdentifier const):
561         (WebCore::PlatformMediaSessionManager::registeredAsNowPlayingApplication const):
562         * platform/audio/mac/CARingBuffer.cpp:
563         (WebCore::CARingBuffer::~CARingBuffer):
564         * platform/audio/mac/CARingBuffer.h:
565         (WebCore::CARingBuffer::~CARingBuffer): Deleted.
566         * platform/cocoa/VideoFullscreenModelVideoElement.h:
567         * platform/gamepad/GamepadProvider.h:
568         * platform/graphics/GraphicsLayer.h:
569         (WebCore::GraphicsLayer::displayListAsText const):
570         (WebCore::GraphicsLayer::setIsTrackingDisplayListReplay):
571         (WebCore::GraphicsLayer::isTrackingDisplayListReplay const):
572         (WebCore::GraphicsLayer::replayDisplayListAsText const):
573         * platform/mac/PlaybackSessionInterfaceMac.h:
574         * platform/mediastream/RealtimeMediaSourceCenter.h:
575         (WebCore::RealtimeMediaSourceCenter::setAudioFactory):
576         (WebCore::RealtimeMediaSourceCenter::unsetAudioFactory):
577         * platform/mediastream/libwebrtc/LibWebRTCProvider.cpp:
578         (WebCore::LibWebRTCProvider::setActive):
579         (WebCore::LibWebRTCProvider::createDecoderFactory):
580         (WebCore::LibWebRTCProvider::createEncoderFactory):
581         (WebCore::LibWebRTCProvider::disableEnumeratingAllNetworkInterfaces):
582         (WebCore::LibWebRTCProvider::enableEnumeratingAllNetworkInterfaces):
583         * platform/mediastream/libwebrtc/LibWebRTCProvider.h:
584         * platform/network/ResourceHandleClient.h:
585         (WebCore::ResourceHandleClient::willCacheResponseAsync):
586         * testing/MockGamepadProvider.h:
587         * workers/service/server/SWServer.h:
588         (WebCore::SWServer::Connection::~Connection):
589
590 2018-06-25  Zalan Bujtas  <zalan@apple.com>
591
592         [LFC] Adjust static position for out-of-flow positioned boxes.
593         https://bugs.webkit.org/show_bug.cgi?id=187000
594
595         Reviewed by Antti Koivisto.
596
597         The static position of an out-of-flow positioned box is the the position where box would go
598         if it was in-flow positioned. This position needs to the resolved in the containing block's coordinate system.
599
600         * layout/blockformatting/BlockFormattingContext.h:
601         * layout/blockformatting/BlockFormattingContextGeometry.cpp:
602         (WebCore::Layout::BlockFormattingContext::Geometry::inFlowReplacedWidthAndMargin):
603         (WebCore::Layout::BlockFormattingContext::Geometry::staticPositionForOutOfFlowPositioned):
604         (WebCore::Layout::BlockFormattingContext::Geometry::staticPosition):
605
606 2018-06-25  Brady Eidson  <beidson@apple.com>
607
608         Remove RELEASE_ASSERT added in r230875.
609         <rdar://problem/40860061> and https://bugs.webkit.org/show_bug.cgi?id=187022
610
611         Reviewed by Brent Fulgham.
612
613         There's actually more than one way for a network session to be destroyed, and that can happen
614         asynchronously and unpredictably.
615
616         And the request to start up a WebSocket and do its handshake is also asynchronous and unpredictable
617  
618         It's an expected race.
619
620         If the NetworkStorageSession cannot be found then the WebSocket handshake should just fail.
621
622         * platform/network/SocketStreamHandleImpl.cpp:
623         (WebCore::cookieDataForHandshake): If the NetworkStorageSession cannot be found, return std::nullopt.
624         (WebCore::SocketStreamHandleImpl::platformSendHandshake): If the cookieData is null, fail the handshake.
625
626 2018-06-25  Wenson Hsieh  <wenson_hsieh@apple.com>
627
628         [iPad apps on macOS] Web process crashes when attempting to play embedded YouTube video in News
629         https://bugs.webkit.org/show_bug.cgi?id=187011
630         <rdar://problem/40906808>
631
632         Reviewed by Tim Horton.
633
634         Disable remote media commands when running iOS WebKit on macOS. The iOS flavor of RemoteCommandListener
635         currently throws an exception when attempting to soft-link the MediaPlayer framework, which prevents video from
636         being played altogether. For a followup tracking touch bar integration in iOS WebKit on macOS, see:
637         <rdar://problem/39164732>.
638
639         Manually tested by playing a YouTube video in News.
640
641         * platform/RemoteCommandListener.cpp:
642         * platform/ios/RemoteCommandListenerIOS.h:
643         * platform/ios/RemoteCommandListenerIOS.mm:
644
645 2018-06-25  Keith Rollin  <krollin@apple.com>
646         Unreviewed, rolling out r233087.
647
648         Causes 5% Mac PLT regression.
649
650         Reverted changeset:
651
652         "Recalc styles every time defaultAppearance changes."
653         https://bugs.webkit.org/show_bug.cgi?id=186866
654         https://trac.webkit.org/changeset/233087
655
656 2018-06-25  Brent Fulgham  <bfulgham@apple.com>
657
658         REGRESSION(r229722): WebKitLegacy clients can crash when loading alternate page
659         https://bugs.webkit.org/show_bug.cgi?id=187008
660         
661         Reviewed by Chris Dumez.
662
663         The new call to 'clearProvisionalLoadForPolicyCheck' added in r229722 broke loading
664         behavior in WebKitLegacy.
665
666         1. We can now enter 'cancelPolicyCheckIfNeeded' without a Frame loader, in what appears
667            to be a recursive call during the load cancellation (the 'm_waitingForContentPolicy'
668            and 'm_waitingForNavigationPolicy' have already been nulled). It seems like we should
669            return early here, or perhaps just move the RELEASE_ASSERT inside the case where we
670            have an active policy check happening.
671
672         2. We also enter FrameLoader::checkContentPolicy without an active document loader. We
673            should recognize this case and handle it, rather than trying to dereference a nullptr
674            document loader.
675
676         * loader/DocumentLoader.cpp:
677         (WebCore::DocumentLoader::cancelPolicyCheckIfNeeded): Move the RELEASE_ASSERT inside the
678         conditional where the frameLoader is actually used.
679         * loader/FrameLoader.cpp:
680         (WebCore::FrameLoader::checkContentPolicy): Recognize that the activeDocumentLoader may
681         be nullptr at this point, and take appropriate action (rather than crashing).
682
683 2018-06-25  Simon Fraser  <simon.fraser@apple.com>
684
685         MatchedPropertiesCacheItem wastes 388KB of vector capacity on nytimes.com
686         https://bugs.webkit.org/show_bug.cgi?id=186990
687
688         Reviewed by Antti Koivisto.
689
690         MatchedPropertiesCacheItem.matchedProperties was appended to, so it allocated capacity
691         in 16-size chunks. Instead, assign to it so it only allocates as much capacity as is needed.
692         Copy-constructing is more wasteful, since it copies the 64-chunk size from the right-hand side.
693
694         * css/StyleResolver.cpp:
695         (WebCore::StyleResolver::addToMatchedPropertiesCache):
696         * css/StyleResolver.h:
697         (WebCore::StyleResolver::MatchedPropertiesCacheItem::MatchedPropertiesCacheItem):
698
699 2018-06-25  Chris Dumez  <cdumez@apple.com>
700
701         Null dereference crash un ApplicationCacheGroup::startLoadingEntry()
702         https://bugs.webkit.org/show_bug.cgi?id=187012
703         <rdar://problem/40793716>
704
705         Reviewed by Youenn Fablet.
706
707         m_entryLoader can be null because ApplicationCacheResourceLoader::create() return null when
708         CachedResourceLoader::requestRawResource() fails synchronously. In such case, the completion
709         handler gets called with a ApplicationCacheResourceLoader::Error::CannotRequestResource error.
710
711         To address the issue, we capture the request's URL in the lambda and use it instead of trying
712         to get the URL from the loader's resource.
713
714         * loader/appcache/ApplicationCacheGroup.cpp:
715         (WebCore::ApplicationCacheGroup::startLoadingEntry):
716
717 2018-06-25  Ross Kirsling  <ross.kirsling@sony.com>
718
719         REGRESSION (r233140): Windows build failure due to incomplete FrameView and RenderBox types
720         https://bugs.webkit.org/show_bug.cgi?id=186997
721
722         * animation/KeyframeEffectReadOnly.cpp:
723
724 2018-06-25  Antoine Quint  <graouts@apple.com>
725
726         REGRESSION: hardware-accelerated animation fails on inline element
727         https://bugs.webkit.org/show_bug.cgi?id=186981
728         <rdar://problem/41418697>
729
730         Reviewed by Dean Jackson.
731
732         Ensure we only queue accelerated actions when we have a renderer so we don't attempt
733         to start an accelerated animation too soon.
734
735         Test: webanimations/opacity-animation-yields-compositing-span.html
736
737         * animation/KeyframeEffectReadOnly.cpp:
738         (WebCore::KeyframeEffectReadOnly::updateAcceleratedAnimationState):
739
740 2018-06-25  David Kilzer  <ddkilzer@apple.com>
741
742         REGRESSION (r233140): v2: Windows build failure due to incomplete DocumentAnimationScheduler type
743         <https://webkit.org/b/186997>
744
745         * dom/Document.cpp:
746         (WebCore::Document::prepareForDestruction):
747         (WebCore::Document::windowScreenDidChange):
748         * dom/Document.h:
749         - DocumentAnimationScheduler is behind the
750           USE(REQUEST_ANIMATION_FRAME_DISPLAY_MONITOR) macro, which
751           is disabled on Windows.
752         - This also reverts my fix in r233144 since it didn't work.
753
754 2018-06-25  Youenn Fablet  <youenn@apple.com>
755
756         Add API to control mock media devices
757         https://bugs.webkit.org/show_bug.cgi?id=186958
758
759         Reviewed by Eric Carlson.
760
761         Refactor code to introduce a MockDevice structure that can be used in multiple processes.
762         Update mock sources and center to use MockDevice.
763         Add API to update mock media devices.
764
765         Make MediaDevices an ActiveDOMObject so that it does not get collected when ondevicechange is set.
766
767          Test: fast/mediastream/device-change-event-2.html
768
769         * Modules/mediastream/MediaDevices.cpp:
770         (WebCore::MediaDevices::MediaDevices):
771         (WebCore::MediaDevices::stop):
772         (WebCore::MediaDevices::scheduledEventTimerFired):
773         (WebCore::MediaDevices::hasPendingActivity const):
774         (WebCore::MediaDevices::activeDOMObjectName const):
775         (WebCore::MediaDevices::canSuspendForDocumentSuspension const):
776         * Modules/mediastream/MediaDevices.h:
777         * Modules/mediastream/MediaDevices.idl:
778         * WebCore.xcodeproj/project.pbxproj:
779         * platform/mediastream/RealtimeMediaSourceCenter.h:
780         * platform/mock/MockMediaDevice.h: Added.
781         (WebCore::MockMicrophoneProperties::encode const):
782         (WebCore::MockMicrophoneProperties::decode):
783         (WebCore::MockCameraProperties::encode const):
784         (WebCore::MockCameraProperties::decode):
785         (WebCore::MockDisplayProperties::encode const):
786         (WebCore::MockDisplayProperties::decode):
787         (WebCore::MockMediaDevice::isMicrophone const):
788         (WebCore::MockMediaDevice::isCamera const):
789         (WebCore::MockMediaDevice::isDisplay const):
790         (WebCore::MockMediaDevice::type const):
791         (WebCore::MockMediaDevice::encode const):
792         (WebCore::MockMediaDevice::decodeMockMediaDevice):
793         (WebCore::MockMediaDevice::decode):
794         * platform/mock/MockRealtimeAudioSource.cpp:
795         (WebCore::MockRealtimeAudioSource::startProducingData):
796         * platform/mock/MockRealtimeMediaSource.cpp:
797         (WebCore::defaultDevices):
798         (WebCore::devices):
799         (WebCore::deviceMap):
800         (WebCore::deviceListForDevice):
801         (WebCore::MockRealtimeMediaSource::createCaptureDevice):
802         (WebCore::MockRealtimeMediaSource::resetDevices):
803         (WebCore::MockRealtimeMediaSource::setDevices):
804         (WebCore::MockRealtimeMediaSource::addDevice):
805         (WebCore::MockRealtimeMediaSource::removeDevice):
806         (WebCore::MockRealtimeMediaSource::captureDeviceWithPersistentID):
807         (WebCore::MockRealtimeMediaSource::audioDevices):
808         (WebCore::MockRealtimeMediaSource::videoDevices):
809         (WebCore::MockRealtimeMediaSource::displayDevices):
810         (WebCore::MockRealtimeMediaSource::MockRealtimeMediaSource):
811         (WebCore::MockRealtimeMediaSource::initializeCapabilities):
812         (WebCore::MockRealtimeMediaSource::initializeSettings):
813         (WebCore::MockRealtimeMediaSource::settings const):
814         (WebCore::MockRealtimeMediaSource::supportedConstraints):
815         * platform/mock/MockRealtimeMediaSource.h:
816         (WebCore::MockRealtimeMediaSource::device const):
817         * platform/mock/MockRealtimeMediaSourceCenter.cpp:
818         (WebCore::MockRealtimeMediaSourceCenter::singleton):
819         (WebCore::MockRealtimeMediaSourceCenter::setMockRealtimeMediaSourceCenterEnabled):
820         (WebCore::MockRealtimeMediaSourceCenter::setDevices):
821         (WebCore::MockRealtimeMediaSourceCenter::addDevice):
822         (WebCore::MockRealtimeMediaSourceCenter::removeDevice):
823         * platform/mock/MockRealtimeMediaSourceCenter.h:
824         * platform/mock/MockRealtimeVideoSource.cpp:
825         (WebCore::MockRealtimeVideoSource::MockRealtimeVideoSource):
826         (WebCore::MockRealtimeVideoSource::initializeCapabilities):
827         (WebCore::MockRealtimeVideoSource::drawText):
828         (WebCore::MockRealtimeVideoSource::generateFrame):
829         * platform/mock/MockRealtimeVideoSource.h:
830         (WebCore::MockRealtimeVideoSource::mockCamera const):
831         (WebCore::MockRealtimeVideoSource::mockScreen const):
832
833 2018-06-25  Simon Fraser  <simon.fraser@apple.com>
834
835         AutoTableLayout wastes 52KB of Vector capacity on nytimes.com
836         https://bugs.webkit.org/show_bug.cgi?id=186710
837
838         Reviewed by Zalan Bujtas.
839         
840         Call resizeToFit() to only allocate enough capacity for the number of columns.
841
842         * rendering/AutoTableLayout.cpp:
843         (WebCore::AutoTableLayout::fullRecalc):
844         (WebCore::AutoTableLayout::insertSpanCell): Whitespace fix.
845         * rendering/AutoTableLayout.h:
846
847 2018-06-25  Zalan Bujtas  <zalan@apple.com>
848
849         [LFC] Adjust static position with containing block's content box top/left
850         https://bugs.webkit.org/show_bug.cgi?id=186999
851
852         Reviewed by Antti Koivisto.
853
854         * layout/blockformatting/BlockFormattingContextGeometry.cpp:
855         (WebCore::Layout::BlockFormattingContext::Geometry::staticPosition):
856         * layout/displaytree/DisplayBox.cpp:
857         (WebCore::Display::Box::contentBox const):
858         * layout/displaytree/DisplayBox.h:
859         (WebCore::Display::Box::contentBoxTop const):
860         (WebCore::Display::Box::contentBoxLeft const):
861
862 2018-06-25  David Kilzer  <ddkilzer@apple.com>
863
864         REGRESSION (r233140): Windows build failure due to incomplete DocumentAnimationScheduler type
865         <https://webkit.org/b/186997>
866
867         * dom/Document.cpp:
868         * dom/Document.h:
869         - Attempt to fix Windows build failure by moving include of
870           DocumentAnimationScheduler.h from Document.cpp to Document.h.
871
872 2018-06-25  Philippe Normand  <pnormand@igalia.com>
873
874         [GStreamer] Remove useless workaround
875         https://bugs.webkit.org/show_bug.cgi?id=186921
876
877         Reviewed by Xabier Rodriguez-Calvar.
878
879         In bug 67407 a workaround was added for GStreamer 0.10. With 1.x
880         the media/video-reverse-play-duration.html test passes without any
881         workaround needed. The other test mentioned in that bug was
882         removed, it seems.
883
884         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
885         (WebCore::MediaPlayerPrivateGStreamer::currentMediaTime const):
886
887 2018-06-24  Tomas Popela  <tpopela@redhat.com>
888
889         Unreviewed, address Darin's comment
890         https://bugs.webkit.org/show_bug.cgi?id=186757
891
892         * page/linux/ResourceUsageThreadLinux.cpp:
893         (WebCore::cpuPeriod):
894
895 2018-06-25  Antoine Quint  <graouts@apple.com>
896
897         [Web Animations] Make imported/mozilla/css-animations/test_animation-pausing.html pass reliably
898         https://bugs.webkit.org/show_bug.cgi?id=183826
899         <rdar://problem/40997412>
900
901         Reviewed by Dean Jackson.
902
903         The CSS Animations Level 2 specification defines that calling pause() on a CSSAnimation object is "sticky"
904         until a call to play() is made, meaning that any changes to the running state via the CSS animation-play-state
905         property is overridden by the stickiness of the pause() call. In this patch we add an m_stickyPaused flag which
906         is set in API calls to pause() and play(). While this flag is true, changes to the animation-play-state property
907         to the "running" value are ignored.
908
909         * animation/CSSAnimation.cpp:
910         (WebCore::CSSAnimation::syncPropertiesWithBackingAnimation):
911         (WebCore::CSSAnimation::bindingsPlay):
912         (WebCore::CSSAnimation::bindingsPause):
913         * animation/CSSAnimation.h:
914
915 2018-06-25  Antoine Quint  <graouts@apple.com>
916
917         [Web Animations] Ensure animations are updated prior to requestAnimationFrame callbacks
918         https://bugs.webkit.org/show_bug.cgi?id=186997
919         <rdar://problem/41419414>
920
921         Reviewed by Dean Jackson.
922
923         Some sub-tests of imported/mozilla/css-animations/test_animation-pausing.html clearly expect that animations
924         would be resolved prior to firing a requestAnimationFrame() callback, as the HTML5 event loop mandates. But until
925         now, both DocumentTimeline and ScriptedAnimationController would make calls to DisplayRefreshMonitorManager::scheduleAnimation()
926         that were not coordinated and so the order in which the DocumentTimeline and ScriptedAnimationController callbacks
927         were performed was not guaranteed.
928
929         In this patch we add a new DocumentAnimationScheduler class which is created by a Document to manage this specific
930         situation. Now DocumentTimeline and ScriptedAnimationController use this supporting object instead of being their
931         own DisplayRefreshMonitorClient and call scheduleWebAnimationsResolution() and scheduleScriptedAnimationResolution()
932         respectively to indicate the need to schedule an animation through the DisplayRefreshMonitorManager to serve the specific
933         needs of either, or both, classes. Then DocumentAnimationScheduler ensures that Web Animations resolution happens
934         prior to requestAnimationFrame callbacks when both are scheduled.
935
936         In the future we should be able to move more code from DocumentTimeline and ScriptedAnimationController over to
937         DocumentAnimationScheduler, such as support for throttling and using a timer-based fallback, but this patch provides
938         the minimal functionality required to provide a sounder foundation.
939
940         * Modules/webvr/VRDisplay.cpp:
941         (WebCore::VRDisplay::requestAnimationFrame):
942         * Sources.txt:
943         * WebCore.xcodeproj/project.pbxproj:
944         * animation/DocumentAnimationScheduler.cpp: Added.
945         (WebCore::DocumentAnimationScheduler::create):
946         (WebCore::DocumentAnimationScheduler::DocumentAnimationScheduler):
947         (WebCore::DocumentAnimationScheduler::detachFromDocument):
948         (WebCore::DocumentAnimationScheduler::scheduleWebAnimationsResolution):
949         (WebCore::DocumentAnimationScheduler::scheduleScriptedAnimationResolution):
950         (WebCore::DocumentAnimationScheduler::displayRefreshFired):
951         (WebCore::DocumentAnimationScheduler::windowScreenDidChange):
952         (WebCore::DocumentAnimationScheduler::createDisplayRefreshMonitor const):
953         * animation/DocumentAnimationScheduler.h: Copied from Source/WebCore/animation/CSSAnimation.h.
954         * animation/DocumentTimeline.cpp:
955         (WebCore::DocumentTimeline::create):
956         (WebCore::DocumentTimeline::DocumentTimeline):
957         (WebCore::DocumentTimeline::scheduleAnimationResolution):
958         (WebCore::DocumentTimeline::windowScreenDidChange): Deleted.
959         (WebCore::DocumentTimeline::createDisplayRefreshMonitor const): Deleted.
960         * animation/DocumentTimeline.h:
961         * dom/Document.cpp:
962         (WebCore::Document::prepareForDestruction):
963         (WebCore::Document::windowScreenDidChange):
964         (WebCore::Document::requestAnimationFrame):
965         (WebCore::Document::animationScheduler):
966         (WebCore::Document::timeline):
967         * dom/Document.h:
968         * dom/ScriptedAnimationController.cpp:
969         (WebCore::ScriptedAnimationController::ScriptedAnimationController):
970         (WebCore::ScriptedAnimationController::scheduleAnimation):
971         (WebCore::ScriptedAnimationController::documentAnimationSchedulerDidFire):
972         (WebCore::ScriptedAnimationController::windowScreenDidChange): Deleted.
973         (WebCore::ScriptedAnimationController::displayRefreshFired): Deleted.
974         (WebCore::ScriptedAnimationController::createDisplayRefreshMonitor const): Deleted.
975         * dom/ScriptedAnimationController.h:
976         (WebCore::ScriptedAnimationController::create):
977
978 2018-06-25  Zan Dobersek  <zdobersek@igalia.com>
979
980         [GCrypt] Zero-prefix (if necessary) output of RSA-based encryption and signing operations
981         https://bugs.webkit.org/show_bug.cgi?id=186967
982
983         Reviewed by Michael Catanzaro.
984
985         Output for RSA-based encryption and signing operations should match the
986         length of the RSA key. The way we retrieve the MPI data means libgcrypt
987         can ignore the high-bit zero values and leave us with a valid result
988         that's shorter in length compared to the RSA key. For instance, if the
989         output MPI fits into 2040 bits while a 2048-bit key was used we'll end
990         up with MPI data that will be fitted into a 255-byte Vector, one byte
991         short of the expected output length.
992
993         To avoid this, mpiZeroPrefixedData() is now used when retrieving output
994         of these RSA operations, and the value of the key size in bytes is
995         passed to it. This efficiently prepares the output Vector and then
996         copies the MPI data into it, respecting the MPI data length as well as
997         the desired length of the output.
998
999         No new tests -- relevant tests are now stable (i.e. not sporadically
1000         failing anymore), associated expectations are removed.
1001
1002         * crypto/gcrypt/CryptoAlgorithmECDHGCrypt.cpp:
1003         (WebCore::gcryptDerive): Also use mpiZeroPrefixedData().
1004         * crypto/gcrypt/CryptoAlgorithmRSAES_PKCS1_v1_5GCrypt.cpp:
1005         (WebCore::gcryptEncrypt):
1006         (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::platformEncrypt):
1007         * crypto/gcrypt/CryptoAlgorithmRSASSA_PKCS1_v1_5GCrypt.cpp:
1008         (WebCore::gcryptSign):
1009         (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::platformSign):
1010         * crypto/gcrypt/CryptoAlgorithmRSA_OAEPGCrypt.cpp:
1011         (WebCore::gcryptEncrypt):
1012         (WebCore::CryptoAlgorithmRSA_OAEP::platformEncrypt):
1013         * crypto/gcrypt/CryptoAlgorithmRSA_PSSGCrypt.cpp:
1014         (WebCore::gcryptSign):
1015         (WebCore::CryptoAlgorithmRSA_PSS::platformSign):
1016         * crypto/gcrypt/GCryptUtilities.h:
1017         (WebCore::mpiZeroPrefixedData):
1018
1019 2018-06-24  Simon Fraser  <simon.fraser@apple.com>
1020
1021         Fix the DUMP_NODE_STATISTICS code so that it compiles
1022         https://bugs.webkit.org/show_bug.cgi?id=186982
1023
1024         Reviewed by Anders Carlsson.
1025
1026         The DUMP_NODE_STATISTICS code had bitrotted. ENTITY_NODE no longer exists.
1027         liveNodeSet needs to be a static function with a NeverDestroyed<>.
1028
1029         * dom/Node.cpp:
1030         (WebCore::Node::dumpStatistics):
1031         (WebCore::Node::trackForDebugging):
1032         (WebCore::Node::~Node):
1033
1034 2018-06-24  Simon Fraser  <simon.fraser@apple.com>
1035
1036         Fix the composition underline to be transformed by -apple-color-filter
1037         https://bugs.webkit.org/show_bug.cgi?id=186983
1038         rdar://problem/40515558
1039
1040         Reviewed by Zalan Bujtas.
1041         
1042         Transform the composition underline color with the color filter.
1043
1044         Test: css3/color-filters/color-filter-composition-underline-color.html
1045
1046         * rendering/InlineTextBox.cpp:
1047         (WebCore::InlineTextBox::paintCompositionUnderline const):
1048
1049 2018-06-23  Zalan Bujtas  <zalan@apple.com>
1050
1051         [Mail] Use the Mail Viewer width as the base for resolving horizontal viewport units
1052         https://bugs.webkit.org/show_bug.cgi?id=186585
1053         <rdar://problem/30685325>
1054
1055         Reviewed by Tim Horton.
1056
1057         Use the existing "override viewport size for viewport units" mechanism to compute the preferred
1058         viewport unit values for the Mail Viewer html content. 
1059
1060         Test: fast/dynamic/mail-autosize-viewport-unit.html
1061
1062         * page/FrameView.cpp:
1063         (WebCore::FrameView::FrameView):
1064         (WebCore::FrameView::enableAutoSizeMode):
1065         (WebCore::FrameView::clearViewportSizeOverrideForCSSViewportUnits):
1066         (WebCore::FrameView::setViewportSizeForCSSViewportUnits):
1067         (WebCore::FrameView::overrideViewportSizeForCSSViewportUnits):
1068         (WebCore::FrameView::viewportSizeForCSSViewportUnits const):
1069         * page/FrameView.h:
1070
1071 2018-06-23  Zalan Bujtas  <zalan@apple.com>
1072
1073         [LFC] Relatively positioned renderer needs offsetting for validation
1074         https://bugs.webkit.org/show_bug.cgi?id=186959
1075
1076         Reviewed by Antti Koivisto.
1077
1078         * layout/FormattingContextGeometry.cpp:
1079         (WebCore::Layout::FormattingContext::Geometry::outOfFlowNonReplacedVerticalGeometry):
1080         * layout/Verification.cpp:
1081         (WebCore::Layout::outputMismatchingBoxInformationIfNeeded):
1082
1083 2018-06-23  Zalan Bujtas  <zalan@apple.com>
1084
1085         [LFC] Miscellaneous fixes to fix simple absolute positioning.
1086         https://bugs.webkit.org/show_bug.cgi?id=186962
1087
1088         Reviewed by Antti Koivisto.
1089
1090         1. Collect out-of-flow formatting root descendants.
1091         2. Remove invalid and redundant ASSERTs
1092           invalid because the assertion is missing border, padding etc.
1093           redundant becasue we assert on geometry correctness in validateGeometryConstraintsAfterLayout.  
1094
1095         * layout/FormattingContext.cpp:
1096         (WebCore::Layout::FormattingContext::computeOutOfFlowHorizontalGeometry const):
1097         (WebCore::Layout::FormattingContext::computeOutOfFlowVerticalGeometry const):
1098         (WebCore::Layout::FormattingContext::layoutOutOfFlowDescendants const):
1099         * layout/layouttree/LayoutContainer.cpp:
1100         (WebCore::Layout::Container::addOutOfFlowDescendant):
1101         (WebCore::Layout::Container::setOutOfFlowDescendants): Deleted.
1102         * layout/layouttree/LayoutContainer.h:
1103         * layout/layouttree/LayoutTreeBuilder.cpp:
1104         (WebCore::Layout::TreeBuilder::createSubTree):
1105
1106 2018-06-23  Yusuke Suzuki  <utatane.tea@gmail.com>
1107
1108         [WTF] Add user-defined literal for ASCIILiteral
1109         https://bugs.webkit.org/show_bug.cgi?id=186839
1110
1111         Reviewed by Darin Adler.
1112
1113         No behavior change.
1114
1115         * Modules/applicationmanifest/ApplicationManifestParser.cpp:
1116         (WebCore::ApplicationManifestParser::parseManifest):
1117         (WebCore::ApplicationManifestParser::logManifestPropertyNotAString):
1118         (WebCore::ApplicationManifestParser::logManifestPropertyInvalidURL):
1119         (WebCore::ApplicationManifestParser::logDeveloperWarning):
1120         (WebCore::ApplicationManifestParser::parseStartURL):
1121         (WebCore::ApplicationManifestParser::parseDisplay):
1122         (WebCore::ApplicationManifestParser::parseName):
1123         (WebCore::ApplicationManifestParser::parseDescription):
1124         (WebCore::ApplicationManifestParser::parseShortName):
1125         (WebCore::ApplicationManifestParser::parseScope):
1126         * Modules/beacon/NavigatorBeacon.cpp:
1127         (WebCore::NavigatorBeacon::logError):
1128         (WebCore::NavigatorBeacon::sendBeacon):
1129         * Modules/cache/DOMCache.cpp:
1130         (WebCore::DOMCache::requestFromInfo):
1131         (WebCore::DOMCache::addAll):
1132         (WebCore::DOMCache::put):
1133         * Modules/cache/DOMCacheEngine.cpp:
1134         (WebCore::DOMCacheEngine::errorToException):
1135         * Modules/credentialmanagement/BasicCredential.cpp:
1136         (WebCore::BasicCredential::type const):
1137         * Modules/credentialmanagement/CredentialsContainer.cpp:
1138         (WebCore::CredentialsContainer::get):
1139         (WebCore::CredentialsContainer::store):
1140         (WebCore::CredentialsContainer::isCreate):
1141         (WebCore::CredentialsContainer::preventSilentAccess const):
1142         * Modules/entriesapi/DOMFileSystem.cpp:
1143         (WebCore::DOMFileSystem::root):
1144         (WebCore::validatePathIsExpectedType):
1145         (WebCore::resolveRelativeVirtualPath):
1146         (WebCore::DOMFileSystem::getEntry):
1147         * Modules/entriesapi/FileSystemDirectoryEntry.cpp:
1148         (WebCore::FileSystemDirectoryEntry::getEntry):
1149         * Modules/entriesapi/FileSystemDirectoryReader.cpp:
1150         (WebCore::FileSystemDirectoryReader::readEntries):
1151         * Modules/fetch/FetchBody.cpp:
1152         (WebCore::FetchBody::consumeAsStream):
1153         * Modules/fetch/FetchBodyConsumer.cpp:
1154         (WebCore::FetchBodyConsumer::loadingFailed):
1155         * Modules/fetch/FetchBodyOwner.cpp:
1156         (WebCore::FetchBodyOwner::arrayBuffer):
1157         (WebCore::FetchBodyOwner::blob):
1158         (WebCore::FetchBodyOwner::consumeOnceLoadingFinished):
1159         (WebCore::FetchBodyOwner::formData):
1160         (WebCore::FetchBodyOwner::json):
1161         (WebCore::FetchBodyOwner::text):
1162         (WebCore::FetchBodyOwner::blobLoadingFailed):
1163         (WebCore::FetchBodyOwner::consumeBodyAsStream):
1164         * Modules/fetch/FetchHeaders.cpp:
1165         (WebCore::canWriteHeader):
1166         * Modules/fetch/FetchLoader.cpp:
1167         (WebCore::FetchLoader::startLoadingBlobURL):
1168         (WebCore::FetchLoader::start):
1169         * Modules/fetch/FetchRequest.cpp:
1170         (WebCore::setMethod):
1171         (WebCore::computeReferrer):
1172         (WebCore::buildOptions):
1173         (WebCore::FetchRequest::initializeOptions):
1174         (WebCore::FetchRequest::initializeWith):
1175         (WebCore::FetchRequest::setBody):
1176         (WebCore::FetchRequest::referrer const):
1177         (WebCore::FetchRequest::clone):
1178         * Modules/fetch/FetchResponse.cpp:
1179         (WebCore::FetchResponse::create):
1180         (WebCore::FetchResponse::redirect):
1181         (WebCore::FetchResponse::clone):
1182         (WebCore::FetchResponse::BodyLoader::didFail):
1183         * Modules/fetch/FetchResponse.h:
1184         * Modules/geolocation/GeoNotifier.cpp:
1185         (WebCore::GeoNotifier::timerFired):
1186         * Modules/geolocation/Geolocation.cpp:
1187         (WebCore::Geolocation::startRequest):
1188         (WebCore::Geolocation::requestUsesCachedPosition):
1189         (WebCore::Geolocation::makeCachedPositionCallbacks):
1190         (WebCore::Geolocation::setIsAllowed):
1191         (WebCore::Geolocation::cancelRequests):
1192         (WebCore::Geolocation::handlePendingPermissionNotifiers):
1193         * Modules/indexeddb/IDBCursor.cpp:
1194         (WebCore::IDBCursor::update):
1195         (WebCore::IDBCursor::advance):
1196         (WebCore::IDBCursor::continuePrimaryKey):
1197         (WebCore::IDBCursor::continueFunction):
1198         (WebCore::IDBCursor::deleteFunction):
1199         * Modules/indexeddb/IDBDatabase.cpp:
1200         (WebCore::IDBDatabase::createObjectStore):
1201         (WebCore::IDBDatabase::transaction):
1202         (WebCore::IDBDatabase::deleteObjectStore):
1203         * Modules/indexeddb/IDBFactory.cpp:
1204         (WebCore::IDBFactory::open):
1205         (WebCore::IDBFactory::openInternal):
1206         (WebCore::IDBFactory::deleteDatabase):
1207         (WebCore::IDBFactory::cmp):
1208         * Modules/indexeddb/IDBIndex.cpp:
1209         (WebCore::IDBIndex::setName):
1210         (WebCore::IDBIndex::openCursor):
1211         (WebCore::IDBIndex::openKeyCursor):
1212         (WebCore::IDBIndex::count):
1213         (WebCore::IDBIndex::doCount):
1214         (WebCore::IDBIndex::get):
1215         (WebCore::IDBIndex::doGet):
1216         (WebCore::IDBIndex::getKey):
1217         (WebCore::IDBIndex::doGetKey):
1218         (WebCore::IDBIndex::getAll):
1219         (WebCore::IDBIndex::getAllKeys):
1220         * Modules/indexeddb/IDBKeyData.cpp:
1221         (WebCore::IDBKeyData::loggingString const):
1222         * Modules/indexeddb/IDBKeyRangeData.cpp:
1223         (WebCore::IDBKeyRangeData::loggingString const):
1224         * Modules/indexeddb/IDBObjectStore.cpp:
1225         (WebCore::IDBObjectStore::setName):
1226         (WebCore::IDBObjectStore::openCursor):
1227         (WebCore::IDBObjectStore::openKeyCursor):
1228         (WebCore::IDBObjectStore::get):
1229         (WebCore::IDBObjectStore::getKey):
1230         (WebCore::IDBObjectStore::putOrAdd):
1231         (WebCore::IDBObjectStore::doDelete):
1232         (WebCore::IDBObjectStore::deleteFunction):
1233         (WebCore::IDBObjectStore::clear):
1234         (WebCore::IDBObjectStore::createIndex):
1235         (WebCore::IDBObjectStore::index):
1236         (WebCore::IDBObjectStore::deleteIndex):
1237         (WebCore::IDBObjectStore::count):
1238         (WebCore::IDBObjectStore::doCount):
1239         (WebCore::IDBObjectStore::getAll):
1240         (WebCore::IDBObjectStore::getAllKeys):
1241         * Modules/indexeddb/IDBRequest.cpp:
1242         (WebCore::IDBRequest::result const):
1243         (WebCore:: const):
1244         (WebCore::IDBRequest::uncaughtExceptionInEventHandler):
1245         * Modules/indexeddb/IDBTransaction.cpp:
1246         (WebCore::IDBTransaction::objectStore):
1247         (WebCore::IDBTransaction::abort):
1248         (WebCore::IDBTransaction::putOrAddOnServer):
1249         * Modules/indexeddb/server/IDBServer.cpp:
1250         (WebCore::IDBServer::IDBServer::performGetAllDatabaseNames):
1251         * Modules/indexeddb/server/MemoryIDBBackingStore.cpp:
1252         (WebCore::IDBServer::MemoryIDBBackingStore::deleteRange):
1253         (WebCore::IDBServer::MemoryIDBBackingStore::addRecord):
1254         (WebCore::IDBServer::MemoryIDBBackingStore::getRecord):
1255         (WebCore::IDBServer::MemoryIDBBackingStore::getAllRecords):
1256         (WebCore::IDBServer::MemoryIDBBackingStore::getIndexRecord):
1257         (WebCore::IDBServer::MemoryIDBBackingStore::getCount):
1258         (WebCore::IDBServer::MemoryIDBBackingStore::openCursor):
1259         (WebCore::IDBServer::MemoryIDBBackingStore::iterateCursor):
1260         * Modules/indexeddb/server/SQLiteIDBBackingStore.cpp:
1261         (WebCore::IDBServer::SQLiteIDBBackingStore::createAndPopulateInitialDatabaseInfo):
1262         (WebCore::IDBServer::SQLiteIDBBackingStore::extractExistingDatabaseInfo):
1263         (WebCore::IDBServer::SQLiteIDBBackingStore::databaseNameFromEncodedFilename):
1264         (WebCore::IDBServer::SQLiteIDBBackingStore::getOrEstablishDatabaseInfo):
1265         (WebCore::IDBServer::SQLiteIDBBackingStore::beginTransaction):
1266         (WebCore::IDBServer::SQLiteIDBBackingStore::abortTransaction):
1267         (WebCore::IDBServer::SQLiteIDBBackingStore::commitTransaction):
1268         (WebCore::IDBServer::SQLiteIDBBackingStore::createObjectStore):
1269         (WebCore::IDBServer::SQLiteIDBBackingStore::deleteObjectStore):
1270         (WebCore::IDBServer::SQLiteIDBBackingStore::renameObjectStore):
1271         (WebCore::IDBServer::SQLiteIDBBackingStore::clearObjectStore):
1272         (WebCore::IDBServer::SQLiteIDBBackingStore::createIndex):
1273         (WebCore::IDBServer::SQLiteIDBBackingStore::uncheckedHasIndexRecord):
1274         (WebCore::IDBServer::SQLiteIDBBackingStore::uncheckedPutIndexRecord):
1275         (WebCore::IDBServer::SQLiteIDBBackingStore::deleteIndex):
1276         (WebCore::IDBServer::SQLiteIDBBackingStore::renameIndex):
1277         (WebCore::IDBServer::SQLiteIDBBackingStore::keyExistsInObjectStore):
1278         (WebCore::IDBServer::SQLiteIDBBackingStore::deleteUnusedBlobFileRecords):
1279         (WebCore::IDBServer::SQLiteIDBBackingStore::deleteRecord):
1280         (WebCore::IDBServer::SQLiteIDBBackingStore::deleteRange):
1281         (WebCore::IDBServer::SQLiteIDBBackingStore::updateAllIndexesForAddRecord):
1282         (WebCore::IDBServer::SQLiteIDBBackingStore::addRecord):
1283         (WebCore::IDBServer::SQLiteIDBBackingStore::getBlobRecordsForObjectStoreRecord):
1284         (WebCore::IDBServer::SQLiteIDBBackingStore::getRecord):
1285         (WebCore::IDBServer::SQLiteIDBBackingStore::getAllObjectStoreRecords):
1286         (WebCore::IDBServer::SQLiteIDBBackingStore::getAllIndexRecords):
1287         (WebCore::IDBServer::SQLiteIDBBackingStore::getIndexRecord):
1288         (WebCore::IDBServer::SQLiteIDBBackingStore::uncheckedGetIndexRecordForOneKey):
1289         (WebCore::IDBServer::SQLiteIDBBackingStore::getCount):
1290         (WebCore::IDBServer::SQLiteIDBBackingStore::uncheckedGetKeyGeneratorValue):
1291         (WebCore::IDBServer::SQLiteIDBBackingStore::uncheckedSetKeyGeneratorValue):
1292         (WebCore::IDBServer::SQLiteIDBBackingStore::generateKeyNumber):
1293         (WebCore::IDBServer::SQLiteIDBBackingStore::revertGeneratedKeyNumber):
1294         (WebCore::IDBServer::SQLiteIDBBackingStore::maybeUpdateKeyGeneratorNumber):
1295         (WebCore::IDBServer::SQLiteIDBBackingStore::openCursor):
1296         (WebCore::IDBServer::SQLiteIDBBackingStore::iterateCursor):
1297         (WebCore::IDBServer::SQLiteIDBBackingStore::deleteBackingStore):
1298         * Modules/indexeddb/server/SQLiteIDBTransaction.cpp:
1299         (WebCore::IDBServer::SQLiteIDBTransaction::begin):
1300         (WebCore::IDBServer::SQLiteIDBTransaction::commit):
1301         (WebCore::IDBServer::SQLiteIDBTransaction::abort):
1302         * Modules/indexeddb/server/UniqueIDBDatabase.cpp:
1303         (WebCore::IDBServer::UniqueIDBDatabase::deleteObjectStore):
1304         (WebCore::IDBServer::UniqueIDBDatabase::renameObjectStore):
1305         (WebCore::IDBServer::UniqueIDBDatabase::deleteIndex):
1306         (WebCore::IDBServer::UniqueIDBDatabase::renameIndex):
1307         (WebCore::IDBServer::UniqueIDBDatabase::performPutOrAdd):
1308         (WebCore::IDBServer::UniqueIDBDatabase::commitTransaction):
1309         (WebCore::IDBServer::UniqueIDBDatabase::abortTransaction):
1310         * Modules/indexeddb/shared/IDBError.h:
1311         (WebCore::IDBError::userDeleteError):
1312         * Modules/indexeddb/shared/IDBTransactionInfo.cpp:
1313         (WebCore::IDBTransactionInfo::loggingString const):
1314         * Modules/mediastream/CanvasCaptureMediaStreamTrack.cpp:
1315         (WebCore::CanvasCaptureMediaStreamTrack::Source::canvasChanged):
1316         * Modules/mediastream/PeerConnectionBackend.cpp:
1317         (WebCore::PeerConnectionBackend::addIceCandidate):
1318         * Modules/mediastream/UserMediaRequest.cpp:
1319         (WebCore::UserMediaRequest::deny):
1320         * Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp:
1321         (WebCore::LibWebRTCMediaEndpoint::doSetLocalDescription):
1322         * Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.cpp:
1323         (WebCore::LibWebRTCPeerConnectionBackend::doAddIceCandidate):
1324         * Modules/paymentrequest/PaymentRequest.cpp:
1325         (WebCore::checkAndCanonicalizeTotal):
1326         (WebCore::PaymentRequest::create):
1327         * Modules/quota/DOMWindowQuota.cpp:
1328         (WebCore::DOMWindowQuota::webkitStorageInfo const):
1329         * Modules/webaudio/AudioBufferSourceNode.cpp:
1330         (WebCore::AudioBufferSourceNode::looping):
1331         (WebCore::AudioBufferSourceNode::setLooping):
1332         * Modules/webaudio/AudioNode.cpp:
1333         (WebCore::AudioNode::channelCountMode):
1334         (WebCore::AudioNode::channelInterpretation):
1335         * Modules/webaudio/MediaStreamAudioSource.cpp:
1336         (WebCore::MediaStreamAudioSource::MediaStreamAudioSource):
1337         * Modules/webauthn/AuthenticatorManager.cpp:
1338         (WebCore::AuthenticatorManagerInternal::produceClientDataJson):
1339         (WebCore::AuthenticatorManagerInternal::initTimeoutTimer):
1340         (WebCore::AuthenticatorManager::create const):
1341         (WebCore::AuthenticatorManager::discoverFromExternalSource const):
1342         (WebCore::AuthenticatorManager::isUserVerifyingPlatformAuthenticatorAvailable const):
1343         * Modules/webauthn/cocoa/LocalAuthenticator.mm:
1344         (WebCore::LocalAuthenticator::makeCredential):
1345         (WebCore::LocalAuthenticator::getAssertion):
1346         * Modules/webdatabase/DatabaseTracker.cpp:
1347         (WebCore::DatabaseTracker::usage):
1348         * Modules/websockets/WebSocket.cpp:
1349         (WebCore::WebSocket::connect):
1350         (WebCore::WebSocket::close):
1351         (WebCore::WebSocket::binaryType const):
1352         * Modules/websockets/WebSocketHandshake.cpp:
1353         (WebCore::WebSocketHandshake::readStatusLine):
1354         (WebCore::WebSocketHandshake::readHTTPHeaders):
1355         (WebCore::WebSocketHandshake::checkResponseHeaders):
1356         * Modules/webvr/VRDisplay.cpp:
1357         (WebCore::VRDisplay::requestPresent):
1358         (WebCore::VRDisplay::exitPresent):
1359         * accessibility/AccessibilityObject.cpp:
1360         (WebCore::AccessibilityObject::defaultLiveRegionStatusForRole):
1361         (WebCore::AccessibilityObject::invalidStatus const):
1362         * accessibility/AccessibilityRenderObject.cpp:
1363         (WebCore::AccessibilityRenderObject::textUnderElement const):
1364         * bindings/js/JSCustomElementInterface.cpp:
1365         (WebCore::constructCustomElementSynchronously):
1366         * bindings/js/JSCustomElementRegistryCustom.cpp:
1367         (WebCore::getCustomElementCallback):
1368         (WebCore::validateCustomElementNameAndThrowIfNeeded):
1369         (WebCore::JSCustomElementRegistry::define):
1370         * bindings/js/JSCustomXPathNSResolver.cpp:
1371         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
1372         * bindings/js/JSDOMConstructorBase.cpp:
1373         (WebCore::callThrowTypeError):
1374         * bindings/js/JSDOMConstructorBase.h:
1375         (WebCore::JSDOMConstructorBase::className):
1376         * bindings/js/JSDOMConstructorNotConstructable.h:
1377         (WebCore::JSDOMConstructorNotConstructable::callThrowTypeError):
1378         * bindings/js/JSDOMExceptionHandling.cpp:
1379         (WebCore::createDOMException):
1380         (WebCore::throwSequenceTypeError):
1381         (WebCore::throwNonFiniteTypeError):
1382         * bindings/js/JSDOMIterator.h:
1383         (WebCore::iteratorForEach):
1384         (WebCore::IteratorTraits>::next):
1385         * bindings/js/JSDOMWindowBase.cpp:
1386         (WebCore::isResponseCorrect):
1387         (WebCore::handleResponseOnStreamingAction):
1388         (WebCore::JSDOMWindowBase::compileStreaming):
1389         (WebCore::JSDOMWindowBase::instantiateStreaming):
1390         * bindings/js/JSDOMWindowCustom.cpp:
1391         (WebCore::JSDOMWindow::preventExtensions):
1392         (WebCore::JSDOMWindow::toStringName):
1393         * bindings/js/JSHTMLElementCustom.cpp:
1394         (WebCore::constructJSHTMLElement):
1395         * bindings/js/JSLocationCustom.cpp:
1396         (WebCore::JSLocation::preventExtensions):
1397         (WebCore::JSLocation::toStringName):
1398         * bindings/js/JSReadableStreamPrivateConstructors.cpp:
1399         (WebCore::constructJSReadableStreamDefaultController):
1400         (WebCore::constructJSReadableByteStreamController):
1401         (WebCore::constructJSReadableStreamBYOBRequest):
1402         * bindings/js/JSRemoteDOMWindowCustom.cpp:
1403         (WebCore::JSRemoteDOMWindow::preventExtensions):
1404         (WebCore::JSRemoteDOMWindow::toStringName):
1405         * bindings/js/ReadableStreamDefaultController.cpp:
1406         (WebCore::ReadableStreamDefaultController::invoke):
1407         * bindings/js/ScriptModuleLoader.cpp:
1408         (WebCore::resolveModuleSpecifier):
1409         (WebCore::ScriptModuleLoader::resolve):
1410         (WebCore::ScriptModuleLoader::fetch):
1411         (WebCore::ScriptModuleLoader::evaluate):
1412         (WebCore::ScriptModuleLoader::importModule):
1413         (WebCore::ScriptModuleLoader::notifyFinished):
1414         * bindings/js/SerializedScriptValue.cpp:
1415         (WebCore::maybeThrowExceptionIfSerializationFailed):
1416         * bindings/js/WorkerScriptController.cpp:
1417         (WebCore::WorkerScriptController::evaluate):
1418         * bindings/scripts/CodeGeneratorJS.pm:
1419         (GenerateDefaultValue):
1420         (GenerateConstructorHelperMethods):
1421         (GenerateCallTracer):
1422         * bindings/scripts/test/JS/JSInterfaceName.cpp:
1423         (WebCore::JSInterfaceNameConstructor::initializeProperties):
1424         * bindings/scripts/test/JS/JSMapLike.cpp:
1425         (WebCore::JSMapLikeConstructor::initializeProperties):
1426         * bindings/scripts/test/JS/JSReadOnlyMapLike.cpp:
1427         (WebCore::JSReadOnlyMapLikeConstructor::initializeProperties):
1428         * bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
1429         (WebCore::JSTestActiveDOMObjectConstructor::initializeProperties):
1430         * bindings/scripts/test/JS/JSTestCEReactions.cpp:
1431         (WebCore::JSTestCEReactionsConstructor::initializeProperties):
1432         * bindings/scripts/test/JS/JSTestCEReactionsStringifier.cpp:
1433         (WebCore::JSTestCEReactionsStringifierConstructor::initializeProperties):
1434         * bindings/scripts/test/JS/JSTestCallTracer.cpp:
1435         (WebCore::JSTestCallTracerConstructor::initializeProperties):
1436         (WebCore::jsTestCallTracerTestAttributeInterfaceGetter):
1437         (WebCore::setJSTestCallTracerTestAttributeInterfaceSetter):
1438         (WebCore::jsTestCallTracerTestAttributeSpecifiedGetter):
1439         (WebCore::setJSTestCallTracerTestAttributeSpecifiedSetter):
1440         (WebCore::jsTestCallTracerTestAttributeWithVariantGetter):
1441         (WebCore::setJSTestCallTracerTestAttributeWithVariantSetter):
1442         (WebCore::jsTestCallTracerPrototypeFunctionTestOperationInterfaceBody):
1443         (WebCore::jsTestCallTracerPrototypeFunctionTestOperationSpecifiedBody):
1444         (WebCore::jsTestCallTracerPrototypeFunctionTestOperationWithArgumentsBody):
1445         (WebCore::jsTestCallTracerPrototypeFunctionTestOperationWithNullableArgumentBody):
1446         (WebCore::jsTestCallTracerPrototypeFunctionTestOperationWithVariantArgumentBody):
1447         (WebCore::jsTestCallTracerPrototypeFunctionTestOperationWithNullableVariantArgumentBody):
1448         (WebCore::jsTestCallTracerPrototypeFunctionTestOperationWithOptionalVariantArgumentBody):
1449         (WebCore::jsTestCallTracerPrototypeFunctionTestOperationWithDefaultVariantArgumentBody):
1450         * bindings/scripts/test/JS/JSTestCallbackInterface.cpp:
1451         (WebCore::JSTestCallbackInterfaceConstructor::initializeProperties):
1452         * bindings/scripts/test/JS/JSTestClassWithJSBuiltinConstructor.cpp:
1453         (WebCore::JSTestClassWithJSBuiltinConstructorConstructor::initializeProperties):
1454         * bindings/scripts/test/JS/JSTestCustomConstructorWithNoInterfaceObject.cpp:
1455         (WebCore::JSTestCustomConstructorWithNoInterfaceObjectConstructor::initializeProperties):
1456         * bindings/scripts/test/JS/JSTestDOMJIT.cpp:
1457         (WebCore::JSTestDOMJITConstructor::initializeProperties):
1458         * bindings/scripts/test/JS/JSTestEnabledBySetting.cpp:
1459         (WebCore::JSTestEnabledBySettingConstructor::initializeProperties):
1460         * bindings/scripts/test/JS/JSTestEventConstructor.cpp:
1461         (WebCore::JSTestEventConstructorConstructor::initializeProperties):
1462         * bindings/scripts/test/JS/JSTestEventTarget.cpp:
1463         (WebCore::JSTestEventTargetConstructor::initializeProperties):
1464         * bindings/scripts/test/JS/JSTestException.cpp:
1465         (WebCore::JSTestExceptionConstructor::initializeProperties):
1466         * bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
1467         (WebCore::JSTestGenerateIsReachableConstructor::initializeProperties):
1468         * bindings/scripts/test/JS/JSTestGlobalObject.cpp:
1469         (WebCore::JSTestGlobalObjectConstructor::initializeProperties):
1470         * bindings/scripts/test/JS/JSTestIndexedSetterNoIdentifier.cpp:
1471         (WebCore::JSTestIndexedSetterNoIdentifierConstructor::initializeProperties):
1472         * bindings/scripts/test/JS/JSTestIndexedSetterThrowingException.cpp:
1473         (WebCore::JSTestIndexedSetterThrowingExceptionConstructor::initializeProperties):
1474         * bindings/scripts/test/JS/JSTestIndexedSetterWithIdentifier.cpp:
1475         (WebCore::JSTestIndexedSetterWithIdentifierConstructor::initializeProperties):
1476         * bindings/scripts/test/JS/JSTestInterface.cpp:
1477         (WebCore::JSTestInterfaceConstructor::construct):
1478         (WebCore::JSTestInterfaceConstructor::initializeProperties):
1479         * bindings/scripts/test/JS/JSTestInterfaceLeadingUnderscore.cpp:
1480         (WebCore::JSTestInterfaceLeadingUnderscoreConstructor::initializeProperties):
1481         * bindings/scripts/test/JS/JSTestIterable.cpp:
1482         (WebCore::JSTestIterableConstructor::initializeProperties):
1483         * bindings/scripts/test/JS/JSTestJSBuiltinConstructor.cpp:
1484         (WebCore::JSTestJSBuiltinConstructorConstructor::initializeProperties):
1485         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
1486         (WebCore::JSTestMediaQueryListListenerConstructor::initializeProperties):
1487         * bindings/scripts/test/JS/JSTestNamedAndIndexedSetterNoIdentifier.cpp:
1488         (WebCore::JSTestNamedAndIndexedSetterNoIdentifierConstructor::initializeProperties):
1489         * bindings/scripts/test/JS/JSTestNamedAndIndexedSetterThrowingException.cpp:
1490         (WebCore::JSTestNamedAndIndexedSetterThrowingExceptionConstructor::initializeProperties):
1491         * bindings/scripts/test/JS/JSTestNamedAndIndexedSetterWithIdentifier.cpp:
1492         (WebCore::JSTestNamedAndIndexedSetterWithIdentifierConstructor::initializeProperties):
1493         * bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
1494         (WebCore::JSTestNamedConstructorConstructor::initializeProperties):
1495         (WebCore::JSTestNamedConstructorNamedConstructor::construct):
1496         (WebCore::JSTestNamedConstructorNamedConstructor::initializeProperties):
1497         * bindings/scripts/test/JS/JSTestNamedDeleterNoIdentifier.cpp:
1498         (WebCore::JSTestNamedDeleterNoIdentifierConstructor::initializeProperties):
1499         * bindings/scripts/test/JS/JSTestNamedDeleterThrowingException.cpp:
1500         (WebCore::JSTestNamedDeleterThrowingExceptionConstructor::initializeProperties):
1501         * bindings/scripts/test/JS/JSTestNamedDeleterWithIdentifier.cpp:
1502         (WebCore::JSTestNamedDeleterWithIdentifierConstructor::initializeProperties):
1503         * bindings/scripts/test/JS/JSTestNamedDeleterWithIndexedGetter.cpp:
1504         (WebCore::JSTestNamedDeleterWithIndexedGetterConstructor::initializeProperties):
1505         * bindings/scripts/test/JS/JSTestNamedGetterCallWith.cpp:
1506         (WebCore::JSTestNamedGetterCallWithConstructor::initializeProperties):
1507         * bindings/scripts/test/JS/JSTestNamedGetterNoIdentifier.cpp:
1508         (WebCore::JSTestNamedGetterNoIdentifierConstructor::initializeProperties):
1509         * bindings/scripts/test/JS/JSTestNamedGetterWithIdentifier.cpp:
1510         (WebCore::JSTestNamedGetterWithIdentifierConstructor::initializeProperties):
1511         * bindings/scripts/test/JS/JSTestNamedSetterNoIdentifier.cpp:
1512         (WebCore::JSTestNamedSetterNoIdentifierConstructor::initializeProperties):
1513         * bindings/scripts/test/JS/JSTestNamedSetterThrowingException.cpp:
1514         (WebCore::JSTestNamedSetterThrowingExceptionConstructor::initializeProperties):
1515         * bindings/scripts/test/JS/JSTestNamedSetterWithIdentifier.cpp:
1516         (WebCore::JSTestNamedSetterWithIdentifierConstructor::initializeProperties):
1517         * bindings/scripts/test/JS/JSTestNamedSetterWithIndexedGetter.cpp:
1518         (WebCore::JSTestNamedSetterWithIndexedGetterConstructor::initializeProperties):
1519         * bindings/scripts/test/JS/JSTestNamedSetterWithIndexedGetterAndSetter.cpp:
1520         (WebCore::JSTestNamedSetterWithIndexedGetterAndSetterConstructor::initializeProperties):
1521         * bindings/scripts/test/JS/JSTestNamedSetterWithOverrideBuiltins.cpp:
1522         (WebCore::JSTestNamedSetterWithOverrideBuiltinsConstructor::initializeProperties):
1523         * bindings/scripts/test/JS/JSTestNamedSetterWithUnforgableProperties.cpp:
1524         (WebCore::JSTestNamedSetterWithUnforgablePropertiesConstructor::initializeProperties):
1525         * bindings/scripts/test/JS/JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltins.cpp:
1526         (WebCore::JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltinsConstructor::initializeProperties):
1527         * bindings/scripts/test/JS/JSTestNode.cpp:
1528         (WebCore::JSTestNodeConstructor::initializeProperties):
1529         * bindings/scripts/test/JS/JSTestObj.cpp:
1530         (WebCore::convertDictionary<TestObj::Dictionary>):
1531         (WebCore::JSTestObjConstructor::initializeProperties):
1532         (WebCore::jsTestObjPrototypeFunctionMethodWithOptionalStringAndDefaultValueBody):
1533         * bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
1534         (WebCore::JSTestOverloadedConstructorsConstructor::initializeProperties):
1535         * bindings/scripts/test/JS/JSTestOverloadedConstructorsWithSequence.cpp:
1536         (WebCore::JSTestOverloadedConstructorsWithSequenceConstructor::initializeProperties):
1537         * bindings/scripts/test/JS/JSTestOverrideBuiltins.cpp:
1538         (WebCore::JSTestOverrideBuiltinsConstructor::initializeProperties):
1539         * bindings/scripts/test/JS/JSTestPluginInterface.cpp:
1540         (WebCore::JSTestPluginInterfaceConstructor::initializeProperties):
1541         * bindings/scripts/test/JS/JSTestPromiseRejectionEvent.cpp:
1542         (WebCore::JSTestPromiseRejectionEventConstructor::initializeProperties):
1543         * bindings/scripts/test/JS/JSTestSerialization.cpp:
1544         (WebCore::JSTestSerializationConstructor::initializeProperties):
1545         * bindings/scripts/test/JS/JSTestSerializationIndirectInheritance.cpp:
1546         (WebCore::JSTestSerializationIndirectInheritanceConstructor::initializeProperties):
1547         * bindings/scripts/test/JS/JSTestSerializationInherit.cpp:
1548         (WebCore::JSTestSerializationInheritConstructor::initializeProperties):
1549         * bindings/scripts/test/JS/JSTestSerializationInheritFinal.cpp:
1550         (WebCore::JSTestSerializationInheritFinalConstructor::initializeProperties):
1551         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
1552         (WebCore::JSTestSerializedScriptValueInterfaceConstructor::initializeProperties):
1553         * bindings/scripts/test/JS/JSTestStringifier.cpp:
1554         (WebCore::JSTestStringifierConstructor::initializeProperties):
1555         * bindings/scripts/test/JS/JSTestStringifierAnonymousOperation.cpp:
1556         (WebCore::JSTestStringifierAnonymousOperationConstructor::initializeProperties):
1557         * bindings/scripts/test/JS/JSTestStringifierNamedOperation.cpp:
1558         (WebCore::JSTestStringifierNamedOperationConstructor::initializeProperties):
1559         * bindings/scripts/test/JS/JSTestStringifierOperationImplementedAs.cpp:
1560         (WebCore::JSTestStringifierOperationImplementedAsConstructor::initializeProperties):
1561         * bindings/scripts/test/JS/JSTestStringifierOperationNamedToString.cpp:
1562         (WebCore::JSTestStringifierOperationNamedToStringConstructor::initializeProperties):
1563         * bindings/scripts/test/JS/JSTestStringifierReadOnlyAttribute.cpp:
1564         (WebCore::JSTestStringifierReadOnlyAttributeConstructor::initializeProperties):
1565         * bindings/scripts/test/JS/JSTestStringifierReadWriteAttribute.cpp:
1566         (WebCore::JSTestStringifierReadWriteAttributeConstructor::initializeProperties):
1567         * bindings/scripts/test/JS/JSTestTypedefs.cpp:
1568         (WebCore::JSTestTypedefsConstructor::initializeProperties):
1569         * bridge/c/c_instance.cpp:
1570         (JSC::Bindings::CInstance::invokeMethod):
1571         (JSC::Bindings::CInstance::invokeDefaultMethod):
1572         (JSC::Bindings::CInstance::invokeConstruct):
1573         (JSC::Bindings::CInstance::stringValue const):
1574         (JSC::Bindings::CInstance::toJSPrimitive const):
1575         * bridge/objc/objc_instance.mm:
1576         (ObjcInstance::invokeMethod):
1577         * bridge/objc/objc_runtime.mm:
1578         (JSC::Bindings::ObjcArray::setValueAt const):
1579         * contentextensions/ContentExtensionsBackend.cpp:
1580         (WebCore::ContentExtensions::ContentExtensionsBackend::processContentExtensionRulesForLoad):
1581         * crypto/SubtleCrypto.cpp:
1582         (WebCore::rejectWithException):
1583         (WebCore::SubtleCrypto::encrypt):
1584         (WebCore::SubtleCrypto::decrypt):
1585         (WebCore::SubtleCrypto::sign):
1586         (WebCore::SubtleCrypto::verify):
1587         (WebCore::SubtleCrypto::deriveKey):
1588         (WebCore::SubtleCrypto::deriveBits):
1589         (WebCore::SubtleCrypto::exportKey):
1590         (WebCore::SubtleCrypto::wrapKey):
1591         (WebCore::SubtleCrypto::unwrapKey):
1592         * crypto/keys/CryptoKeyEC.cpp:
1593         (WebCore::CryptoKeyEC::algorithm const):
1594         * css/CSSInheritedValue.cpp:
1595         (WebCore::CSSInheritedValue::customCSSText const):
1596         * css/CSSInitialValue.cpp:
1597         (WebCore::CSSInitialValue::customCSSText const):
1598         * css/CSSKeyframesRule.cpp:
1599         (WebCore::CSSKeyframesRule::insertRule):
1600         * css/CSSRevertValue.cpp:
1601         (WebCore::CSSRevertValue::customCSSText const):
1602         * css/CSSStyleSheet.h:
1603         * css/CSSUnsetValue.cpp:
1604         (WebCore::CSSUnsetValue::customCSSText const):
1605         * css/CSSValueList.cpp:
1606         (WebCore::CSSValueList::customCSSText const):
1607         * css/DOMMatrixReadOnly.cpp:
1608         (WebCore::DOMMatrixReadOnly::validateAndFixup):
1609         (WebCore::DOMMatrixReadOnly::toFloat32Array const):
1610         (WebCore::DOMMatrixReadOnly::toFloat64Array const):
1611         (WebCore::DOMMatrixReadOnly::toString const):
1612         * css/DeprecatedCSSOMValueList.cpp:
1613         (WebCore::DeprecatedCSSOMValueList::cssText const):
1614         * css/FontFace.cpp:
1615         (WebCore::FontFace::create):
1616         (WebCore::FontFace::unicodeRange const):
1617         (WebCore::FontFace::featureSettings const):
1618         * css/MediaQuery.cpp:
1619         (WebCore::MediaQuery::serialize const):
1620         * css/PropertySetCSSStyleDeclaration.cpp:
1621         (WebCore::PropertySetCSSStyleDeclaration::getPropertyPriority):
1622         * css/WebKitCSSMatrix.cpp:
1623         (WebCore::WebKitCSSMatrix::toString const):
1624         * css/parser/MediaQueryParser.cpp:
1625         (WebCore::MediaQueryParser::commitMediaQuery):
1626         * dom/CDATASection.cpp:
1627         (WebCore::CDATASection::nodeName const):
1628         * dom/Comment.cpp:
1629         (WebCore::Comment::nodeName const):
1630         * dom/DOMException.cpp:
1631         (WebCore::DOMException::description const):
1632         (WebCore::DOMException::create):
1633         * dom/DOMException.h:
1634         (WebCore::DOMException::name):
1635         (WebCore::DOMException::message):
1636         * dom/DOMImplementation.cpp:
1637         (WebCore::DOMImplementation::createHTMLDocument):
1638         * dom/DataTransfer.cpp:
1639         (WebCore::DataTransfer::DataTransfer):
1640         (WebCore::DataTransfer::types const):
1641         (WebCore::DataTransfer::createForInputEvent):
1642         (WebCore::DataTransfer::dropEffect const):
1643         (WebCore::DataTransfer::effectAllowed const):
1644         * dom/DataTransferItem.cpp:
1645         (WebCore::DataTransferItem::kind const):
1646         * dom/Document.cpp:
1647         (WebCore::Document::suggestedMIMEType const):
1648         (WebCore::Document::contentType const):
1649         (WebCore::Document::nodeName const):
1650         (WebCore::Document::writeln):
1651         (WebCore::Document::canNavigate):
1652         (WebCore::Document::designMode const):
1653         (WebCore::Document::requestFullScreenForElement):
1654         * dom/DocumentFragment.cpp:
1655         (WebCore::DocumentFragment::nodeName const):
1656         * dom/InlineStyleSheetOwner.cpp:
1657         (WebCore::InlineStyleSheetOwner::createSheet):
1658         * dom/MouseEvent.cpp:
1659         (WebCore::MouseEvent::initMouseEventQuirk):
1660         * dom/ScriptElement.cpp:
1661         (WebCore::ScriptElement::requestModuleScript):
1662         * dom/ScriptElementCachedScriptFetcher.cpp:
1663         (WebCore::ScriptElementCachedScriptFetcher::requestModuleScript const):
1664         * dom/ScriptExecutionContext.cpp:
1665         (WebCore::ScriptExecutionContext::dispatchErrorEvent):
1666         * dom/ScriptedAnimationController.cpp:
1667         (WebCore::throttlingReasonsToString):
1668         * dom/Text.cpp:
1669         (WebCore::Text::nodeName const):
1670         * dom/TextEncoder.cpp:
1671         (WebCore::TextEncoder::encoding const):
1672         * dom/Traversal.cpp:
1673         (WebCore::NodeIteratorBase::acceptNode):
1674         * editing/EditCommand.cpp:
1675         (WebCore::inputTypeNameForEditingAction):
1676         * editing/Editing.cpp:
1677         (WebCore::createTabSpanElement):
1678         * editing/Editor.cpp:
1679         (WebCore::createDataTransferForClipboardEvent):
1680         * editing/EditorCommand.cpp:
1681         (WebCore::executeInsertBacktab):
1682         (WebCore::executeInsertLineBreak):
1683         (WebCore::executeInsertNewline):
1684         (WebCore::executeInsertTab):
1685         (WebCore::executeJustifyCenter):
1686         (WebCore::executeJustifyFull):
1687         (WebCore::executeJustifyLeft):
1688         (WebCore::executeJustifyRight):
1689         (WebCore::executeStrikethrough):
1690         (WebCore::executeSubscript):
1691         (WebCore::executeSuperscript):
1692         (WebCore::executeToggleBold):
1693         (WebCore::executeToggleItalic):
1694         (WebCore::executeUnderline):
1695         (WebCore::executeUnscript):
1696         (WebCore::stateBold):
1697         (WebCore::stateItalic):
1698         (WebCore::stateStrikethrough):
1699         (WebCore::stateSubscript):
1700         (WebCore::stateSuperscript):
1701         (WebCore::stateUnderline):
1702         (WebCore::stateJustifyCenter):
1703         (WebCore::stateJustifyFull):
1704         (WebCore::stateJustifyLeft):
1705         (WebCore::stateJustifyRight):
1706         (WebCore::Editor::Command::value const):
1707         * editing/SmartReplace.cpp:
1708         (WebCore::getSmartSet):
1709         * fileapi/FileCocoa.mm:
1710         (WebCore::File::computeNameAndContentTypeForReplacedFile):
1711         * html/BaseCheckableInputType.cpp:
1712         (WebCore::BaseCheckableInputType::saveFormControlState const):
1713         * html/BaseChooserOnlyDateAndTimeInputType.cpp:
1714         (WebCore::BaseChooserOnlyDateAndTimeInputType::updateInnerTextValue):
1715         * html/ColorInputType.cpp:
1716         (WebCore::ColorInputType::fallbackValue const):
1717         * html/DOMFormData.cpp:
1718         (WebCore::DOMFormData::createFileEntry):
1719         * html/FTPDirectoryDocument.cpp:
1720         (WebCore::processFilesizeString):
1721         (WebCore::FTPDirectoryDocumentParser::loadDocumentTemplate):
1722         * html/HTMLAnchorElement.cpp:
1723         (WebCore::HTMLAnchorElement::relList const):
1724         (WebCore::HTMLAnchorElement::isSystemPreviewLink const):
1725         * html/HTMLAppletElement.cpp:
1726         (WebCore::HTMLAppletElement::HTMLAppletElement):
1727         (WebCore::HTMLAppletElement::updateWidget):
1728         * html/HTMLCanvasElement.cpp:
1729         (WebCore::toEncodingMimeType):
1730         (WebCore::HTMLCanvasElement::toDataURL):
1731         (WebCore::HTMLCanvasElement::captureStream):
1732         * html/HTMLElement.cpp:
1733         (WebCore::HTMLElement::contentEditable const):
1734         * html/HTMLFormControlElement.cpp:
1735         (WebCore::shouldAutofocus):
1736         * html/HTMLHtmlElement.cpp:
1737         (WebCore::HTMLHtmlElement::insertedByParser):
1738         * html/HTMLKeygenElement.cpp:
1739         (WebCore::HTMLKeygenElement::keytype const):
1740         * html/HTMLMediaElement.cpp:
1741         (WebCore::HTMLMediaElement::canPlayType const):
1742         (WebCore::stringForNetworkState):
1743         (WebCore::HTMLMediaElement::preload const):
1744         (WebCore::HTMLMediaElement::ensureMediaControlsInjectedScript):
1745         * html/HTMLObjectElement.cpp:
1746         (WebCore::mapDataParamToSrc):
1747         * html/HTMLPlugInElement.cpp:
1748         (WebCore::HTMLPlugInElement::setReplacement):
1749         * html/ImageData.cpp:
1750         (WebCore::ImageData::create):
1751         * html/ImageDocument.cpp:
1752         (WebCore::ImageDocument::createDocumentStructure):
1753         * html/ImageInputType.cpp:
1754         (WebCore::ImageInputType::appendFormData const):
1755         * html/PluginDocument.cpp:
1756         (WebCore::PluginDocumentParser::createDocumentStructure):
1757         * html/canvas/WebGL2RenderingContext.cpp:
1758         (WebCore::WebGL2RenderingContext::getExtension):
1759         (WebCore::WebGL2RenderingContext::getSupportedExtensions):
1760         (WebCore::WebGL2RenderingContext::getParameter):
1761         * html/canvas/WebGLCompressedTextureASTC.cpp:
1762         (WebCore::WebGLCompressedTextureASTC::WebGLCompressedTextureASTC):
1763         (WebCore::WebGLCompressedTextureASTC::getSupportedProfiles):
1764         (WebCore::WebGLCompressedTextureASTC::supported):
1765         (WebCore::m_isLDRSupported): Deleted.
1766         * html/canvas/WebGLRenderingContext.cpp:
1767         (WebCore::WebGLRenderingContext::getExtension):
1768         (WebCore::WebGLRenderingContext::getSupportedExtensions):
1769         (WebCore::WebGLRenderingContext::getParameter):
1770         * html/canvas/WebGLRenderingContextBase.cpp:
1771         (WebCore::WebGLRenderingContextBase::create):
1772         (WebCore::WebGLRenderingContextBase::enableSupportedExtension):
1773         * html/canvas/WebGLRenderingContextBase.h:
1774         * html/canvas/WebGPUEnums.cpp:
1775         (WebCore::web3DCompareFunctionName):
1776         * html/parser/HTMLParserIdioms.cpp:
1777         (WebCore::parseCORSSettingsAttribute):
1778         * html/parser/HTMLPreloadScanner.cpp:
1779         (WebCore::TokenPreloadScanner::initiatorFor):
1780         * html/parser/HTMLResourcePreloader.cpp:
1781         (WebCore::PreloadRequest::resourceRequest):
1782         * html/parser/HTMLTreeBuilder.cpp:
1783         (WebCore::HTMLTreeBuilder::insertPhoneNumberLink):
1784         * html/track/DataCue.cpp:
1785         (WebCore::DataCue::toJSONString const):
1786         * html/track/InbandGenericTextTrack.cpp:
1787         (WebCore::InbandGenericTextTrack::updateCueFromCueData):
1788         * html/track/TextTrackCue.cpp:
1789         (WebCore::TextTrackCue::toJSON const):
1790         * html/track/TextTrackCueGeneric.cpp:
1791         (WebCore::TextTrackCueGeneric::toJSONString const):
1792         * html/track/TrackBase.cpp:
1793         (WebCore::TrackBase::setLanguage):
1794         * html/track/VTTCue.cpp:
1795         (WebCore::VTTCue::toJSON const):
1796         * inspector/CommandLineAPIModule.cpp:
1797         (WebCore::CommandLineAPIModule::CommandLineAPIModule):
1798         * inspector/InspectorCanvas.cpp:
1799         (WebCore::InspectorCanvas::getCanvasContentAsDataURL):
1800         (WebCore::InspectorCanvas::indexForData):
1801         (WebCore::InspectorCanvas::buildInitialState):
1802         (WebCore::InspectorCanvas::buildArrayForCanvasGradient):
1803         (WebCore::InspectorCanvas::buildArrayForCanvasPattern):
1804         * inspector/InspectorFrontendClient.h:
1805         (WebCore::InspectorFrontendClient::debuggableType):
1806         * inspector/InspectorFrontendClientLocal.cpp:
1807         (WebCore::InspectorFrontendClientLocal::openInNewTab):
1808         * inspector/InspectorFrontendHost.cpp:
1809         (WebCore::InspectorFrontendHost::userInterfaceLayoutDirection):
1810         (WebCore::InspectorFrontendHost::platform):
1811         (WebCore::InspectorFrontendHost::port):
1812         * inspector/InspectorOverlay.cpp:
1813         (WebCore::InspectorOverlay::setIndicating):
1814         (WebCore::InspectorOverlay::drawPaintRects):
1815         (WebCore::InspectorOverlay::drawRulers):
1816         (WebCore::appendPathSegment):
1817         * inspector/InspectorStyleSheet.h:
1818         (WebCore::InspectorCSSId::InspectorCSSId):
1819         * inspector/TimelineRecordFactory.cpp:
1820         (WebCore::TimelineRecordFactory::createGenericRecord):
1821         (WebCore::TimelineRecordFactory::createFunctionCallData):
1822         (WebCore::TimelineRecordFactory::createConsoleProfileData):
1823         (WebCore::TimelineRecordFactory::createProbeSampleData):
1824         (WebCore::TimelineRecordFactory::createEventDispatchData):
1825         (WebCore::TimelineRecordFactory::createGenericTimerData):
1826         (WebCore::TimelineRecordFactory::createTimerInstallData):
1827         (WebCore::TimelineRecordFactory::createEvaluateScriptData):
1828         (WebCore::TimelineRecordFactory::createTimeStampData):
1829         (WebCore::TimelineRecordFactory::createAnimationFrameData):
1830         (WebCore::TimelineRecordFactory::createPaintData):
1831         (WebCore::TimelineRecordFactory::appendLayoutRoot):
1832         * inspector/WebInjectedScriptHost.cpp:
1833         (WebCore::WebInjectedScriptHost::subtype):
1834         (WebCore::jsStringForPaymentRequestState):
1835         (WebCore::WebInjectedScriptHost::getInternalProperties):
1836         * inspector/agents/InspectorApplicationCacheAgent.cpp:
1837         (WebCore::InspectorApplicationCacheAgent::InspectorApplicationCacheAgent):
1838         * inspector/agents/InspectorCSSAgent.cpp:
1839         (WebCore::InspectorCSSAgent::InspectorCSSAgent):
1840         (WebCore::InspectorCSSAgent::getMatchedStylesForNode):
1841         (WebCore::InspectorCSSAgent::createStyleSheet):
1842         (WebCore::InspectorCSSAgent::addRule):
1843         (WebCore::InspectorCSSAgent::elementForId):
1844         (WebCore::InspectorCSSAgent::assertStyleSheetForId):
1845         * inspector/agents/InspectorCanvasAgent.cpp:
1846         (WebCore::InspectorCanvasAgent::InspectorCanvasAgent):
1847         (WebCore::InspectorCanvasAgent::requestNode):
1848         (WebCore::InspectorCanvasAgent::requestContent):
1849         (WebCore::InspectorCanvasAgent::resolveCanvasContext):
1850         (WebCore::InspectorCanvasAgent::startRecording):
1851         (WebCore::InspectorCanvasAgent::stopRecording):
1852         (WebCore::InspectorCanvasAgent::requestShaderSource):
1853         (WebCore::InspectorCanvasAgent::updateShader):
1854         (WebCore::InspectorCanvasAgent::setShaderProgramDisabled):
1855         (WebCore::InspectorCanvasAgent::setShaderProgramHighlighted):
1856         (WebCore::InspectorCanvasAgent::assertInspectorCanvas):
1857         (WebCore::InspectorCanvasAgent::assertInspectorProgram):
1858         * inspector/agents/InspectorDOMAgent.cpp:
1859         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
1860         (WebCore::InspectorDOMAgent::assertNode):
1861         (WebCore::InspectorDOMAgent::assertDocument):
1862         (WebCore::InspectorDOMAgent::assertElement):
1863         (WebCore::InspectorDOMAgent::assertEditableNode):
1864         (WebCore::InspectorDOMAgent::assertEditableElement):
1865         (WebCore::InspectorDOMAgent::getDocument):
1866         (WebCore::InspectorDOMAgent::pushNodeToFrontend):
1867         (WebCore::InspectorDOMAgent::requestChildNodes):
1868         (WebCore::InspectorDOMAgent::querySelector):
1869         (WebCore::InspectorDOMAgent::querySelectorAll):
1870         (WebCore::InspectorDOMAgent::releaseBackendNodeIds):
1871         (WebCore::InspectorDOMAgent::setAttributesAsText):
1872         (WebCore::InspectorDOMAgent::removeNode):
1873         (WebCore::InspectorDOMAgent::setOuterHTML):
1874         (WebCore::InspectorDOMAgent::insertAdjacentHTML):
1875         (WebCore::InspectorDOMAgent::setNodeValue):
1876         (WebCore::InspectorDOMAgent::setEventListenerDisabled):
1877         (WebCore::InspectorDOMAgent::performSearch):
1878         (WebCore::InspectorDOMAgent::getSearchResults):
1879         (WebCore::InspectorDOMAgent::highlightConfigFromInspectorObject):
1880         (WebCore::InspectorDOMAgent::highlightQuad):
1881         (WebCore::InspectorDOMAgent::highlightSelector):
1882         (WebCore::InspectorDOMAgent::highlightNode):
1883         (WebCore::InspectorDOMAgent::highlightNodeList):
1884         (WebCore::InspectorDOMAgent::moveTo):
1885         (WebCore::InspectorDOMAgent::focus):
1886         (WebCore::InspectorDOMAgent::setInspectedNode):
1887         (WebCore::InspectorDOMAgent::resolveNode):
1888         (WebCore::InspectorDOMAgent::pushNodeByPathToFrontend):
1889         (WebCore::InspectorDOMAgent::pushNodeByBackendIdToFrontend):
1890         * inspector/agents/InspectorDOMDebuggerAgent.cpp:
1891         (WebCore::InspectorDOMDebuggerAgent::InspectorDOMDebuggerAgent):
1892         (WebCore::InspectorDOMDebuggerAgent::setBreakpoint):
1893         (WebCore::InspectorDOMDebuggerAgent::removeBreakpoint):
1894         (WebCore::domTypeName):
1895         (WebCore::InspectorDOMDebuggerAgent::pauseOnNativeEventIfNeeded):
1896         * inspector/agents/InspectorDOMStorageAgent.cpp:
1897         (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
1898         (WebCore::InspectorDOMStorageAgent::getDOMStorageItems):
1899         (WebCore::InspectorDOMStorageAgent::setDOMStorageItem):
1900         (WebCore::InspectorDOMStorageAgent::removeDOMStorageItem):
1901         (WebCore::InspectorDOMStorageAgent::findStorageArea):
1902         * inspector/agents/InspectorDatabaseAgent.cpp:
1903         (WebCore::InspectorDatabaseAgent::InspectorDatabaseAgent):
1904         (WebCore::InspectorDatabaseAgent::getDatabaseTableNames):
1905         * inspector/agents/InspectorIndexedDBAgent.cpp:
1906         (WebCore::Inspector::idbKeyRangeFromKeyRange):
1907         (WebCore::InspectorIndexedDBAgent::InspectorIndexedDBAgent):
1908         (WebCore::InspectorIndexedDBAgent::requestData):
1909         * inspector/agents/InspectorLayerTreeAgent.cpp:
1910         (WebCore::InspectorLayerTreeAgent::InspectorLayerTreeAgent):
1911         (WebCore::InspectorLayerTreeAgent::layersForNode):
1912         (WebCore::InspectorLayerTreeAgent::reasonsForCompositingLayer):
1913         * inspector/agents/InspectorMemoryAgent.cpp:
1914         (WebCore::InspectorMemoryAgent::InspectorMemoryAgent):
1915         * inspector/agents/InspectorNetworkAgent.cpp:
1916         (WebCore::InspectorNetworkAgent::InspectorNetworkAgent):
1917         (WebCore::InspectorNetworkAgent::getResponseBody):
1918         (WebCore::InspectorNetworkAgent::loadResource):
1919         (WebCore::InspectorNetworkAgent::resolveWebSocket):
1920         (WebCore::InspectorNetworkAgent::createTextDecoder):
1921         (WebCore::InspectorNetworkAgent::searchInRequest):
1922         * inspector/agents/InspectorPageAgent.cpp:
1923         (WebCore::InspectorPageAgent::resourceContent):
1924         (WebCore::InspectorPageAgent::InspectorPageAgent):
1925         (WebCore::InspectorPageAgent::navigate):
1926         (WebCore::InspectorPageAgent::assertFrame):
1927         (WebCore::InspectorPageAgent::assertDocumentLoader):
1928         (WebCore::InspectorPageAgent::snapshotNode):
1929         (WebCore::InspectorPageAgent::snapshotRect):
1930         (WebCore::InspectorPageAgent::archive):
1931         * inspector/agents/InspectorTimelineAgent.cpp:
1932         (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
1933         (WebCore::InspectorTimelineAgent::setInstruments):
1934         (WebCore::InspectorTimelineAgent::startFromConsole):
1935         (WebCore::InspectorTimelineAgent::stopFromConsole):
1936         (WebCore::InspectorTimelineAgent::didCompleteRecordEntry):
1937         * inspector/agents/InspectorWorkerAgent.cpp:
1938         (WebCore::InspectorWorkerAgent::InspectorWorkerAgent):
1939         (WebCore::InspectorWorkerAgent::initialized):
1940         (WebCore::InspectorWorkerAgent::sendMessageToWorker):
1941         * inspector/agents/WebConsoleAgent.cpp:
1942         (WebCore::WebConsoleAgent::setLoggingChannelLevel):
1943         * inspector/agents/page/PageDebuggerAgent.cpp:
1944         (WebCore::PageDebuggerAgent::injectedScriptForEval):
1945         * inspector/agents/page/PageNetworkAgent.cpp:
1946         (WebCore::PageNetworkAgent::scriptExecutionContext):
1947         * inspector/agents/page/PageRuntimeAgent.cpp:
1948         (WebCore::PageRuntimeAgent::injectedScriptForEval):
1949         * inspector/agents/worker/ServiceWorkerAgent.cpp:
1950         (WebCore::ServiceWorkerAgent::ServiceWorkerAgent):
1951         * inspector/agents/worker/WorkerDebuggerAgent.cpp:
1952         (WebCore::WorkerDebuggerAgent::injectedScriptForEval):
1953         * inspector/agents/worker/WorkerRuntimeAgent.cpp:
1954         (WebCore::WorkerRuntimeAgent::injectedScriptForEval):
1955         * loader/ContentFilter.cpp:
1956         (WebCore::ContentFilter::handleProvisionalLoadFailure):
1957         * loader/CrossOriginAccessControl.cpp:
1958         (WebCore::passesAccessControlCheck):
1959         (WebCore::validatePreflightResponse):
1960         * loader/CrossOriginPreflightChecker.cpp:
1961         (WebCore::CrossOriginPreflightChecker::notifyFinished):
1962         (WebCore::CrossOriginPreflightChecker::doPreflight):
1963         * loader/DocumentLoader.cpp:
1964         (WebCore::isRemoteWebArchive):
1965         (WebCore::DocumentLoader::startIconLoading):
1966         * loader/DocumentThreadableLoader.cpp:
1967         (WebCore::DocumentThreadableLoader::reportRedirectionWithBadScheme):
1968         (WebCore::DocumentThreadableLoader::reportContentSecurityPolicyError):
1969         (WebCore::DocumentThreadableLoader::reportCrossOriginResourceSharingError):
1970         (WebCore::DocumentThreadableLoader::reportIntegrityMetadataError):
1971         * loader/FormSubmission.cpp:
1972         (WebCore::FormSubmission::Attributes::parseEncodingType):
1973         * loader/FormSubmission.h:
1974         (WebCore::FormSubmission::Attributes::methodString):
1975         * loader/FrameLoader.cpp:
1976         (WebCore::FrameLoader::initForSynthesizedDocument):
1977         (WebCore::FrameLoader::loadURLIntoChildFrame):
1978         (WebCore::FrameLoader::defaultSubstituteDataForURL):
1979         (WebCore::FrameLoader::addHTTPUpgradeInsecureRequestsIfNeeded):
1980         (WebCore::FrameLoader::dispatchBeforeUnloadEvent):
1981         * loader/LinkLoader.cpp:
1982         (WebCore::LinkLoader::preconnectIfNeeded):
1983         * loader/NavigationScheduler.cpp:
1984         (WebCore::NavigationScheduler::scheduleLocationChange):
1985         * loader/PingLoader.cpp:
1986         (WebCore::PingLoader::sendViolationReport):
1987         * loader/ResourceLoadStatistics.cpp:
1988         (WebCore::ResourceLoadStatistics::primaryDomain):
1989         (WebCore::ResourceLoadStatistics::areDomainsAssociated):
1990         * loader/ResourceLoader.cpp:
1991         (WebCore::ResourceLoader::loadDataURL):
1992         (WebCore::ResourceLoader::didBlockAuthenticationChallenge):
1993         * loader/SubresourceLoader.cpp:
1994         (WebCore::SubresourceLoader::willSendRequestInternal):
1995         (WebCore::SubresourceLoader::checkRedirectionCrossOriginAccessControl):
1996         * loader/ThreadableLoader.cpp:
1997         (WebCore::ThreadableLoader::logError):
1998         * loader/appcache/ApplicationCacheGroup.cpp:
1999         (WebCore::ApplicationCacheGroup::abort):
2000         (WebCore::ApplicationCacheGroup::didFinishLoadingEntry):
2001         (WebCore::ApplicationCacheGroup::didFinishLoadingManifest):
2002         (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):
2003         * loader/appcache/ApplicationCacheHost.cpp:
2004         (WebCore::ApplicationCacheHost::createFileURL):
2005         * loader/appcache/ManifestParser.cpp:
2006         (WebCore::parseManifest):
2007         * loader/archive/ArchiveFactory.cpp:
2008         (WebCore::createArchiveMIMETypesMap):
2009         * loader/cache/CachedResource.cpp:
2010         (WebCore::CachedResource::load):
2011         * loader/cache/CachedResourceLoader.cpp:
2012         (WebCore::CachedResourceLoader::canRequest):
2013         (WebCore::CachedResourceLoader::requestResource):
2014         * loader/cache/CachedResourceRequest.cpp:
2015         (WebCore::acceptHeaderValueFromType):
2016         (WebCore::CachedResourceRequest::updateAcceptEncodingHeader):
2017         * loader/cache/CachedScript.cpp:
2018         (WebCore::CachedScript::CachedScript):
2019         * loader/cache/MemoryCache.cpp:
2020         (WebCore::MemoryCache::getOriginsWithCache):
2021         * loader/soup/ResourceLoaderSoup.cpp:
2022         (WebCore::ResourceLoader::loadGResource):
2023         * page/DOMSelection.cpp:
2024         (WebCore::DOMSelection::type const):
2025         * page/DOMWindow.cpp:
2026         (WebCore::DOMWindow::close):
2027         (WebCore::DOMWindow::addEventListener):
2028         (WebCore::DOMWindow::createWindow):
2029         * page/DebugPageOverlays.cpp:
2030         (WebCore::touchEventRegionColors):
2031         * page/DiagnosticLoggingKeys.cpp:
2032         (WebCore::DiagnosticLoggingKeys::mediaLoadedKey):
2033         (WebCore::DiagnosticLoggingKeys::mediaLoadingFailedKey):
2034         (WebCore::DiagnosticLoggingKeys::memoryCacheEntryDecisionKey):
2035         (WebCore::DiagnosticLoggingKeys::memoryCacheUsageKey):
2036         (WebCore::DiagnosticLoggingKeys::missingValidatorFieldsKey):
2037         (WebCore::DiagnosticLoggingKeys::pluginLoadedKey):
2038         (WebCore::DiagnosticLoggingKeys::pluginLoadingFailedKey):
2039         (WebCore::DiagnosticLoggingKeys::postPageBackgroundingCPUUsageKey):
2040         (WebCore::DiagnosticLoggingKeys::postPageBackgroundingMemoryUsageKey):
2041         (WebCore::DiagnosticLoggingKeys::pageHandlesWebGLContextLossKey):
2042         (WebCore::DiagnosticLoggingKeys::postPageLoadCPUUsageKey):
2043         (WebCore::DiagnosticLoggingKeys::postPageLoadMemoryUsageKey):
2044         (WebCore::DiagnosticLoggingKeys::provisionalLoadKey):
2045         (WebCore::DiagnosticLoggingKeys::pageContainsPluginKey):
2046         (WebCore::DiagnosticLoggingKeys::pageContainsAtLeastOnePluginKey):
2047         (WebCore::DiagnosticLoggingKeys::pageContainsMediaEngineKey):
2048         (WebCore::DiagnosticLoggingKeys::pageContainsAtLeastOneMediaEngineKey):
2049         (WebCore::DiagnosticLoggingKeys::pageLoadedKey):
2050         (WebCore::DiagnosticLoggingKeys::playedKey):
2051         (WebCore::DiagnosticLoggingKeys::engineFailedToLoadKey):
2052         (WebCore::DiagnosticLoggingKeys::entryRightlyNotWarmedUpKey):
2053         (WebCore::DiagnosticLoggingKeys::entryWronglyNotWarmedUpKey):
2054         (WebCore::DiagnosticLoggingKeys::navigationKey):
2055         (WebCore::DiagnosticLoggingKeys::needsRevalidationKey):
2056         (WebCore::DiagnosticLoggingKeys::networkCacheKey):
2057         (WebCore::DiagnosticLoggingKeys::networkCacheFailureReasonKey):
2058         (WebCore::DiagnosticLoggingKeys::networkCacheUnusedReasonKey):
2059         (WebCore::DiagnosticLoggingKeys::networkCacheReuseFailureKey):
2060         (WebCore::DiagnosticLoggingKeys::networkKey):
2061         (WebCore::DiagnosticLoggingKeys::networkProcessCrashedKey):
2062         (WebCore::DiagnosticLoggingKeys::neverSeenBeforeKey):
2063         (WebCore::DiagnosticLoggingKeys::noKey):
2064         (WebCore::DiagnosticLoggingKeys::noCacheKey):
2065         (WebCore::DiagnosticLoggingKeys::noStoreKey):
2066         (WebCore::DiagnosticLoggingKeys::nonVisibleStateKey):
2067         (WebCore::DiagnosticLoggingKeys::notInMemoryCacheKey):
2068         (WebCore::DiagnosticLoggingKeys::pageCacheKey):
2069         (WebCore::DiagnosticLoggingKeys::pageCacheFailureKey):
2070         (WebCore::DiagnosticLoggingKeys::noDocumentLoaderKey):
2071         (WebCore::DiagnosticLoggingKeys::noLongerInCacheKey):
2072         (WebCore::DiagnosticLoggingKeys::otherKey):
2073         (WebCore::DiagnosticLoggingKeys::mainDocumentErrorKey):
2074         (WebCore::DiagnosticLoggingKeys::mainResourceKey):
2075         (WebCore::DiagnosticLoggingKeys::isErrorPageKey):
2076         (WebCore::DiagnosticLoggingKeys::isExpiredKey):
2077         (WebCore::DiagnosticLoggingKeys::isReloadIgnoringCacheDataKey):
2078         (WebCore::DiagnosticLoggingKeys::loadingKey):
2079         (WebCore::DiagnosticLoggingKeys::hasPluginsKey):
2080         (WebCore::DiagnosticLoggingKeys::httpsNoStoreKey):
2081         (WebCore::DiagnosticLoggingKeys::imageKey):
2082         (WebCore::DiagnosticLoggingKeys::inMemoryCacheKey):
2083         (WebCore::DiagnosticLoggingKeys::inactiveKey):
2084         (WebCore::DiagnosticLoggingKeys::internalErrorKey):
2085         (WebCore::DiagnosticLoggingKeys::invalidSessionIDKey):
2086         (WebCore::DiagnosticLoggingKeys::isAttachmentKey):
2087         (WebCore::DiagnosticLoggingKeys::isConditionalRequestKey):
2088         (WebCore::DiagnosticLoggingKeys::isDisabledKey):
2089         (WebCore::DiagnosticLoggingKeys::noCurrentHistoryItemKey):
2090         (WebCore::DiagnosticLoggingKeys::quirkRedirectComingKey):
2091         (WebCore::DiagnosticLoggingKeys::rawKey):
2092         (WebCore::DiagnosticLoggingKeys::redirectKey):
2093         (WebCore::DiagnosticLoggingKeys::isLoadingKey):
2094         (WebCore::DiagnosticLoggingKeys::documentLoaderStoppingKey):
2095         (WebCore::DiagnosticLoggingKeys::domainCausingCrashKey):
2096         (WebCore::DiagnosticLoggingKeys::domainCausingEnergyDrainKey):
2097         (WebCore::DiagnosticLoggingKeys::domainCausingJetsamKey):
2098         (WebCore::DiagnosticLoggingKeys::simulatedPageCrashKey):
2099         (WebCore::DiagnosticLoggingKeys::exceededActiveMemoryLimitKey):
2100         (WebCore::DiagnosticLoggingKeys::exceededInactiveMemoryLimitKey):
2101         (WebCore::DiagnosticLoggingKeys::exceededBackgroundCPULimitKey):
2102         (WebCore::DiagnosticLoggingKeys::domainVisitedKey):
2103         (WebCore::DiagnosticLoggingKeys::cannotSuspendActiveDOMObjectsKey):
2104         (WebCore::DiagnosticLoggingKeys::cpuUsageKey):
2105         (WebCore::DiagnosticLoggingKeys::createSharedBufferFailedKey):
2106         (WebCore::DiagnosticLoggingKeys::activeInForegroundTabKey):
2107         (WebCore::DiagnosticLoggingKeys::activeInBackgroundTabOnlyKey):
2108         (WebCore::DiagnosticLoggingKeys::applicationCacheKey):
2109         (WebCore::DiagnosticLoggingKeys::applicationManifestKey):
2110         (WebCore::DiagnosticLoggingKeys::audioKey):
2111         (WebCore::DiagnosticLoggingKeys::backNavigationDeltaKey):
2112         (WebCore::DiagnosticLoggingKeys::canCacheKey):
2113         (WebCore::DiagnosticLoggingKeys::cacheControlNoStoreKey):
2114         (WebCore::DiagnosticLoggingKeys::cachedResourceRevalidationKey):
2115         (WebCore::DiagnosticLoggingKeys::cachedResourceRevalidationReasonKey):
2116         (WebCore::DiagnosticLoggingKeys::deniedByClientKey):
2117         (WebCore::DiagnosticLoggingKeys::deviceMotionKey):
2118         (WebCore::DiagnosticLoggingKeys::deviceOrientationKey):
2119         (WebCore::DiagnosticLoggingKeys::diskCacheKey):
2120         (WebCore::DiagnosticLoggingKeys::diskCacheAfterValidationKey):
2121         (WebCore::DiagnosticLoggingKeys::reloadKey):
2122         (WebCore::DiagnosticLoggingKeys::replaceKey):
2123         (WebCore::DiagnosticLoggingKeys::retrievalRequestKey):
2124         (WebCore::DiagnosticLoggingKeys::resourceLoadedKey):
2125         (WebCore::DiagnosticLoggingKeys::resourceResponseSourceKey):
2126         (WebCore::DiagnosticLoggingKeys::retrievalKey):
2127         (WebCore::DiagnosticLoggingKeys::revalidatingKey):
2128         (WebCore::DiagnosticLoggingKeys::reloadFromOriginKey):
2129         (WebCore::DiagnosticLoggingKeys::reloadRevalidatingExpiredKey):
2130         (WebCore::DiagnosticLoggingKeys::sameLoadKey):
2131         (WebCore::DiagnosticLoggingKeys::scriptKey):
2132         (WebCore::DiagnosticLoggingKeys::serviceWorkerKey):
2133         (WebCore::DiagnosticLoggingKeys::streamingMedia):
2134         (WebCore::DiagnosticLoggingKeys::styleSheetKey):
2135         (WebCore::DiagnosticLoggingKeys::successfulSpeculativeWarmupWithRevalidationKey):
2136         (WebCore::DiagnosticLoggingKeys::successfulSpeculativeWarmupWithoutRevalidationKey):
2137         (WebCore::DiagnosticLoggingKeys::svgDocumentKey):
2138         (WebCore::DiagnosticLoggingKeys::synchronousMessageFailedKey):
2139         (WebCore::DiagnosticLoggingKeys::telemetryPageLoadKey):
2140         (WebCore::DiagnosticLoggingKeys::timedOutKey):
2141         (WebCore::DiagnosticLoggingKeys::canceledLessThan2SecondsKey):
2142         (WebCore::DiagnosticLoggingKeys::canceledLessThan5SecondsKey):
2143         (WebCore::DiagnosticLoggingKeys::canceledLessThan20SecondsKey):
2144         (WebCore::DiagnosticLoggingKeys::canceledMoreThan20SecondsKey):
2145         (WebCore::DiagnosticLoggingKeys::failedLessThan2SecondsKey):
2146         (WebCore::DiagnosticLoggingKeys::failedLessThan5SecondsKey):
2147         (WebCore::DiagnosticLoggingKeys::failedLessThan20SecondsKey):
2148         (WebCore::DiagnosticLoggingKeys::failedMoreThan20SecondsKey):
2149         (WebCore::DiagnosticLoggingKeys::occurredKey):
2150         (WebCore::DiagnosticLoggingKeys::succeededLessThan2SecondsKey):
2151         (WebCore::DiagnosticLoggingKeys::succeededLessThan5SecondsKey):
2152         (WebCore::DiagnosticLoggingKeys::succeededLessThan20SecondsKey):
2153         (WebCore::DiagnosticLoggingKeys::succeededMoreThan20SecondsKey):
2154         (WebCore::DiagnosticLoggingKeys::uncacheableStatusCodeKey):
2155         (WebCore::DiagnosticLoggingKeys::underMemoryPressureKey):
2156         (WebCore::DiagnosticLoggingKeys::unknownEntryRequestKey):
2157         (WebCore::DiagnosticLoggingKeys::unlikelyToReuseKey):
2158         (WebCore::DiagnosticLoggingKeys::unsupportedHTTPMethodKey):
2159         (WebCore::DiagnosticLoggingKeys::unsuspendableDOMObjectKey):
2160         (WebCore::DiagnosticLoggingKeys::unusedKey):
2161         (WebCore::DiagnosticLoggingKeys::unusedReasonCredentialSettingsKey):
2162         (WebCore::DiagnosticLoggingKeys::unusedReasonErrorKey):
2163         (WebCore::DiagnosticLoggingKeys::unusedReasonMustRevalidateNoValidatorKey):
2164         (WebCore::DiagnosticLoggingKeys::unusedReasonNoStoreKey):
2165         (WebCore::DiagnosticLoggingKeys::unusedReasonRedirectChainKey):
2166         (WebCore::DiagnosticLoggingKeys::unusedReasonReloadKey):
2167         (WebCore::DiagnosticLoggingKeys::unusedReasonTypeMismatchKey):
2168         (WebCore::DiagnosticLoggingKeys::usedKey):
2169         (WebCore::DiagnosticLoggingKeys::userZoomActionKey):
2170         (WebCore::DiagnosticLoggingKeys::varyingHeaderMismatchKey):
2171         (WebCore::DiagnosticLoggingKeys::videoKey):
2172         (WebCore::DiagnosticLoggingKeys::visibleNonActiveStateKey):
2173         (WebCore::DiagnosticLoggingKeys::visibleAndActiveStateKey):
2174         (WebCore::DiagnosticLoggingKeys::wastedSpeculativeWarmupWithRevalidationKey):
2175         (WebCore::DiagnosticLoggingKeys::wastedSpeculativeWarmupWithoutRevalidationKey):
2176         (WebCore::DiagnosticLoggingKeys::webViewKey):
2177         (WebCore::DiagnosticLoggingKeys::yesKey):
2178         (WebCore::DiagnosticLoggingKeys::expiredKey):
2179         (WebCore::DiagnosticLoggingKeys::fontKey):
2180         (WebCore::DiagnosticLoggingKeys::prunedDueToMemoryPressureKey):
2181         (WebCore::DiagnosticLoggingKeys::prunedDueToMaxSizeReached):
2182         (WebCore::DiagnosticLoggingKeys::prunedDueToProcessSuspended):
2183         (WebCore::WebCore::DiagnosticLoggingKeys::notHTTPFamilyKey):
2184         (WebCore::WebCore::DiagnosticLoggingKeys::webGLStateKey):
2185         (WebCore::DiagnosticLoggingKeys::memoryUsageToDiagnosticLoggingKey):
2186         (WebCore::DiagnosticLoggingKeys::foregroundCPUUsageToDiagnosticLoggingKey):
2187         (WebCore::DiagnosticLoggingKeys::backgroundCPUUsageToDiagnosticLoggingKey):
2188         (WebCore::DiagnosticLoggingKeys::resourceLoadStatisticsTelemetryKey):
2189         * page/DisabledAdaptations.cpp:
2190         (WebCore::watchAdaptationName):
2191         * page/EventHandler.cpp:
2192         (WebCore::EventHandler::handlePasteGlobalSelection):
2193         (WebCore::convertDragOperationToDropZoneOperation):
2194         * page/EventSource.cpp:
2195         (WebCore::EventSource::EventSource):
2196         * page/History.cpp:
2197         (WebCore::History::stateObjectAdded):
2198         * page/NavigatorBase.cpp:
2199         (WebCore::NavigatorBase::appName):
2200         (WebCore::NavigatorBase::appCodeName):
2201         * page/Page.cpp:
2202         (WebCore::Page::logNavigation):
2203         * page/PageDebuggable.cpp:
2204         (WebCore::PageDebuggable::url const):
2205         * page/PageSerializer.cpp:
2206         (WebCore::PageSerializer::serializeCSSStyleSheet):
2207         * page/PerformanceMark.h:
2208         * page/PerformanceMeasure.h:
2209         * page/PerformanceObserver.cpp:
2210         (WebCore::PerformanceObserver::observe):
2211         * page/PerformanceResourceTiming.cpp:
2212         (WebCore::PerformanceResourceTiming::PerformanceResourceTiming):
2213         * page/PerformanceUserTiming.cpp:
2214         (WebCore::restrictedMarkFunction):
2215         * page/PointerLockController.cpp:
2216         (WebCore::PointerLockController::requestPointerLock):
2217         * page/PrintContext.cpp:
2218         (WebCore::PrintContext::pageProperty):
2219         * page/SecurityOrigin.cpp:
2220         (WebCore::SecurityOrigin::toString const):
2221         * page/SecurityOriginData.cpp:
2222         (WebCore::SecurityOriginData::toString const):
2223         (WebCore::SecurityOriginData::databaseIdentifier const):
2224         * page/cocoa/ResourceUsageOverlayCocoa.mm:
2225         (WebCore::gcTimerString):
2226         * page/csp/ContentSecurityPolicy.cpp:
2227         (WebCore::ContentSecurityPolicy::reportViolation const):
2228         (WebCore::ContentSecurityPolicy::reportUnsupportedDirective const):
2229         * page/linux/ResourceUsageOverlayLinux.cpp:
2230         (WebCore::cpuUsageString):
2231         (WebCore::gcTimerString):
2232         * platform/ContentType.cpp:
2233         (WebCore::ContentType::codecsParameter):
2234         (WebCore::ContentType::profilesParameter):
2235         * platform/Decimal.cpp:
2236         (WebCore::Decimal::toString const):
2237         * platform/MIMETypeRegistry.cpp:
2238         (WebCore::initializeSupportedImageMIMETypes):
2239         (WebCore::typesForCommonExtension):
2240         (WebCore::initializeUnsupportedTextMIMETypes):
2241         (WebCore::MIMETypeRegistry::getNormalizedMIMEType):
2242         * platform/SchemeRegistry.cpp:
2243         (WebCore::SchemeRegistry::canServiceWorkersHandleURLScheme):
2244         * platform/URL.cpp:
2245         (WebCore::mimeTypeFromDataURL):
2246         * platform/UserAgentQuirks.cpp:
2247         (WebCore::UserAgentQuirks::stringForQuirk):
2248         * platform/cocoa/KeyEventCocoa.mm:
2249         (WebCore::keyForCharCode):
2250         * platform/cocoa/NetworkExtensionContentFilter.mm:
2251         (WebCore::NetworkExtensionContentFilter::unblockHandler const):
2252         * platform/cocoa/ParentalControlsContentFilter.mm:
2253         (WebCore::ParentalControlsContentFilter::unblockHandler const):
2254         * platform/cocoa/PasteboardCocoa.mm:
2255         (WebCore::Pasteboard::fileContentState):
2256         * platform/cocoa/RuntimeApplicationChecksCocoa.mm:
2257         (WebCore::MacApplication::isSafari):
2258         (WebCore::MacApplication::isAppleMail):
2259         (WebCore::MacApplication::isIBooks):
2260         (WebCore::MacApplication::isITunes):
2261         (WebCore::MacApplication::isMicrosoftMessenger):
2262         (WebCore::MacApplication::isAdobeInstaller):
2263         (WebCore::MacApplication::isAOLInstantMessenger):
2264         (WebCore::MacApplication::isMicrosoftMyDay):
2265         (WebCore::MacApplication::isMicrosoftOutlook):
2266         (WebCore::MacApplication::isQuickenEssentials):
2267         (WebCore::MacApplication::isAperture):
2268         (WebCore::MacApplication::isVersions):
2269         (WebCore::MacApplication::isHRBlock):
2270         (WebCore::MacApplication::isIAdProducer):
2271         (WebCore::MacApplication::isSolidStateNetworksDownloader):
2272         (WebCore::IOSApplication::isMobileMail):
2273         (WebCore::IOSApplication::isMobileSafari):
2274         (WebCore::IOSApplication::isWebBookmarksD):
2275         (WebCore::IOSApplication::isDumpRenderTree):
2276         (WebCore::IOSApplication::isMobileStore):
2277         (WebCore::IOSApplication::isSpringBoard):
2278         (WebCore::IOSApplication::isWebApp):
2279         (WebCore::IOSApplication::isIBooks):
2280         (WebCore::IOSApplication::isIBooksStorytime):
2281         (WebCore::IOSApplication::isTheSecretSocietyHiddenMystery):
2282         (WebCore::IOSApplication::isCardiogram):
2283         (WebCore::IOSApplication::isNike):
2284         * platform/cocoa/UserAgentCocoa.mm:
2285         (WebCore::userAgentBundleVersion):
2286         * platform/gamepad/cocoa/GameControllerGamepad.mm:
2287         (WebCore::GameControllerGamepad::setupAsExtendedGamepad):
2288         (WebCore::GameControllerGamepad::setupAsGamepad):
2289         * platform/graphics/InbandTextTrackPrivateClient.h:
2290         (WebCore::GenericCueData::toJSONString const):
2291         * platform/graphics/avfoundation/CDMFairPlayStreaming.cpp:
2292         (WebCore::CDMFactoryFairPlayStreaming::supportsKeySystem):
2293         * platform/graphics/avfoundation/objc/CDMInstanceFairPlayStreamingAVFObjC.mm:
2294         (WebCore::isEqual):
2295         (WebCore::CDMInstanceFairPlayStreamingAVFObjC::updateLicense):
2296         (WebCore::CDMInstanceFairPlayStreamingAVFObjC::keySystem const):
2297         * platform/graphics/avfoundation/objc/CDMSessionAVContentKeySession.mm:
2298         (WebCore::CDMSessionAVContentKeySession::generateKeyRequest):
2299         * platform/graphics/avfoundation/objc/CDMSessionAVStreamSession.mm:
2300         (WebCore::CDMSessionAVStreamSession::generateKeyRequest):
2301         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
2302         (WebCore::MediaPlayerPrivateAVFoundationObjC::shouldWaitForLoadingOfResource):
2303         * platform/graphics/ca/GraphicsLayerCA.cpp:
2304         (WebCore::propertyIdToString):
2305         * platform/graphics/ca/TileController.cpp:
2306         (WebCore::TileController::tileGridContainerLayerName):
2307         (WebCore::TileController::zoomedOutTileGridContainerLayerName):
2308         * platform/graphics/cg/ImageBufferCG.cpp:
2309         (WebCore::ImageBuffer::toDataURL const):
2310         (WebCore::dataURL):
2311         * platform/graphics/cv/VideoTextureCopierCV.cpp:
2312         (WebCore::VideoTextureCopierCV::initializeContextObjects):
2313         (WebCore::VideoTextureCopierCV::initializeUVContextObjects):
2314         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
2315         (WebCore::MediaPlayerPrivateGStreamerBase::handleSyncMessage):
2316         (WebCore::MediaPlayerPrivateGStreamerBase::initializationDataEncountered):
2317         * platform/graphics/iso/ISOVTTCue.cpp:
2318         (WebCore::ISOWebVTTCue::toJSONString const):
2319         * platform/graphics/nicosia/NicosiaPaintingEngineThreaded.cpp:
2320         (Nicosia::PaintingEngineThreaded::PaintingEngineThreaded):
2321         * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:
2322         (WebCore::Extensions3DOpenGLCommon::initializeAvailableExtensions):
2323         * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
2324         (WebCore::GraphicsContext3D::getUnmangledInfoLog):
2325         * platform/graphics/texmap/TextureMapperContextAttributes.cpp:
2326         (WebCore::TextureMapperContextAttributes::get):
2327         * platform/graphics/win/ImageBufferDirect2D.cpp:
2328         (WebCore::ImageBuffer::toDataURL const):
2329         (WebCore::ImageDataToDataURL):
2330         * platform/gtk/PasteboardGtk.cpp:
2331         (WebCore::Pasteboard::typesForLegacyUnsafeBindings):
2332         * platform/gtk/PasteboardHelper.cpp:
2333         * platform/gtk/PlatformKeyboardEventGtk.cpp:
2334         (WebCore::PlatformKeyboardEvent::keyValueForGdkKeyCode):
2335         (WebCore::PlatformKeyboardEvent::keyCodeForHardwareKeyCode):
2336         * platform/image-decoders/bmp/BMPImageDecoder.h:
2337         * platform/image-decoders/gif/GIFImageDecoder.h:
2338         * platform/image-decoders/ico/ICOImageDecoder.h:
2339         * platform/image-decoders/jpeg/JPEGImageDecoder.h:
2340         * platform/image-decoders/png/PNGImageDecoder.h:
2341         * platform/image-decoders/webp/WEBPImageDecoder.h:
2342         * platform/ios/Device.cpp:
2343         (WebCore::deviceName):
2344         * platform/ios/PasteboardIOS.mm:
2345         (WebCore::Pasteboard::addHTMLClipboardTypesForCocoaType):
2346         * platform/ios/PlatformEventFactoryIOS.mm:
2347         (WebCore::keyForKeyEvent):
2348         (WebCore::codeForKeyEvent):
2349         * platform/ios/PlatformPasteboardIOS.mm:
2350         (WebCore::safeTypeForDOMToReadAndWriteForPlatformType):
2351         * platform/mac/PasteboardMac.mm:
2352         (WebCore::Pasteboard::read):
2353         (WebCore::Pasteboard::addHTMLClipboardTypesForCocoaType):
2354         * platform/mac/PlatformEventFactoryMac.mm:
2355         (WebCore::keyForKeyEvent):
2356         (WebCore::codeForKeyEvent):
2357         * platform/mac/PlatformPasteboardMac.mm:
2358         (WebCore::safeTypeForDOMToReadAndWriteForPlatformType):
2359         * platform/mediastream/MediaConstraints.cpp:
2360         (WebCore::addDefaultVideoConstraints):
2361         * platform/mediastream/PeerMediaDescription.h:
2362         * platform/mediastream/RealtimeMediaSource.cpp:
2363         (WebCore::RealtimeMediaSource::applyConstraints):
2364         * platform/mediastream/mac/DisplayCaptureManagerCocoa.cpp:
2365         (WebCore::DisplayCaptureManagerCocoa::screenCaptureDeviceWithPersistentID):
2366         * platform/mock/MockRealtimeMediaSource.cpp:
2367         (WebCore::deviceMap):
2368         (WebCore::MockRealtimeMediaSource::audioDevices):
2369         (WebCore::MockRealtimeMediaSource::videoDevices):
2370         (WebCore::MockRealtimeMediaSource::displayDevices):
2371         * platform/mock/MockRealtimeVideoSource.cpp:
2372         (WebCore::MockRealtimeVideoSource::drawText):
2373         * platform/network/BlobRegistryImpl.cpp:
2374         (WebCore::BlobRegistryImpl::writeBlobsToTemporaryFiles):
2375         * platform/network/DataURLDecoder.cpp:
2376         (WebCore::DataURLDecoder::parseMediaType):
2377         * platform/network/FormData.cpp:
2378         (WebCore::FormData::appendMultiPartFileValue):
2379         * platform/network/HTTPParsers.cpp:
2380         (WebCore::parseHTTPRequestLine):
2381         (WebCore::parseHTTPHeader):
2382         (WebCore::normalizeHTTPMethod):
2383         * platform/network/ResourceRequestBase.cpp:
2384         (WebCore::ResourceRequestBase::redirectedRequest const):
2385         * platform/network/ResourceRequestBase.h:
2386         (WebCore::ResourceRequestBase::ResourceRequestBase):
2387         * platform/network/curl/ResourceHandleCurl.cpp:
2388         (WebCore::ResourceHandle::handleDataURL):
2389         * platform/network/curl/SynchronousLoaderClientCurl.cpp:
2390         (WebCore::SynchronousLoaderClient::platformBadResponseError):
2391         * platform/network/win/DownloadBundleWin.cpp:
2392         (WebCore::DownloadBundle::fileExtension):
2393         * platform/sql/SQLiteDatabase.cpp:
2394         (WebCore::SQLiteDatabase::open):
2395         (WebCore::SQLiteDatabase::setFullsync):
2396         (WebCore::SQLiteDatabase::maximumSize):
2397         (WebCore::SQLiteDatabase::pageSize):
2398         (WebCore::SQLiteDatabase::freeSpaceSize):
2399         (WebCore::SQLiteDatabase::totalSize):
2400         (WebCore::SQLiteDatabase::clearAllTables):
2401         (WebCore::SQLiteDatabase::runVacuumCommand):
2402         (WebCore::SQLiteDatabase::runIncrementalVacuumCommand):
2403         (WebCore::SQLiteDatabase::turnOnIncrementalAutoVacuum):
2404         * platform/sql/SQLiteFileSystem.cpp:
2405         (WebCore::SQLiteFileSystem::deleteDatabaseFile):
2406         * platform/text/LocaleICU.cpp:
2407         (WebCore::LocaleICU::dateFormat):
2408         (WebCore::getFormatForSkeleton):
2409         * platform/text/LocaleNone.cpp:
2410         (WebCore::LocaleNone::dateFormat):
2411         (WebCore::LocaleNone::monthFormat):
2412         (WebCore::LocaleNone::shortMonthFormat):
2413         (WebCore::LocaleNone::timeFormat):
2414         (WebCore::LocaleNone::shortTimeFormat):
2415         (WebCore::LocaleNone::dateTimeFormatWithSeconds):
2416         (WebCore::LocaleNone::dateTimeFormatWithoutSeconds):
2417         * platform/text/LocaleToScriptMappingDefault.cpp:
2418         (WebCore::scriptNameToCode):
2419         (WebCore::localeToScriptCodeForFontSelection):
2420         * platform/text/TextEncodingRegistry.cpp:
2421         (WebCore::defaultTextEncodingNameForSystemLanguage):
2422         * platform/win/FileSystemWin.cpp:
2423         (WebCore::FileSystem::bundleName):
2424         * platform/wpe/RenderThemeWPE.cpp:
2425         (WebCore::RenderThemeWPE::mediaControlsStyleSheet):
2426         * rendering/RenderMenuList.cpp:
2427         (RenderMenuList::setText):
2428         * rendering/RenderThemeIOS.mm:
2429         (WebCore::RenderThemeIOS::extraDefaultStyleSheet):
2430         * svg/SVGComponentTransferFunctionElement.h:
2431         (WebCore::SVGPropertyTraits<ComponentTransferType>::toString):
2432         * svg/SVGFEColorMatrixElement.h:
2433         (WebCore::SVGPropertyTraits<ColorMatrixType>::toString):
2434         * svg/SVGFECompositeElement.h:
2435         (WebCore::SVGPropertyTraits<CompositeOperationType>::toString):
2436         * svg/SVGFEConvolveMatrixElement.h:
2437         (WebCore::SVGPropertyTraits<EdgeModeType>::toString):
2438         * svg/SVGFEDisplacementMapElement.h:
2439         (WebCore::SVGPropertyTraits<ChannelSelectorType>::toString):
2440         * svg/SVGFEMorphologyElement.h:
2441         (WebCore::SVGPropertyTraits<MorphologyOperatorType>::toString):
2442         * svg/SVGFETurbulenceElement.h:
2443         (WebCore::SVGPropertyTraits<SVGStitchOptions>::toString):
2444         (WebCore::SVGPropertyTraits<TurbulenceType>::toString):
2445         * svg/SVGGradientElement.h:
2446         (WebCore::SVGPropertyTraits<SVGSpreadMethodType>::toString):
2447         * svg/SVGLocatable.cpp:
2448         (WebCore::SVGLocatable::getTransformToElement):
2449         * svg/SVGMarkerTypes.h:
2450         (WebCore::SVGPropertyTraits<SVGMarkerUnitsType>::toString):
2451         * svg/SVGMatrixValue.h:
2452         * svg/SVGSVGElement.cpp:
2453         (WebCore::SVGSVGElement::SVGSVGElement):
2454         (WebCore::SVGSVGElement::parseAttribute):
2455         * svg/SVGTextContentElement.h:
2456         (WebCore::SVGPropertyTraits<SVGLengthAdjustType>::toString):
2457         * svg/SVGTextPathElement.h:
2458         (WebCore::SVGPropertyTraits<SVGTextPathMethodType>::toString):
2459         (WebCore::SVGPropertyTraits<SVGTextPathSpacingType>::toString):
2460         * svg/SVGToOTFFontConversion.cpp:
2461         (WebCore::SVGToOTFFontConverter::appendCFFTable):
2462         * svg/SVGUnitTypes.h:
2463         (WebCore::SVGPropertyTraits<SVGUnitTypes::SVGUnitType>::toString):
2464         * svg/SVGUseElement.cpp:
2465         (WebCore::SVGUseElement::toClipPath):
2466         * svg/graphics/SVGImage.cpp:
2467         (WebCore::SVGImage::filenameExtension const):
2468         * testing/InternalSettings.cpp:
2469         (WebCore::InternalSettings::userInterfaceDirectionPolicy):
2470         (WebCore::InternalSettings::systemLayoutDirection):
2471         * testing/Internals.cpp:
2472         (WebCore::Internals::areSVGAnimationsPaused const):
2473         (WebCore::Internals::accessKeyModifiers const):
2474         (WebCore::Internals::setMediaDeviceState):
2475         (WebCore::Internals::audioSessionCategory const):
2476         (WebCore::Internals::systemPreviewRelType):
2477         * testing/MockCDMFactory.cpp:
2478         (WebCore::MockCDM::sanitizeResponse const):
2479         (WebCore::MockCDMInstance::updateLicense):
2480         * testing/MockContentFilter.cpp:
2481         (WebCore::MockContentFilter::unblockRequestDeniedScript const):
2482         * testing/MockCredentialsMessenger.cpp:
2483         (WebCore::MockCredentialsMessenger::~MockCredentialsMessenger):
2484         (WebCore::MockCredentialsMessenger::makeCredential):
2485         (WebCore::MockCredentialsMessenger::getAssertion):
2486         * testing/MockPaymentCoordinator.cpp:
2487         (WebCore::MockPaymentCoordinator::showPaymentUI):
2488         * workers/WorkerRunLoop.cpp:
2489         (WebCore::WorkerRunLoop::debuggerMode):
2490         * workers/WorkerScriptLoader.cpp:
2491         (WebCore::WorkerScriptLoader::loadSynchronously):
2492         (WebCore::WorkerScriptLoader::createResourceRequest):
2493         (WebCore::WorkerScriptLoader::didReceiveData):
2494         * workers/service/ExtendableEvent.cpp:
2495         (WebCore::ExtendableEvent::waitUntil):
2496         * workers/service/FetchEvent.cpp:
2497         (WebCore::FetchEvent::~FetchEvent):
2498         (WebCore::FetchEvent::respondWith):
2499         (WebCore::FetchEvent::promiseIsSettled):
2500         * workers/service/SWClientConnection.cpp:
2501         (WebCore::SWClientConnection::clearPendingJobs):
2502         * workers/service/ServiceWorker.cpp:
2503         (WebCore::ServiceWorker::postMessage):
2504         * workers/service/ServiceWorkerClients.cpp:
2505         (WebCore::ServiceWorkerClients::openWindow):
2506         (WebCore::ServiceWorkerClients::claim):
2507         * workers/service/ServiceWorkerContainer.cpp:
2508         (WebCore::ServiceWorkerContainer::addRegistration):
2509         (WebCore::ServiceWorkerContainer::getRegistration):
2510         (WebCore::ServiceWorkerContainer::startScriptFetchForJob):
2511         * workers/service/ServiceWorkerJob.cpp:
2512         (WebCore::ServiceWorkerJob::fetchScriptWithContext):
2513         (WebCore::ServiceWorkerJob::didReceiveResponse):
2514         * workers/service/ServiceWorkerRegistration.cpp:
2515         (WebCore::ServiceWorkerRegistration::update):
2516         * workers/service/ServiceWorkerWindowClient.cpp:
2517         (WebCore::ServiceWorkerWindowClient::focus):
2518         (WebCore::ServiceWorkerWindowClient::navigate):
2519         * workers/service/context/ServiceWorkerDebuggable.h:
2520         * workers/service/context/ServiceWorkerFetch.cpp:
2521         (WebCore::ServiceWorkerFetch::dispatchFetchEvent):
2522         * workers/service/server/RegistrationDatabase.cpp:
2523         (WebCore::RegistrationDatabase::doPushChanges):
2524         (WebCore::RegistrationDatabase::importRecords):
2525         * workers/service/server/SWServerJobQueue.cpp:
2526         (WebCore::SWServerJobQueue::runRegisterJob):
2527         (WebCore::SWServerJobQueue::runUnregisterJob):
2528         (WebCore::SWServerJobQueue::runUpdateJob):
2529         * xml/XMLErrors.cpp:
2530         (WebCore::createXHTMLParserErrorHeader):
2531         (WebCore::XMLErrors::insertErrorMessageBlock):
2532         * xml/XMLHttpRequest.cpp:
2533         (WebCore::XMLHttpRequest::send):
2534         (WebCore::XMLHttpRequest::responseMIMEType const):
2535         * xml/XMLTreeViewer.cpp:
2536         (WebCore::XMLTreeViewer::transformDocumentToTreeView):
2537         * xml/XPathPredicate.cpp:
2538         (WebCore::XPath::evaluatePredicate):
2539         * xml/XPathValue.cpp:
2540         (WebCore::XPath::Value::toString const):
2541         * xml/parser/CharacterReferenceParserInlines.h:
2542         (WebCore::consumeCharacterReference):
2543
2544 2018-06-22  Youenn Fablet  <youenn@apple.com>
2545
2546         Disable WebSocket in WatchOS
2547         https://bugs.webkit.org/show_bug.cgi?id=186931
2548         <rdar://problem/39584458>
2549
2550         Reviewed by Wenson Hsieh.
2551
2552         Add a runtime flag to enable/disable WebSocket.
2553         By default, flag is on for all platforms except for WatchOS.
2554
2555         Test: fast/dom/Window/watchos/websocket/watchos/no-websocket-in-watchos.html
2556
2557         * Modules/websockets/WebSocket.idl:
2558         * page/RuntimeEnabledFeatures.cpp:
2559         (WebCore::RuntimeEnabledFeatures::RuntimeEnabledFeatures):
2560         * page/RuntimeEnabledFeatures.h:
2561         (WebCore::RuntimeEnabledFeatures::setWebSocketEnabled):
2562         (WebCore::RuntimeEnabledFeatures::webSocketEnabled const):
2563
2564 2018-06-22  Woodrow Wang  <woodrow_wang@apple.com>
2565
2566         SubresourceLoader::didFail() should only log message if state is Initialized
2567         https://bugs.webkit.org/show_bug.cgi?id=185124
2568
2569         Reviewed by Daniel Bates.
2570
2571         Functionality does not change. Moved console logging to be 
2572         after checking state of subresource loader. We only need to 
2573         log if the state is initialized. This is consistent with other
2574         functions in the file. We can also remove a null check for the 
2575         frame pointer (m_frame). The superclass ResourceLoader constructor
2576         takes an lvalue reference and initializes m_frame, ensuring
2577         m_frame cannot be null. It is only set to null by 
2578         ResourceLoader::releaseResources(), which is only called after the 
2579         resource finishes loading or fails to load. Thus, in didFail(), 
2580         m_frame must be non-null when we're logging and up until the end of the function.  
2581
2582         * loader/SubresourceLoader.cpp:
2583         (WebCore::SubresourceLoader::didFail):
2584
2585 2018-06-22  Timothy Hatcher  <timothy@apple.com>
2586
2587         Corner of two scroll bars is white with dark mode enabled.
2588         https://bugs.webkit.org/show_bug.cgi?id=186819
2589         rdar://problem/40434350
2590
2591         Reviewed by Tim Horton.
2592
2593         * Configurations/WebCore.xcconfig:
2594         * WebCore.xcodeproj/project.pbxproj:
2595         * inspector/InspectorOverlay.cpp:
2596         (WebCore::InspectorOverlay::paint): Added LocalDefaultSystemAppearance.
2597         * page/Page.h:
2598         * platform/ScrollView.cpp:
2599         (WebCore::ScrollView::paintScrollCorner): Dropped ScrollView argument.
2600         * platform/ScrollbarTheme.h:
2601         (WebCore::ScrollbarTheme::paintScrollCorner): Ditto.
2602         * platform/ScrollbarThemeComposite.cpp:
2603         (WebCore::ScrollbarThemeComposite::paintScrollCorner): Deleted. Default is the same.
2604         * platform/ScrollbarThemeComposite.h:
2605         * platform/mac/LocalDefaultSystemAppearance.h:
2606         * platform/mac/LocalDefaultSystemAppearance.mm:
2607         (WebCore::LocalDefaultSystemAppearance::LocalDefaultSystemAppearance): Added recursion early return.
2608         (WebCore::LocalDefaultSystemAppearance::~LocalDefaultSystemAppearance): Ditto.
2609         * platform/mac/ScrollbarThemeMac.h:
2610         * platform/mac/ScrollbarThemeMac.mm:
2611         (WebCore::ScrollbarThemeMac::paintScrollCorner): Added.
2612         * rendering/RenderLayer.cpp:
2613         (WebCore::RenderLayer::paintScrollCorner): Call ScrollbarTheme::paintScrollCorner.
2614         * rendering/RenderLayerBacking.cpp:
2615         (WebCore::RenderLayerBacking::paintContents): Added LocalDefaultSystemAppearance.
2616         * rendering/RenderLayerCompositor.cpp:
2617         (WebCore::RenderLayerCompositor::paintContents): Added LocalDefaultSystemAppearance.
2618         * rendering/RenderScrollbarTheme.cpp:
2619         (WebCore::RenderScrollbarTheme::paintScrollCorner): Call ScrollbarTheme::paintScrollCorner.
2620         * rendering/RenderScrollbarTheme.h:
2621         * svg/graphics/SVGImage.cpp:
2622         (WebCore::SVGImage::draw): Added LocalDefaultSystemAppearance.
2623
2624 2018-06-22  Tim Horton  <timothy_horton@apple.com>
2625
2626         Make it possible to add a border around loading or failed-to-load images
2627         https://bugs.webkit.org/show_bug.cgi?id=186614
2628         <rdar://problem/39050152>
2629
2630         Reviewed by Zalan Bujtas.
2631
2632         Tests: http/tests/images/loading-image-border.html
2633                http/tests/images/loading-image-no-border.html
2634
2635         * rendering/RenderImage.cpp:
2636         (WebCore::RenderImage::paintIncompleteImageOutline):
2637         (WebCore::RenderImage::paintReplaced):
2638         * rendering/RenderImage.h:
2639         Factor the missing-image outline out, and - if desired - paint it in
2640         cases where the image is still loading or otherwise pending, not just
2641         when the image fails to load.
2642
2643         * page/Settings.yaml:
2644         * testing/InternalSettings.cpp:
2645         (WebCore::InternalSettings::Backup::Backup):
2646         (WebCore::InternalSettings::Backup::restoreTo):
2647         (WebCore::InternalSettings::setIncompleteImageBorderEnabled):
2648         * testing/InternalSettings.h:
2649         * testing/InternalSettings.idl:
2650         Add and expose a setting to enable the feature.
2651
2652 2018-06-22  Brady Eidson  <beidson@apple.com>
2653
2654         WKURLSchemeHandler doesn't handle sync XHR.
2655         <rdar://problem/40955884> and https://bugs.webkit.org/show_bug.cgi?id=186902
2656
2657         Reviewed by Chris Dumez.
2658
2659         * English.lproj/Localizable.strings:
2660
2661 2018-06-22  Jer Noble  <jer.noble@apple.com>
2662
2663         [Fullscreen] Restore ASSERT_NOT_REACHED() checks in exit fullscreen handler after r231924
2664         https://bugs.webkit.org/show_bug.cgi?id=186945
2665         <rdar://problem/37277469>
2666
2667         Reviewed by Simon Fraser.
2668
2669         * platform/ios/VideoFullscreenInterfaceAVKit.mm:
2670         (VideoFullscreenInterfaceAVKit::exitFullscreen):
2671         (VideoFullscreenInterfaceAVKit::exitFullscreenHandler):
2672         (VideoFullscreenInterfaceAVKit::cleanupFullscreen):
2673
2674 2018-06-22  Per Arne Vollan  <pvollan@apple.com>
2675
2676         Unreviewed build fix on Windows.
2677
2678         * testing/Internals.h:
2679
2680 2018-06-22  Youenn Fablet  <youenn@apple.com>
2681
2682         Incoming G722 doesn't work
2683         https://bugs.webkit.org/show_bug.cgi?id=186307
2684         <rdar://problem/40809745>
2685
2686         Reviewed by Eric Carlson.
2687
2688         WebRTC backends usually does the following:
2689         - Initially call RealtimeIncomingAudioSource with 16KHz data
2690         - Switch to 48KHz when actual data is decoded.
2691         We added a check that was discarding any 16KHz data, but in case of G722, the data remains as 16KHz and is then never read.
2692         The solution is to remove the check that discards 16KHz information.
2693         We then need to fix a bug in AudioTrackPrivateMediaStreamCocoa that was preventing proper handling of change of audio data configuration.
2694
2695         Test: webrtc/audio-peer-connection-g722.html
2696
2697         * platform/mediastream/mac/AudioTrackPrivateMediaStreamCocoa.cpp:
2698         (WebCore::AudioTrackPrivateMediaStreamCocoa::audioSamplesAvailable):
2699         * platform/mediastream/mac/RealtimeIncomingAudioSourceCocoa.cpp:
2700         (WebCore::RealtimeIncomingAudioSourceCocoa::OnData):
2701
2702 2018-06-22  Timothy Hatcher  <timothy@apple.com>
2703
2704         Recalc styles every time defaultAppearance changes.
2705         https://bugs.webkit.org/show_bug.cgi?id=186866
2706         rdar://problem/41309805
2707
2708         Reviewed by Tim Horton.
2709
2710         * page/Page.cpp:
2711         (WebCore::Page::setUseSystemAppearance): Added. Recalc styles and update system colors.
2712         (WebCore::Page::setDefaultAppearance): Added. Ditto.
2713         * page/Page.h:
2714         (WebCore::Page::setUseSystemAppearance): Deleted impl.
2715         (WebCore::Page::setDefaultAppearance): Deleted impl.
2716
2717 2018-06-22  Thibault Saunier  <tsaunier@igalia.com>
2718
2719         [GStreamer] Avoid sending SELECT_STREAM events when nothing changed
2720         https://bugs.webkit.org/show_bug.cgi?id=186678
2721
2722         Reviewed by Philippe Normand.
2723
2724         This avoid extra work in decodebin3 and should work around a crash
2725         in decodebin3 when we send spurious SELECT_STREAM in the mediastream
2726         layout tests.
2727
2728         GStreamer was also missing safe guards in the GstStream APIs which have been
2729         added in gstreamer core in 8833ca942ea21c58c0f63822f0e2b61695b39447
2730         "stream: Add some missing API safe guards".
2731
2732         Should fix following flakes:
2733           - fast/mediastream/MediaStream-video-element-track-stop.html
2734           - fast/mediastream/change-tracks-media-stream-being-played.html
2735
2736         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
2737         (WebCore::MediaPlayerPrivateGStreamer::enableTrack):
2738
2739 2018-06-22  Michael Catanzaro  <mcatanzaro@igalia.com>
2740
2741         REGRESSION(r230950): [GTK] WebKit::CoordinatedBackingStoreTile::setBackBuffer(): WebKitWebProcess killed by SIGSEGV (ASSERTION FAILED: it != m_tiles.end())
2742         https://bugs.webkit.org/show_bug.cgi?id=186206
2743
2744         Unreviewed manual rollout of r230950
2745
2746         * platform/graphics/texmap/TextureMapperLayer.h:
2747         * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
2748         (WebCore::CoordinatedGraphicsLayer::shouldHaveBackingStore const):
2749
2750 2018-06-20  Darin Adler  <darin@apple.com>
2751
2752         [Cocoa] Use the isDirectory: variants of NSURL methods more to eliminate unnecessary file system activity
2753         https://bugs.webkit.org/show_bug.cgi?id=186875
2754
2755         Reviewed by Anders Carlsson.
2756
2757         * platform/cocoa/ThemeCocoa.mm:
2758         (WebCore::passKitBundle): Use isDirectory:YES when creating a URL pointing to a framework,
2759         since frameworks are directories.
2760
2761 2018-06-22  Miguel Gomez  <magomez@igalia.com>
2762
2763         [WPE][ThreadedRendering] WPE crashes rendering SVG content when using ThreadedRendering
2764         https://bugs.webkit.org/show_bug.cgi?id=186914
2765
2766         Reviewed by Carlos Garcia Campos.
2767
2768         Add GraphicsContextImpl::clipToImageBuffer() to the interface and the implementors. Forward
2769         the call to GraphicsContext::clipToImageBuffer() to the implementation if possible in the
2770         cairo case.
2771
2772         Covered by existent tests.
2773
2774         * platform/graphics/GraphicsContextImpl.h:
2775         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2776         (WebCore::GraphicsContext::clipToImageBuffer):
2777         * platform/graphics/cairo/GraphicsContextImplCairo.cpp:
2778         (WebCore::GraphicsContextImplCairo::clipToImageBuffer):
2779         * platform/graphics/cairo/GraphicsContextImplCairo.h:
2780         * platform/graphics/displaylists/DisplayListRecorder.cpp:
2781         (WebCore::DisplayList::Recorder::clipToImageBuffer):
2782         * platform/graphics/displaylists/DisplayListRecorder.h:
2783         * platform/graphics/nicosia/cairo/NicosiaCairoOperationRecorder.cpp:
2784         (Nicosia::CairoOperationRecorder::clipToImageBuffer):
2785         * platform/graphics/nicosia/cairo/NicosiaCairoOperationRecorder.h:
2786
2787 2018-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
2788
2789         [CMake] Generated sources depending on SelectorPseudoClassAndCompatibilityElementMap.in are not regenerated
2790         https://bugs.webkit.org/show_bug.cgi?id=186911
2791
2792         Reviewed by Michael Catanzaro.
2793
2794         This is causing test fullscreen/fullscreen-env.html to fail since it was added in r233066 in the bots that
2795         didn't start a clean build. The problem is that the CMake command to generate
2796         SelectorPseudoClassAndCompatibilityElementMap.cpp doesn't depend on
2797         SelectorPseudoClassAndCompatibilityElementMap.in.
2798
2799         * CMakeLists.txt:
2800
2801 2018-06-22  Miguel Gomez  <magomez@igalia.com>
2802
2803         [WPE][ThreadedRendering] WPE crashes rendering some pieces of text when using ThreadedRendering
2804         https://bugs.webkit.org/show_bug.cgi?id=186886
2805
2806         Reviewed by Žan Doberšek.
2807
2808         Modify DisplayList DrawGlyphs element to use a GraphicsContext for replaying. To do so, modify
2809         GraphicsContext::drawGlyphs() API so it doesn't require a FontCascade, and update all the calls
2810         to it.
2811
2812         Covered by existent tests.
2813
2814         * platform/graphics/FontCascade.cpp:
2815         (WebCore::FontCascade::drawGlyphBuffer const):
2816         * platform/graphics/GraphicsContext.cpp:
2817         (WebCore::GraphicsContext::drawGlyphs):
2818         * platform/graphics/GraphicsContext.h:
2819         * platform/graphics/displaylists/DisplayListItems.cpp:
2820         (WebCore::DisplayList::DrawGlyphs::apply const):
2821         * rendering/mathml/MathOperator.cpp:
2822         (WebCore::MathOperator::paintGlyph):
2823         (WebCore::MathOperator::paint):
2824         * rendering/mathml/RenderMathMLToken.cpp:
2825         (WebCore::RenderMathMLToken::paint):
2826
2827 2018-06-15  Jer Noble  <jer.noble@apple.com>
2828
2829         Address fullscreen api CSS env feedback
2830         https://bugs.webkit.org/show_bug.cgi?id=186684
2831
2832         Reviewed by Simon Fraser.
2833
2834         Test: fullscreen/fullscreen-env.html
2835
2836         + Update the phishing alert text to be more explicit about the specific threats
2837           phishing sites represent.
2838         + Make the top inset static, rather than dynamic.
2839         + Add bottom, left, and right insets for completeness.
2840         + Set the fullscreen animation duration as well as delay.
2841         + Notify the page when the controls show and hide.
2842
2843         * English.lproj/Localizable.strings:
2844         * css/CSSSelector.cpp:
2845         (WebCore::CSSSelector::selectorText const):
2846         * css/CSSSelector.h:
2847         * css/SelectorChecker.cpp:
2848         (WebCore::SelectorChecker::checkOne const):
2849         * css/SelectorCheckerTestFunctions.h:
2850         (WebCore::matchesFullScreenControlsHiddenPseudoClass):
2851         * css/SelectorPseudoClassAndCompatibilityElementMap.in:
2852         * cssjit/SelectorCompiler.cpp:
2853         (WebCore::SelectorCompiler::addPseudoClassType):
2854         * dom/ConstantPropertyMap.cpp:
2855         (WebCore::ConstantPropertyMap::nameForProperty const):
2856         (WebCore::ConstantPropertyMap::updateConstantsForFullscreenInsets):
2857         (WebCore::ConstantPropertyMap::didChangeFullscreenInsets):
2858         (WebCore::ConstantPropertyMap::setFullscreenAutoHideDuration):
2859         (WebCore::ConstantPropertyMap::setFullscreenInsetTop): Deleted.
2860         * dom/ConstantPropertyMap.h:
2861         * dom/Document.cpp:
2862         (WebCore::Document::areFullscreenControlsHidden const):
2863         (WebCore::Document::setFullscreenControlsHidden):
2864         * dom/Document.h:
2865         * page/Page.cpp:
2866         (WebCore::Page::setFullscreenInsets):
2867         (WebCore::Page::setFullscreenAutoHideDuration):
2868         (WebCore::Page::setFullscreenControlsHidden):
2869         (WebCore::Page::setFullscreenInsetTop): Deleted.
2870         * page/Page.h:
2871         (WebCore::Page::fullscreenInsets const):
2872         * testing/Internals.cpp:
2873         (WebCore::Internals::resetToConsistentState):
2874         (WebCore::Internals::setFullscreenInsets):
2875         (WebCore::Internals::setFullscreenAutoHideDuration):
2876         (WebCore::Internals::setFullscreenControlsHidden):
2877         (WebCore::Internals::setFullscreenInsetTop): Deleted.
2878         * testing/Internals.h:
2879         * testing/Internals.idl:
2880
2881 2018-06-21  Jer Noble  <jer.noble@apple.com>
2882
2883         [Fullscreen] Page sometimes ends up with an incorrect zoom level after entering fullscreen
2884         https://bugs.webkit.org/show_bug.cgi?id=186822
2885
2886         Reviewed by Simon Fraser.
2887
2888         * dom/Document.cpp:
2889         (WebCore::Document::setOverrideViewportArguments):
2890         (WebCore::Document::updateViewportArguments):
2891         * dom/Document.h:
2892
2893 2018-06-20  Said Abou-Hallawa  <sabouhallawa@apple.com>
2894
2895         RenderSVGInline has to be inline always regardless of its css display value
2896         https://bugs.webkit.org/show_bug.cgi?id=186656
2897
2898         Reviewed by Zalan Bujtas.
2899
2900         According to https://www.w3.org/TR/SVG2/text.html#TextLayout, the <text>
2901         element has to be laid out as if it were a block element and any <tspan>,
2902         <textPath>, <a> and <tref> descendants were inline elements.
2903
2904         If a css rule, which contains the property "display: block;", is applied
2905         to any of children of a <text> element, this property has to be ignored.
2906
2907         We currently ignore this property in RenderSVGInline::updateFromStyle()
2908         by forcing setInline(true). But we do not do the same thing in 
2909         RenderTreeBuilder::normalizeTreeAfterStyleChange(). In fact we allow
2910         making the children of the <text> element to be non-inline. This puts
2911         the render tree in weired state and causes many assertions to fire while
2912         laying out RenderSVGText. 
2913
2914         Test: svg/dom/svg-inline-text-display-block-crash.html
2915
2916         * rendering/updating/RenderTreeBuilder.cpp:
2917         (WebCore::RenderTreeBuilder::normalizeTreeAfterStyleChange):
2918
2919 2018-06-20  Zalan Bujtas  <zalan@apple.com>
2920
2921         Do not reuse generated inline renderer for the first letter.
2922         https://bugs.webkit.org/show_bug.cgi?id=186657
2923         <rdar://problem/41157892>
2924
2925         Reviewed by Simon Fraser.
2926
2927         When the first letter pseudo element is present, we construct a dedicated subtree for its content like this:
2928
2929         <div><span>foobar</span></div> -> with ::first-letter on the <div>
2930         DIV RenderBlock
2931             SPAN RenderInline
2932                 RenderInline (generated wrapper for the first letter content)
2933                     RenderText (fist letter content)
2934                 RenderText (remaining text content)
2935
2936         "display: contents" on the <span> forces us not to construct a RenderInline for the <span> (or just come up with a wrapper at best).
2937         FirstLetter::createRenderers logic needs to check for such cases and pick the correct parent for the first letter subtree accordingly.
2938
2939         Test: fast/text/first-letter-with-display-contents-crash.html
2940               imported/w3c/web-platform-tests/css/css-display/display-contents-first-letter-002.html is not crashing anymore either.
2941
2942         * rendering/updating/RenderTreeBuilderFirstLetter.cpp:
2943         (WebCore::RenderTreeBuilder::FirstLetter::createRenderers):
2944
2945 2018-06-21  Chris Dumez  <cdumez@apple.com>
2946
2947         JSPerformanceObserverCallback creates a GC strongly-referenced Function that is never cleaned up
2948         https://bugs.webkit.org/show_bug.cgi?id=186873
2949         <rdar://problem/41271574>
2950
2951         Reviewed by Simon Fraser.
2952
2953         Add [IsWeakCallback] to PerformanceObserverCallback interface so that the generated
2954         JSPerformanceObserverCallback uses a JSC::Weak instead of a JSC::Strong to store the
2955         js function. To keep the function alive, add [JSCustomMarkFunction] to PerformanceObserver
2956         interface and have its visitAdditionalChildren() visit the callback's js function.
2957         Finally, because we want the callback to still be called even if the JS does not keep
2958         the PerformanceObserver wrapper alive, add [CustomIsReachable] to PerformanceObserver
2959         interface and have its isReachableFromOpaqueRoots() return true if the observer is
2960         registered (i.e. it may need to call the callback in the future).
2961
2962         I have confirmed locally, that the Performance / PerformanceObserver / Document
2963         objects properly get destroyed if I navigate away from a page that had a performance
2964         observer and trigger a memory pressure warning. Also,
2965         `notifyutil -p com.apple.WebKit.showAllDocuments` no longer shows the old document.
2966
2967         Tests: performance-api/performance-observer-callback-after-gc.html
2968                performance-api/performance-observer-no-document-leak.html
2969
2970         * Sources.txt:
2971         * WebCore.xcodeproj/project.pbxproj:
2972         * bindings/js/JSPerformanceObserverCustom.cpp: Added.
2973         (WebCore::JSPerformanceObserver::visitAdditionalChildren):
2974         (WebCore::JSPerformanceObserverOwner::isReachableFromOpaqueRoots):
2975         * bindings/js/ScriptController.cpp:
2976         * page/PerformanceObserver.cpp:
2977         (WebCore::PerformanceObserver::disassociate):
2978         * page/PerformanceObserver.h:
2979         (WebCore::PerformanceObserver::isRegistered const):
2980         (WebCore::PerformanceObserver::callback):
2981         * page/PerformanceObserver.idl:
2982         * page/PerformanceObserverCallback.h:
2983         * page/PerformanceObserverCallback.idl:
2984
2985 2018-06-20  Antoine Quint  <graouts@apple.com>
2986
2987         [Web Animations] Make imported/mozilla/css-animations/test_animation-ready.html pass reliably
2988         https://bugs.webkit.org/show_bug.cgi?id=183830
2989         <rdar://problem/40997539>
2990
2991         Reviewed by Dean Jackson.
2992
2993         The CSS Animations Level 2 spec explains how the Web Animations API and CSS Animations interact and requires
2994         pending styles changes on the target element of a CSS Animation to be flushed when using a Web Animations API
2995         on it in order to ensure that any animation- CSS property is accounted for.
2996
2997         * animation/CSSAnimation.cpp:
2998         (WebCore::CSSAnimation::bindingsStartTime const):
2999         (WebCore::CSSAnimation::setBindingsStartTime):
3000         (WebCore::CSSAnimation::bindingsCurrentTime const):
3001         (WebCore::CSSAnimation::setBindingsCurrentTime):
3002         (WebCore::CSSAnimation::bindingsPlayState const):
3003         (WebCore::CSSAnimation::bindingsPending const):
3004         (WebCore::CSSAnimation::bindingsReady):
3005         (WebCore::CSSAnimation::bindingsFinished):
3006         (WebCore::CSSAnimation::bindingsPlay):
3007         (WebCore::CSSAnimation::bindingsPause):
3008         (WebCore::CSSAnimation::flushPendingStyleChanges const):
3009         * animation/CSSAnimation.h:
3010         * animation/WebAnimation.h:
3011         (WebCore::WebAnimation::bindingsPlayState const):
3012         (WebCore::WebAnimation::bindingsPending const):
3013         (WebCore::WebAnimation::bindingsReady):
3014         (WebCore::WebAnimation::bindingsFinished):
3015         (WebCore::WebAnimation::bindingsPlay):
3016         (WebCore::WebAnimation::bindingsPause):
3017         * animation/WebAnimation.idl:
3018
3019 2018-06-21  Jer Noble  <jer.noble@apple.com>
3020
3021         [Fullscreen] Suspend page (and pause video) while phishing warning is presented
3022         https://bugs.webkit.org/show_bug.cgi?id=186856
3023         <rdar://problem/41212444>
3024
3025         Reviewed by Tim Horton.
3026
3027         Pause the media element when the page is suspended, and unpause when the page resumes.
3028
3029         * html/HTMLMediaElement.cpp:
3030         (WebCore::HTMLMediaElement::HTMLMediaElement):
3031         (WebCore::HTMLMediaElement::suspend):
3032         (WebCore::HTMLMediaElement::resume):
3033         * html/HTMLMediaElement.h:
3034
3035 2018-06-21  Michael Catanzaro  <mcatanzaro@igalia.com>
3036
3037         Bad optional access in WebCore::ContentSecurityPolicySource::portMatches
3038         https://bugs.webkit.org/show_bug.cgi?id=186535
3039
3040         Reviewed by Daniel Bates.
3041
3042         Make sure the ports have explicit values before dereferencing them.
3043
3044         This is hard to test. If the layout test script-src-parsing-implicit-and-explicit-port-number
3045         continues to pass for WebKitLegacy, then I have at least probably not broken anything. To
3046         reproduce the crash in a layout test that I can run, I think I would need to implement
3047         internals.registerDefaultPortForProtocol for modern WebKit, which is too much work for this
3048         crash. Otherwise, we'd need to run the test server on port 80, which would be unfriendly.
3049
3050         * page/csp/ContentSecurityPolicySource.cpp:
3051         (WebCore::ContentSecurityPolicySource::portMatches const):
3052
3053 2018-06-21  Fujii Hironori  <Hironori.Fujii@sony.com>
3054
3055         [GStreamer] ASSERTION FAILED: end.isValid() in PlatformTimeRanges::add
3056         https://bugs.webkit.org/show_bug.cgi?id=186880
3057
3058         Reviewed by Xabier Rodriguez-Calvar.
3059
3060         Bug 180253 has added assertions the arugments `start` and `end` is
3061         valid MediaTime in PlatformTimeRanges::add. Since then, some
3062         LayoutTests fail due to the assertion failure.
3063
3064         The invalid MediaTime is added into the PlatformTimeRanges in
3065         MediaPlayerPrivateGStreamer::buffered. Before adding MediaTime,
3066         original implementation checks MediaTime::operator bool() returns
3067         true. But, this method returns true if the time value is invalid.
3068         Then, PlatformTimeRanges::add is called with an invalid MediaTime.
3069
3070         No new tests (No behavior change).
3071
3072         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
3073         (WebCore::MediaPlayerPrivateGStreamer::buffered const): Check
3074         maxTimeLoaded() is valid before adding to `timeRanges`.
3075
3076 2018-06-20  David Kilzer  <ddkilzer@apple.com>
3077
3078         Fix leaks in WebCore found by clang static analyzer in deep mode
3079         <https://webkit.org/b/186865>
3080
3081         Reviewed by Joseph Pecoraro.
3082
3083         * platform/mac/WebCoreNSURLExtras.mm:
3084         (WebCore::mapHostNames): Fix leak of an empty NSMutableArray
3085         during an early return.  RetainPtr<> is not used here since
3086         a pointer to the NSMutableArray * is passed around.
3087         * platform/mediastream/mac/ScreenDisplayCaptureSourceMac.mm:
3088         (WebCore::ScreenDisplayCaptureSourceMac::createDisplayStream):
3089         Fix leak of a CGDisplayModeRef during an early return.
3090
3091 2018-06-20  Wenson Hsieh  <wenson_hsieh@apple.com>
3092
3093         Unreviewed, fix the watchOS build after r233016.
3094
3095         * page/EventHandler.cpp:
3096         (WebCore::EventHandler::selectionExtentRespectingEditingBoundary):
3097
3098         Move this helper out of the ENABLE(DRAG_SUPPORT) guard.
3099
3100         * page/EventHandler.h:
3101
3102 2018-06-20  Simon Fraser  <simon.fraser@apple.com>
3103
3104         AnimationList wastes 60KB of vector capacity
3105         https://bugs.webkit.org/show_bug.cgi?id=186701
3106
3107         Reviewed by Chris Dumez.
3108
3109         AnimationList was the second most wasteful call site for Vector capacity on theverge.com,
3110         wasting almost 60KB. Lists had between 1 and 3 entries, so give AnimationList's vector of
3111         Animations a min capacity of zero so it doesn't grow in increments of 16.
3112         
3113         Also shrink Animation from 88 bytes to 72 bytes by optimizing packing.
3114
3115         * platform/animation/Animation.cpp:
3116         (WebCore::Animation::Animation):
3117         (WebCore::Animation::operator=):
3118         (WebCore::Animation::animationsMatch const):
3119         * platform/animation/Animation.h:
3120         (WebCore::Animation::animationMode const):
3121         (WebCore::Animation::setAnimationMode):
3122         * platform/animation/AnimationList.h:
3123
3124 2018-06-20  Simon Fraser  <simon.fraser@apple.com>
3125
3126         ContentSecurityPolicySourceList wastes 51KB of Vector capacity on cnn.com
3127         https://bugs.webkit.org/show_bug.cgi?id=186706
3128
3129         Reviewed by Chris Dumez.
3130
3131         Make ContentSecurityPolicySourceList::parse() call shrinkToFit() on m_list
3132         after parsing to eliminate wasted vector capacity.
3133         
3134         Shrink ContentSecurityPolicySource down to 40 bytes by optimizing packing.
3135
3136         * page/csp/ContentSecurityPolicySource.cpp:
3137         (WebCore::ContentSecurityPolicySource::ContentSecurityPolicySource):
3138         * page/csp/ContentSecurityPolicySource.h:
3139         * page/csp/ContentSecurityPolicySourceList.cpp:
3140         (WebCore::ContentSecurityPolicySourceList::matches const):
3141         (WebCore::ContentSecurityPolicySourceList::parse):
3142         (WebCore::ContentSecurityPolicySourceList::matches): Deleted.
3143         * page/csp/ContentSecurityPolicySourceList.h:
3144
3145 2018-06-20  Megan Gardner  <megan_gardner@apple.com>
3146
3147         Restrict Selection in contenteditable the extent of that contenteditable
3148         https://bugs.webkit.org/show_bug.cgi?id=186792
3149
3150         Reviewed by Wenson Hsieh.
3151
3152         My system currently will not allow me to run tests. I will add one when I can update.
3153
3154         Expose the already existing funcitonality to restrict a selection to a single contentenditable
3155
3156         * page/EventHandler.cpp:
3157         (WebCore::EventHandler::selectionExtentRespectingEditingBoundary):
3158         (WebCore::selectionExtentRespectingEditingBoundary): Deleted.
3159         * page/EventHandler.h:
3160         * rendering/HitTestResult.h:
3161
3162 2018-06-20  Simon Fraser  <simon.fraser@apple.com>
3163
3164         CSSFontFace wastes 59KB of Vector capacity on nytimes.com
3165         https://bugs.webkit.org/show_bug.cgi?id=186708
3166
3167         Reviewed by Anders Carlsson.
3168
3169         Most CSSFontFace have one or two CSSFontFaceSource so don't allocate
3170         vector capacity in the default 16-size chunks.
3171
3172         * css/CSSFontFace.h:
3173
3174 2018-06-20  Antoine Quint  <graouts@apple.com>
3175
3176         [Web Animations] Make imported/mozilla/css-transitions/test_element-get-animations.html pass reliably
3177         https://bugs.webkit.org/show_bug.cgi?id=183841
3178         <rdar://problem/40998101>
3179
3180         Reviewed by Dean Jackson.
3181
3182         We must ignore CSS Animations with "animation-name: none".
3183
3184         * animation/AnimationTimeline.cpp:
3185         (WebCore::AnimationTimeline::updateCSSAnimationsForElement):
3186
3187 2018-06-20  Miguel Gomez  <magomez@igalia.com>
3188
3189         [GTK][ThreadedRendering][Nicosia] Themed elements cannot be rendered using threaded rendering
3190         https://bugs.webkit.org/show_bug.cgi?id=186840
3191
3192         Reviewed by Carlos Garcia Campos.
3193
3194         Disable threaded rendering for GTK port.
3195
3196         * platform/graphics/nicosia/NicosiaPaintingEngine.cpp:
3197         (Nicosia::PaintingEngine::create):
3198
3199 2018-06-20  Yusuke Suzuki  <utatane.tea@gmail.com>
3200
3201         [GTK][WPE][Nicosia] Add name for Nicosia Painting Threads
3202         https://bugs.webkit.org/show_bug.cgi?id=186836
3203
3204         Reviewed by Carlos Garcia Campos.
3205
3206         Use "PaintingThread" name.
3207
3208         * platform/graphics/nicosia/NicosiaPaintingEngineThreaded.cpp:
3209         (Nicosia::PaintingEngineThreaded::PaintingEngineThreaded):
3210
3211 2018-06-19  Antoine Quint  <graouts@apple.com>
3212
3213         [Web Animations] Make imported/mozilla/css-animations/test_pseudoElement-get-animations.html pass reliably
3214         https://bugs.webkit.org/show_bug.cgi?id=183818
3215         <rdar://problem/40997015>
3216
3217         Reviewed by Dean Jackson.
3218
3219         We add a new opt-in flag to return sorted animations when calling AnimationTimeline::animationsForElement() so that
3220         Element::getAnimations() can opt into returning animations sorted by the rules defined by the CSS Transitions spec.
3221         The rule is that CSS Transitions must be sorted prior to CSS Animations and regular Web Animations, and then sorted
3222         by the time they were generated and, if generated at the same time, sorted alphabetically based on the transitioned
3223         property. To be able to accomodate this, we add a new generationTime() method to CSSTransition.
3224
3225         * animation/AnimationTimeline.cpp:
3226         (WebCore::AnimationTimeline::animationsForElement const):
3227         (WebCore::AnimationTimeline::updateCSSTransitionsForElement):
3228         * animation/AnimationTimeline.h:
3229         * animation/CSSTransition.cpp:
3230         (WebCore::CSSTransition::create):
3231         (WebCore::CSSTransition::CSSTransition):
3232         * animation/CSSTransition.h:
3233         * dom/Element.cpp:
3234         (WebCore::Element::getAnimations):
3235
3236 2018-06-19  Basuke Suzuki  <Basuke.Suzuki@sony.com>
3237
3238         [Curl] Allow passing contents of Root CA data directly.
3239         https://bugs.webkit.org/show_bug.cgi?id=185782
3240
3241         Currently the data must be in a file and set by its path. This patch
3242         allow application to set root CA data by passing binary data directly.
3243
3244         Reviewed by Yusuke Suzuki.
3245
3246         No new tests. Tested internally.
3247
3248         * platform/network/curl/CurlRequest.cpp:
3249         (WebCore::CurlRequest::setupTransfer):
3250         * platform/network/curl/CurlSSLHandle.cpp:
3251         (WebCore::CurlSSLHandle::CurlSSLHandle):
3252         (WebCore::CurlSSLHandle::getCACertPathEnv):
3253         (WebCore::CurlSSLHandle::setCACertPath):
3254         (WebCore::CurlSSLHandle::setCACertData):
3255         (WebCore::CurlSSLHandle::clearCACertInfo):
3256         * platform/network/curl/CurlSSLHandle.h:
3257         (WebCore::CurlSSLHandle::getCipherList const):
3258         (WebCore::CurlSSLHandle::getSignatureAlgorithmsList const):
3259         (WebCore::CurlSSLHandle::getCurvesList const):
3260         (WebCore::CurlSSLHandle::setCipherList):
3261         (WebCore::CurlSSLHandle::setSignatureAlgorithmsList):
3262         (WebCore::CurlSSLHandle::setCurvesList):
3263         (WebCore::CurlSSLHandle::setIgnoreSSLErrors):
3264         (WebCore::CurlSSLHandle::getCACertInfo const):
3265         (WebCore::CurlSSLHandle::getCACertPath const): Deleted.
3266         (WebCore::CurlSSLHandle::setCACertPath): Deleted.
3267         * platform/network/curl/CurlSSLVerifier.cpp:
3268         (WebCore::CurlSSLVerifier::CurlSSLVerifier):
3269
3270 2018-06-19  Dean Jackson  <dino@apple.com>
3271
3272         ARKit badge drop shadow updates its blur radius based on page zoom
3273         https://bugs.webkit.org/show_bug.cgi?id=186829
3274         <rdar://problem/40738779>
3275
3276         Reviewed by Tim Horton.
3277
3278         We need to make sure the shadow blur radius takes into account the
3279         current zoom. Thankfully, the GraphicsContext platform code already
3280         does this, so just use it.
3281
3282         * rendering/RenderThemeIOS.mm:
3283         (WebCore::RenderThemeIOS::paintSystemPreviewBadge):
3284
3285 2018-06-19  Dean Jackson  <dino@apple.com>
3286
3287         Blank viewer comes up and then auto-dismisses when device is not connected to Internet
3288         https://bugs.webkit.org/show_bug.cgi?id=186825
3289         <rdar://problem/40294170>
3290
3291         Reviewed by Tim Horton.
3292
3293         Export isSuccessful() to WebKit.
3294
3295         * platform/network/ResourceResponseBase.h:
3296
3297 2018-06-19  Basuke Suzuki  <Basuke.Suzuki@sony.com>
3298
3299         [Curl] Enable Proxy Authentication.
3300         https://bugs.webkit.org/show_bug.cgi?id=185266
3301
3302         Add support for Proxy Authentication to curl network layer.
3303
3304         Reviewed by Alex Christensen.
3305
3306         No new tests in public. Tested internally.
3307
3308         * platform/network/curl/AuthenticationChallenge.h:
3309         * platform/network/curl/AuthenticationChallengeCurl.cpp:
3310         (WebCore::AuthenticationChallenge::protectionSpaceServerTypeFromURI):
3311         (WebCore::AuthenticationChallenge::protectionSpaceFromHandle):
3312         (WebCore::AuthenticationChallenge::determineProxyPort):
3313         (WebCore::AuthenticationChallenge::authenticationSchemeFromCurlAuth):
3314         (WebCore::AuthenticationChallenge::parseRealm):
3315         * platform/network/curl/CurlContext.cpp:
3316         (WebCore::CurlHandle::enableProxyIfExists):
3317         (WebCore::CurlHandle::getProxyUrl):
3318         (WebCore::CurlHandle::getProxyAuthAvail):
3319         (WebCore::CurlHandle::getPrimaryPort): Deleted.
3320         * platform/network/curl/CurlContext.h:
3321         (WebCore::CurlContext::setDefaultProxyAuthMethod):
3322         (WebCore::CurlContext::setProxyAuthMethod):
3323         * platform/network/curl/CurlProxySettings.cpp:
3324         (WebCore::determineAuthMethod):
3325         (WebCore::CurlProxySettings::setAuthMethod):
3326         (WebCore::protocolIsInSocksFamily):
3327         * platform/network/curl/CurlProxySettings.h:
3328         (WebCore::CurlProxySettings::setDefaultAuthMethod):
3329         (WebCore::CurlProxySettings::authMethod const):
3330         * platform/network/curl/CurlRequest.cpp:
3331         (WebCore::CurlRequest::didReceiveHeader):
3332         * platform/network/curl/CurlResponse.h:
3333         (WebCore::CurlResponse::isolatedCopy const):
3334         * platform/network/curl/ResourceResponse.h:
3335         * platform/network/curl/ResourceResponseCurl.cpp:
3336         (WebCore::ResourceResponse::isProxyAuthenticationRequired const):
3337
3338 2018-06-19  Tim Horton  <timothy_horton@apple.com>
3339
3340         Unpainted area while scrolling in Reader is white
3341         https://bugs.webkit.org/show_bug.cgi?id=186541
3342         <rdar://problem/40471363>
3343
3344         Reviewed by Timothy Hatcher.
3345
3346         New test: tiled-drawing/simple-document-with-dynamic-background-color.html
3347
3348         For platforms that do not use the overhang layer, we depend on
3349         RenderView's background color to fill unpainted space.
3350
3351         RenderView's background color is only updated inside updateRootLayerConfiguration,
3352         and it is possible with a simple enough page to change the document's
3353         background color without running that code.
3354
3355         * page/FrameView.cpp:
3356         (WebCore::FrameView::setTransparent):
3357         (WebCore::FrameView::setBaseBackgroundColor):
3358         Make use of the newly added rootBackgroundColorOrTransparencyChanged.
3359
3360         (WebCore::FrameView::calculateExtendedBackgroundMode const):
3361         Update a comment, since the function it mentioned is no longer.
3362
3363         (WebCore::FrameView::updateTilesForExtendedBackgroundMode):
3364         Remove this code that clears the root extended background color
3365         if using tiles to extend in both directions. Two reasons:
3366         1) it seems harmless to also have a root extended background color
3367         2) this just gets clobbered by the call in RenderView::paintBoxDecorations
3368
3369         * rendering/RenderLayerCompositor.cpp:
3370         (WebCore::RenderLayerCompositor::updateCompositingLayers):
3371         Add a bit that will do a updateConfiguration() on the root layer if no
3372         other work needs to be done, so that we can update the root layer's
3373         transparency or background color without doing a full layer rebuild.
3374
3375         (WebCore::RenderLayerCompositor::rootOrBodyStyleChanged):
3376         Make use of the newly added rootBackgroundColorOrTransparencyChanged.
3377
3378         (WebCore::RenderLayerCompositor::rootBackgroundColorOrTransparencyChanged):
3379         Change rootBackgroundTransparencyChanged to also cover color changes.
3380         Fold setRootExtendedBackgroundColor in here, and make use of
3381         setRootLayerConfigurationNeedsUpdate() instead of doing a full rebuild.
3382         Previously, we would bail if the transparency state hadn't changed;
3383         now, we'll also update the root layer's background color and the
3384         exposed-to-WebKit extended background color if they change too.
3385
3386         (WebCore::RenderLayerCompositor::rootBackgroundTransparencyChanged): Deleted.
3387         (WebCore::RenderLayerCompositor::setRootExtendedBackgroundColor): Deleted.
3388
3389         * rendering/RenderLayerCompositor.h:
3390         Add setRootLayerConfigurationNeedsUpdate, remove setRootExtendedBackgroundColor,
3391         and add both a bit indicating that the root layer configuration needs updating
3392         and the cached view background color to make the early return in
3393         rootBackgroundColorOrTransparencyChanged possible.
3394
3395         * rendering/RenderView.cpp:
3396         (WebCore::RenderView::paintBoxDecorations):
3397         Make use of the newly added rootBackgroundColorOrTransparencyChanged.
3398
3399 2018-06-19  Youenn Fablet  <youenn@apple.com>
3400