Timeline
Jul 21, 2021:
- 8:19 PM Changeset in webkit [280170] by
-
- 3 edits in trunk/LayoutTests
Update LayoutTests/TestExpectations for imported w3c IndexedDB tests
https://bugs.webkit.org/show_bug.cgi?id=228169
Reviewed by Chris Dumez.
Update LayoutTests/TestExpectations based on latest test results as we have fixed some existing issues, and we
no longer expect these tests to fail.
- TestExpectations:
- platform/wpe/TestExpectations:
- 5:23 PM Changeset in webkit [280169] by
-
- 2 edits in trunk/LayoutTests
[iOS Debug] media/media-usage-state-private-browsing.html is crashing.
https://bugs.webkit.org/show_bug.cgi?id=228171
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- 5:06 PM Changeset in webkit [280168] by
-
- 1 copy in tags/Safari-612.1.24.1.4
Tag Safari-612.1.24.1.4.
- 5:05 PM Changeset in webkit [280167] by
-
- 1 copy in tags/Safari-612.1.24.0.4
Tag Safari-612.1.24.0.4.
- 4:18 PM Changeset in webkit [280166] by
-
- 2 edits in trunk/Tools
MiniBrowser xcconfig should include ccache.xcconfig conditionally
https://bugs.webkit.org/show_bug.cgi?id=228126
Reviewed by Tim Horton.
- MiniBrowser/Configurations/DebugRelease.xcconfig:
- 4:06 PM Changeset in webkit [280165] by
-
- 3 edits in trunk/LayoutTests
REGRESSION(r279971): [ Mac , iOS ] imported/w3c/web-platform-tests/webmessaging/broadcastchannel/blobs.html is a flaky failure.
https://bugs.webkit.org/show_bug.cgi?id=228168.
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- platform/mac/TestExpectations:
- 3:43 PM Changeset in webkit [280164] by
-
- 2 edits in trunk/LayoutTests
[iOS Debug] media/media-fragments/TC0003.html is flaky crashing.
https://bugs.webkit.org/show_bug.cgi?id=228167
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- 3:24 PM Changeset in webkit [280163] by
-
- 2 edits in trunk/Source/JavaScriptCore
Fix type check error in testb3
https://bugs.webkit.org/show_bug.cgi?id=228166
Reviewed by Saam Barati.
- b3/testb3_2.cpp:
(testXorNotWithLeftShift32):
(testXorNotWithRightShift32):
(testXorNotWithUnsignedRightShift32):
- 2:43 PM Changeset in webkit [280162] by
-
- 2 edits in trunk/LayoutTests
[iOS Debug] http/tests/resourceLoadStatistics/website-data-removal-for-site-with-user-interaction.html is a flaky crash.
https://bugs.webkit.org/show_bug.cgi?id=228164
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- 2:16 PM Changeset in webkit [280161] by
-
- 2 edits in trunk/LayoutTests
[iOS] http/wpt/webrtc/transfer-datachannel-service-worker.https.html is a flaky failure.
https://bugs.webkit.org/show_bug.cgi?id=228165
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- 1:59 PM Changeset in webkit [280160] by
-
- 6 edits in trunk/Source/WebKit
RunningBoard kills the network process if it is still holding the "holding locked file" assertion upon suspension
https://bugs.webkit.org/show_bug.cgi?id=228148
Reviewed by Sihui Liu.
RunningBoard kills the network process if it is still holding the "holding locked file" assertion upon suspension
because our assertion type is "uninterruptible" and we don't release it when it gets invalidated. To address the
issue, we now use an "interruptible" assertion instead when holding locked files.
- NetworkProcess/ios/NetworkProcessIOS.mm:
(WebKit::NetworkProcess::setIsHoldingLockedFiles):
- UIProcess/ProcessAssertion.h:
- UIProcess/ProcessThrottler.cpp:
(WebKit::ProcessThrottler::assertionName const):
- UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::didSetAssertionType):
- UIProcess/ios/ProcessAssertionIOS.mm:
(WebKit::runningBoardNameForAssertionType):
(WebKit::runningBoardDomainForAssertionType):
- 1:33 PM Changeset in webkit [280159] by
-
- 3 edits in trunk/LayoutTests
[GTK][WPE] Update test expectations after r279987 and r280077.
Unreviewed test gardening.
- platform/glib/TestExpectations:
- platform/gtk/TestExpectations:
- 1:31 PM Changeset in webkit [280158] by
-
- 4 edits in trunk/Source
Add linkedOnOrAfter check for r269162
https://bugs.webkit.org/show_bug.cgi?id=228154
Source/WebCore:
<rdar://78575888>
Patch by Alex Christensen <achristensen@webkit.org> on 2021-07-21
Reviewed by Geoffrey Garen.
That revision broke some programs, but only on macOS.
On iOS, we needed SecKeyProxy and WKNavigationDelegate to get client certificates to send.
Add a linkedOnOrAfter check until they update to use WKNavigationDelegate instead of default keychain behavior.
- platform/cocoa/VersionChecks.h:
Source/WebKit:
Patch by Alex Christensen <achristensen@webkit.org> on 2021-07-21
Reviewed by Geoffrey Garen.
- NetworkProcess/cocoa/NetworkSessionCocoa.mm:
(WebKit::configurationForSessionID):
- 1:29 PM Changeset in webkit [280157] by
-
- 3 edits in trunk/Source/WebKit
REGRESSION (r278916): Hitting ASSERT(!m_db.m_transactionInProgress) in SQLiteTransaction::begin()
https://bugs.webkit.org/show_bug.cgi?id=228151
<rdar://80231894>
Reviewed by Geoffrey Garen.
Because it is hard to keep track of whether or not a transaction has already been started in
ResourceLoadStatisticsDatabaseStore code and because passing a transaction as parameter adds
a lot of function overloads, I decided to switch to another approach. I added a
beginTransactionIfNecessary() member function that begins a transaction if there isn't one
already going on. This way, we can safely ask to begin a transaction within the scope of
a function (if we're about to do several write statements), without having to worry about
whether or not our caller already started a transaction.
- NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp:
(WebKit::ResourceLoadStatisticsDatabaseStore::ResourceLoadStatisticsDatabaseStore):
(WebKit::ResourceLoadStatisticsDatabaseStore::migrateDataToNewTablesIfNecessary):
(WebKit::ResourceLoadStatisticsDatabaseStore::addMissingColumnsToTable):
(WebKit::ResourceLoadStatisticsDatabaseStore::addMissingTablesIfNecessary):
(WebKit::ResourceLoadStatisticsDatabaseStore::ensureAndMakeDomainList):
(WebKit::ResourceLoadStatisticsDatabaseStore::insertDomainRelationshipList):
(WebKit::ResourceLoadStatisticsDatabaseStore::insertDomainRelationships):
(WebKit::ResourceLoadStatisticsDatabaseStore::populateFromMemoryStore):
(WebKit::ResourceLoadStatisticsDatabaseStore::merge):
(WebKit::ResourceLoadStatisticsDatabaseStore::mergeStatistic):
(WebKit::ResourceLoadStatisticsDatabaseStore::mergeStatistics):
(WebKit::ResourceLoadStatisticsDatabaseStore::reclassifyResources):
(WebKit::ResourceLoadStatisticsDatabaseStore::requestStorageAccess):
(WebKit::ResourceLoadStatisticsDatabaseStore::requestStorageAccessUnderOpener):
(WebKit::ResourceLoadStatisticsDatabaseStore::grantStorageAccess):
(WebKit::ResourceLoadStatisticsDatabaseStore::grantStorageAccessInternal):
(WebKit::ResourceLoadStatisticsDatabaseStore::grandfatherDataForDomains):
(WebKit::ResourceLoadStatisticsDatabaseStore::ensurePrevalentResourcesForDebugMode):
(WebKit::ResourceLoadStatisticsDatabaseStore::logFrameNavigation):
(WebKit::ResourceLoadStatisticsDatabaseStore::logCrossSiteLoadWithLinkDecoration):
(WebKit::ResourceLoadStatisticsDatabaseStore::clearTopFrameUniqueRedirectsToSinceSameSiteStrictEnforcement):
(WebKit::ResourceLoadStatisticsDatabaseStore::logUserInteraction):
(WebKit::ResourceLoadStatisticsDatabaseStore::clearUserInteraction):
(WebKit::ResourceLoadStatisticsDatabaseStore::hasHadUserInteraction):
(WebKit::ResourceLoadStatisticsDatabaseStore::setPrevalentResource):
(WebKit::ResourceLoadStatisticsDatabaseStore::clearPrevalentResource):
(WebKit::ResourceLoadStatisticsDatabaseStore::setGrandfathered):
(WebKit::ResourceLoadStatisticsDatabaseStore::setIsScheduledForAllButCookieDataRemoval):
(WebKit::ResourceLoadStatisticsDatabaseStore::setSubframeUnderTopFrameDomain):
(WebKit::ResourceLoadStatisticsDatabaseStore::setSubresourceUnderTopFrameDomain):
(WebKit::ResourceLoadStatisticsDatabaseStore::setSubresourceUniqueRedirectTo):
(WebKit::ResourceLoadStatisticsDatabaseStore::setSubresourceUniqueRedirectFrom):
(WebKit::ResourceLoadStatisticsDatabaseStore::setTopFrameUniqueRedirectTo):
(WebKit::ResourceLoadStatisticsDatabaseStore::setTopFrameUniqueRedirectFrom):
(WebKit::ResourceLoadStatisticsDatabaseStore::registrableDomainsToDeleteOrRestrictWebsiteDataFor):
(WebKit::ResourceLoadStatisticsDatabaseStore::setLastSeen):
(WebKit::ResourceLoadStatisticsDatabaseStore::setVeryPrevalentResource):
(WebKit::ResourceLoadStatisticsDatabaseStore::includeTodayAsOperatingDateIfNecessary):
(WebKit::ResourceLoadStatisticsDatabaseStore::insertExpiredStatisticForTesting):
(WebKit::ResourceLoadStatisticsDatabaseStore::insertPrivateClickMeasurement):
(WebKit::ResourceLoadStatisticsDatabaseStore::clearPrivateClickMeasurement):
(WebKit::ResourceLoadStatisticsDatabaseStore::markAttributedPrivateClickMeasurementsAsExpiredForTesting):
(WebKit::ResourceLoadStatisticsDatabaseStore::beginTransactionIfNecessary):
- NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.h:
- 1:27 PM Changeset in webkit [280156] by
-
- 2 edits in trunk/LayoutTests
[ Win EWS ] Multiple fast layout-tests are slowing down results
https://bugs.webkit.org/show_bug.cgi?id=228162
Unreviewed Windows test gardening to speed up EWS.
- platform/win/TestExpectations:
- 1:10 PM Changeset in webkit [280155] by
-
- 27 edits4 adds in trunk
[GTK][WPE] Allow the user to configure the MemoryPressureHandler inside the web process
https://bugs.webkit.org/show_bug.cgi?id=222738
Reviewed by Carlos Garcia Campos.
Source/WebCore:
MemoryPressureHandler::currentMemoryUsagePolicy() is now an instance method and not a class one,
so update the call in RenderLayerCompositor to use the singleton instance.
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateCompositingPolicy):
Source/WebKit:
Add a new API type WebKitMemoryPressureSettings that can be used to configure the behavior
of the MemoryPressureHandler. Add a property to WebKitWebContext that can be used to pass
new settings to it, and store them inside its API::ProcessPoolConfiguration. Those settings
will be set to new web processes during the platform initialization stage.
- PlatformGTK.cmake:
- PlatformWPE.cmake:
- Shared/WebProcessCreationParameters.cpp:
(WebKit::WebProcessCreationParameters::encode const):
(WebKit::WebProcessCreationParameters::decode):
- Shared/WebProcessCreationParameters.h:
- SourcesGTK.txt:
- SourcesWPE.txt:
- UIProcess/API/APIProcessPoolConfiguration.cpp:
(API::ProcessPoolConfiguration::copy):
- UIProcess/API/APIProcessPoolConfiguration.h:
- UIProcess/API/glib/WebKitMemoryPressureSettings.cpp: Added.
(webkit_memory_pressure_settings_new):
(webkit_memory_pressure_settings_copy):
(webkit_memory_pressure_settings_free):
(webkit_memory_pressure_settings_set_memory_limit):
(webkit_memory_pressure_settings_get_memory_limit):
(webkit_memory_pressure_settings_set_conservative_threshold):
(webkit_memory_pressure_settings_get_conservative_threshold):
(webkit_memory_pressure_settings_set_strict_threshold):
(webkit_memory_pressure_settings_get_strict_threshold):
(webkit_memory_pressure_settings_set_kill_threshold):
(webkit_memory_pressure_settings_get_kill_threshold):
(webkit_memory_pressure_settings_set_poll_interval):
(webkit_memory_pressure_settings_get_poll_interval):
(webkitMemoryPressureSettingsGetMemoryPressureHandlerConfiguration):
- UIProcess/API/glib/WebKitMemoryPressureSettingsPrivate.h: Added.
- UIProcess/API/glib/WebKitWebContext.cpp:
(webkitWebContextSetProperty):
(webkitWebContextConstructed):
(webkit_web_context_class_init):
- UIProcess/API/gtk/WebKitAutocleanups.h:
- UIProcess/API/gtk/WebKitMemoryPressureSettings.h: Added.
- UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt:
- UIProcess/API/gtk/webkit2.h:
- UIProcess/API/wpe/WebKitAutocleanups.h:
- UIProcess/API/wpe/WebKitMemoryPressureSettings.h: Added.
- UIProcess/API/wpe/docs/wpe-1.0-sections.txt:
- UIProcess/API/wpe/webkit.h:
- UIProcess/glib/WebProcessPoolGLib.cpp:
(WebKit::WebProcessPool::platformInitializeWebProcess):
- WebProcess/glib/WebProcessGLib.cpp:
(WebKit::WebProcess::platformInitializeWebProcess):
Source/WTF:
Add a configuration structure to MemoryPressureHandler, with the methods to encode/decode it. Also
add a method to set a configuration structure to a MemoryPressureHandler instance, and modify the
behavior so the the configuration is used when checking the memory used by the process.
- wtf/MemoryPressureHandler.cpp:
(WTF::MemoryPressureHandler::setShouldUsePeriodicMemoryMonitor):
(WTF::MemoryPressureHandler::thresholdForMemoryKill):
(WTF::MemoryPressureHandler::thresholdForPolicy):
(WTF::MemoryPressureHandler::policyForFootprint):
(WTF::MemoryPressureHandler::Configuration::Configuration):
- wtf/MemoryPressureHandler.h:
(WTF::MemoryPressureHandler::Configuration::encode const):
(WTF::MemoryPressureHandler::Configuration::decode):
(WTF::MemoryPressureHandler::setConfiguration):
Tools:
Add a test for WebKitMemoryPressureSettings API and to test WebKitWebContext with
non default WebKitMemoryPressureSettings values.
- TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp:
(MemoryPressureTest::setup):
(MemoryPressureTest::teardown):
(MemoryPressureTest::webProcessTerminatedCallback):
(MemoryPressureTest::waitUntilWebProcessTerminated):
(testMemoryPressureSettings):
(beforeAll):
- TestWebKitAPI/glib/WebKitGLib/TestMain.cpp:
- TestWebKitAPI/glib/WebKitGLib/TestMain.h:
(Test::Test):
- 12:48 PM Changeset in webkit [280154] by
-
- 2 edits in trunk/LayoutTests
Grouped/organized expectations for 227881.
https://bugs.webkit.org/show_bug.cgi?id=227728.
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- 12:26 PM Changeset in webkit [280153] by
-
- 6 edits in trunk/Source
Unreviewed, reverting r280129.
Broke the internal Monterey build bots
Reverted changeset:
"GetIdentifierStringForPreferredVoiceInListWithLocale() is
deprecated in Monterey"
https://bugs.webkit.org/show_bug.cgi?id=228066
https://commits.webkit.org/r280129
- 11:51 AM Changeset in webkit [280152] by
-
- 2 edits in trunk/LayoutTests
Update test expectations for inspector/canvas/recording-2d-full.html and inspector/canvas/recording-2d-full.html .
https://bugs.webkit.org/show_bug.cgi?id=227881.
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- 11:11 AM Changeset in webkit [280151] by
-
- 4 edits in trunk
Crash in -[WKWebView takeSnapshotWithConfiguration:completionHandler:] when taking empty snapshots
https://bugs.webkit.org/show_bug.cgi?id=228134
rdar://80146087
Reviewed by Chris Dumez.
Source/WebKit:
r279006 made it so that taking empty snapshots would no longer crash due
to division by zero, or assertions on the size of the returned image.
However, the change introduced a new crash, as a result of a deallocated
completionHandler. r279006 move-captured the completion handler. However,
since completionHandler is an Objective-C block, and WebKit is built
without ARC, the move does not retain the block. Consequently, the
method can call a deallocated completion handler.
To fix, capture the local handler variable already available in the
method, which retains the completion handler using makeBlockPtr.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView takeSnapshotWithConfiguration:completionHandler:]):
Tools:
Added a test to verify the crash no longer occurs.
- TestWebKitAPI/Tests/WebKitCocoa/WKWebViewSnapshot.mm:
(-[TestSnapshotWrapper takeSnapshotWithWebView:configuration:completionHandler:]):
(TEST):
- 11:09 AM Changeset in webkit [280150] by
-
- 2 edits in trunk/LayoutTests
Update expectations for inspector/canvas/recording-webgl-snapshots.html.
https://bugs.webkit.org/show_bug.cgi?id=227881.
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- 10:48 AM Changeset in webkit [280149] by
-
- 3 edits in trunk/Source/JavaScriptCore
speculateNeitherDoubleNorStringNorHeapBigInt should only have a single JSType branch
https://bugs.webkit.org/show_bug.cgi?id=228146
Reviewed by Robin Morisset.
Since StringType and HeapBigIntType are adjacent JSTypes
we can do an integer range check rather than two separate
JSType checks.
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::speculateNeitherDoubleNorHeapBigIntNorString):
- ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileCompareStrictEq):
- 10:24 AM Changeset in webkit [280148] by
-
- 2 edits in trunk/LayoutTests
[ BigSur Release wk2 arm64 & iOS] http/tests/appcache/fail-on-update-2.html (layout-test) is a flaky timeout.
https://bugs.webkit.org/show_bug.cgi?id=225665
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- 10:09 AM Changeset in webkit [280147] by
-
- 8 edits in branches/safari-612.1.24.1-branch/Source
Versioning.
WebKit-7612.1.24.1.4
- 10:03 AM Changeset in webkit [280146] by
-
- 8 edits in branches/safari-612.1.24.0-branch/Source/WebKit
Cherry-pick r280122. rdar://problem/80902802
[iOS] Add SPI for internal clients to consult whether or not viewport quirks should be enabled
https://bugs.webkit.org/show_bug.cgi?id=228123
rdar://80397679
Reviewed by Dan Bernstein.
Rename the SPI added in r280119 from
-_needsSiteSpecificQuirksto-_needsSiteSpecificViewportQuirks, to
clarify its intent (and importantly, to differentiate it from the existing WKPreferences SPI of the same name).
This distinction is important because this readonly property acts as a hint for WebKit clients to augment
certain viewport behaviors, whereas the readwrite WKPreferences property is a way for clients to indicate that
WebKit should opt in or out of site-specific quirks (unless overridden by Web Inspector).
- UIProcess/API/Cocoa/WKWebView.mm: (-[WKWebView _needsSiteSpecificViewportQuirks]): (-[WKWebView _needsSiteSpecificQuirks]): Deleted.
- UIProcess/API/Cocoa/WKWebViewPrivate.h:
- UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::resetStateAfterProcessTermination):
- UIProcess/WebPageProxy.h:
- UIProcess/WebPageProxy.messages.in:
- WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::didCommitLoad):
- WebProcess/WebPage/WebPage.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@280122 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 10:03 AM Changeset in webkit [280145] by
-
- 8 edits in branches/safari-612.1.24.0-branch/Source/WebKit
Cherry-pick r280119. rdar://problem/80902802
[iOS] Add SPI for internal clients to consult whether or not viewport quirks should be enabled
https://bugs.webkit.org/show_bug.cgi?id=228123
rdar://80397679
Reviewed by Tim Horton.
Add support for an SPI property on WKWebView that indicates whether site-specific quirks should be enabled.
For now, this flag is only updated whenever we commit a mainframe load, which is sufficient for the purposes of
Safari to determine whether or not to use quirked viewport behaviors for tab pill behavior.
If needed in the future, this property should probably:
- Support KVO, and...
- Change eagerly when the option is toggled via Web Inspector.
- UIProcess/API/Cocoa/WKWebView.mm: (-[WKWebView _needsSiteSpecificQuirks]):
- UIProcess/API/Cocoa/WKWebViewPrivate.h:
- UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::resetStateAfterProcessTermination):
Maintain a corresponding flag on the WebPageProxy in the UI process, which starts out as
trueand is reset
if the web process terminates.
- UIProcess/WebPageProxy.h:
- UIProcess/WebPageProxy.messages.in:
- WebProcess/WebPage/WebPage.cpp:
Add plumbing to propagate changes in the boolean flag to the UI process.
(WebKit::WebPage::didCommitLoad):
Update the flag on WebPage.
- WebProcess/WebPage/WebPage.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@280119 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 10:01 AM Changeset in webkit [280144] by
-
- 8 edits in branches/safari-612.1.24.0-branch/Source
Versioning.
WebKit-7612.1.24.0.4
- 9:49 AM Changeset in webkit [280143] by
-
- 2 edits in trunk/LayoutTests
Revert "Added test expectations to ios-wk2."
This reverts commit 280142.
- 9:37 AM Changeset in webkit [280142] by
-
- 2 edits in trunk/LayoutTests
Added test expectations to ios-wk2.
Unreviewed test gardening.
- 9:16 AM Changeset in webkit [280141] by
-
- 6 edits in trunk/LayoutTests
[AspectRatio] Fix select-element-001.html
https://bugs.webkit.org/show_bug.cgi?id=228144
Patch by Rob Buis <rbuis@igalia.com> on 2021-07-21
Reviewed by Manuel Rego Casasnovas.
LayoutTests/imported/w3c:
Import fixed select-element-001.html based on SHA c2ddbb6.
- web-platform-tests/css/css-sizing/aspect-ratio/select-element-001-expected.html:
- web-platform-tests/css/css-sizing/aspect-ratio/select-element-001.html:
- web-platform-tests/css/css-sizing/aspect-ratio/w3c-import.log:
LayoutTests:
Now select-element-001.html passes.
- 8:32 AM Changeset in webkit [280140] by
-
- 2 edits in trunk/Source/WebKit
[GTK] Theme scrollbar css is no longer respected
https://bugs.webkit.org/show_bug.cgi?id=228145
Patch by Alexander Mikhaylenko <Alexander Mikhaylenko> on 2021-07-21
Reviewed by Michael Catanzaro.
Fix a fontName -> themeName typo.
- WebProcess/gtk/GtkSettingsManagerProxy.cpp:
(WebKit::GtkSettingsManagerProxy::applySettings):
- 8:31 AM Changeset in webkit [280139] by
-
- 9 edits in releases/WebKitGTK/webkit-2.32/Source/WebKit
Merge r280128 - REGRESSION(r267763): [SOUP] After network process crash, all cookies are lost until browser is restarted
https://bugs.webkit.org/show_bug.cgi?id=228128
Reviewed by Adrian Perez de Castro.
Cookies configuration is no longer stored to be sent again to the new network process after a crash.
- NetworkProcess/NetworkSessionCreationParameters.cpp:
(WebKit::NetworkSessionCreationParameters::encode const): Encode cookieAcceptPolicy.
(WebKit::NetworkSessionCreationParameters::decode): Decode cookieAcceptPolicy.
- NetworkProcess/NetworkSessionCreationParameters.h: Add cookieAcceptPolicy.
- NetworkProcess/soup/NetworkSessionSoup.cpp:
(WebKit::NetworkSessionSoup::NetworkSessionSoup): Set cookie accept policy on NetworkStorageSession.
- UIProcess/API/glib/WebKitCookieManager.cpp:
(webkit_cookie_manager_set_persistent_storage): Use WebsiteDataStore API to cache the given values.
(webkit_cookie_manager_set_accept_policy): Ditto.
- UIProcess/WebCookieManagerProxy.h:
- UIProcess/WebsiteData/WebsiteDataStore.h:
- UIProcess/WebsiteData/soup/WebsiteDataStoreSoup.cpp:
(WebKit::WebsiteDataStore::platformSetNetworkParameters): Set cached cookie settings to network session parameters.
(WebKit::WebsiteDataStore::setCookiePersistentStorage): Cache the given value and notify the cookie manager.
(WebKit::WebsiteDataStore::setHTTPCookieAcceptPolicy): Ditto.
- UIProcess/soup/WebCookieManagerProxySoup.cpp:
(WebKit::WebCookieManagerProxy::getCookiePersistentStorage const): Deleted.
- 8:31 AM WebKitGTK/2.32.x edited by
- (diff)
- 8:09 AM Changeset in webkit [280138] by
-
- 2 edits in releases/WebKitGTK/webkit-2.32/Source/WebCore
Merge r274403 - Cancel image loader events after first dispatch
https://bugs.webkit.org/show_bug.cgi?id=218556
Patch by Rob Buis <rbuis@igalia.com> on 2021-03-14
Reviewed by Darin Adler.
Address post review comments.
- dom/EventSender.h:
(WebCore::EventSender<T>::dispatchPendingEvents):
- 8:09 AM WebKitGTK/2.32.x edited by
- (diff)
- 8:07 AM WebKitGTK/2.32.x edited by
- (diff)
- 8:06 AM WebKitGTK/2.32.x edited by
- (diff)
- 8:01 AM WebKitGTK/2.32.x edited by
- (diff)
- 7:45 AM Changeset in webkit [280137] by
-
- 4 edits in releases/WebKitGTK/webkit-2.32/Source/WebKit
Merge r280074 - [GTK][WPE] Fix compilation when ATK is not used
https://bugs.webkit.org/show_bug.cgi?id=228077
Reviewed by Carlos Garcia Campos.
Guard ATK only inside implementations, so the code is more readable.
Also changed guard from ATK to GTK platform showEmojiPicker().
No new tests needed.
- UIProcess/WebPageProxy.h:
- UIProcess/WebPageProxy.messages.in:
- UIProcess/wpe/WebPageProxyWPE.cpp:
(WebKit::WebPageProxy::bindAccessibilityTree):
- 7:45 AM Changeset in webkit [280136] by
-
- 4 edits in releases/WebKitGTK/webkit-2.32/Source/WebKit
Merge r279983 - [GTK][WPE] PSON: accessibility doesn't work after a cross site navigation
https://bugs.webkit.org/show_bug.cgi?id=228021
Reviewed by Adrian Perez de Castro.
The provisional page is not handling the BindAccessibilityTree message and we never embed the new web process
plug into the UI process socket.
- UIProcess/ProvisionalPageProxy.cpp:
(WebKit::ProvisionalPageProxy::bindAccessibilityTree): Save the a11y plug ID.
(WebKit::ProvisionalPageProxy::didReceiveMessage): Handle BindAccessibilityTree message.
- UIProcess/ProvisionalPageProxy.h:
(WebKit::ProvisionalPageProxy::accessibilityPlugID): Returns the a11y plug ID.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::swapToProvisionalPage): If the provisional page has a plug ID, bind the a11y tree.
- 7:44 AM Changeset in webkit [280135] by
-
- 2 edits in releases/WebKitGTK/webkit-2.32/Source/WebCore
Merge r279873 - [GStreamer] Allow runtime opt-out of GL rendering
https://bugs.webkit.org/show_bug.cgi?id=227873
Patch by Philippe Normand <pnormand@igalia.com> on 2021-07-13
Reviewed by Xabier Rodriguez-Calvar.
In some cases GL rendering is not really useful, such as on machines without GPU. In those
cases currently Mesa's llvmpipe is used, introducing CPU and RAM usage increase compared to
the non-gl rendering path. For these cases the user can set a new env var,
WEBKIT_GST_DISABLE_GL_SINK=1, allowing the player to use the Cairo sink.
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::createVideoSinkGL):
- 7:44 AM Changeset in webkit [280134] by
-
- 5 edits in releases/WebKitGTK/webkit-2.32
Merge r278548 - [GTK][WPE] Signal "window-object-cleared" not emitted unless frame js context is get before
https://bugs.webkit.org/show_bug.cgi?id=221771
Reviewed by Michael Catanzaro.
Source/WebKit:
This is because when FrameLoader::dispatchDidClearWindowObjectInWorld() is called, the JSWindowProxy for the
world hasn't been created yet, so it returns early. But we want to dispatch it always for worlds created by the
API, to ensure that WebKitScriptWorld::window-object-cleared is emmitted.
- WebProcess/InjectedBundle/API/glib/WebKitWebPage.cpp: Implement globalObjectIsAvailableForFrame() to force the
creation of the JavaScript context for existing WebKitScriptWorlds.
Tools:
Update window-object-cleared test to check that the signal is emitted for the WebKitScriptWorld objects created
by the extension.
- TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:
(UserMessageTest::sendMessage):
(UserMessageTest::viewUserMessageReceived):
(UserMessageTest::waitUntilViewMessagesReceived):
(UserMessageTest::waitUntilViewMessageReceived):
(testWebExtensionWindowObjectCleared):
(beforeAll):
- TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
(windowObjectCleared):
(isolatedWorldWindowObjectCleared):
(webkit_web_extension_initialize_with_user_data):
- 7:44 AM Changeset in webkit [280133] by
-
- 2 edits in releases/WebKitGTK/webkit-2.32/Source/WebCore
Merge r274025 - CanvasRenderingContext2DBase::canDrawTextWithParams() needs to resolve styles before using the drawingContext
https://bugs.webkit.org/show_bug.cgi?id=221257
<rdar://problem/73878095>
Reviewed by Ryosuke Niwa.
Simply call fontProxy() (which internally resolves styles) before calling drawingContext().
Test: fast/text/canvas-synchronous-events.html
- html/canvas/CanvasRenderingContext2DBase.cpp:
(WebCore::CanvasRenderingContext2DBase::canDrawTextWithParams):
- 7:44 AM Changeset in webkit [280132] by
-
- 4 edits in releases/WebKitGTK/webkit-2.32/Source/WebCore
Merge r274357 - Cancel image loader events after first dispatch
https://bugs.webkit.org/show_bug.cgi?id=218556
Patch by Rob Buis <rbuis@igalia.com> on 2021-03-12
Reviewed by Ryosuke Niwa.
Cancel image loader events after first dispatch.
Also change EventSender to use WeakPtr.
- dom/EventSender.h:
(WebCore::EventSender<T>::dispatchEventSoon):
(WebCore::EventSender<T>::dispatchPendingEvents):
- loader/ImageLoader.cpp:
(WebCore::ImageLoader::dispatchPendingErrorEvent):
- loader/ImageLoader.h:
- 7:44 AM Changeset in webkit [280131] by
-
- 2 edits in releases/WebKitGTK/webkit-2.32/Source/WebKit
Merge r275802 - Properly use CompletionHandler when USE_OPENGL_OR_ES is set to OFF
https://bugs.webkit.org/show_bug.cgi?id=224149
Patch by Charlène Wendling <julianaito@posteo.jp> on 2021-04-10
Reviewed by Fujii Hironori.
- WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.h:
(WebKit::LayerTreeHost::forceRepaintAsync):
- 7:37 AM WebKitGTK/2.32.x edited by
- (diff)
- 7:06 AM WebKitGTK/2.32.x edited by
- (diff)
- 6:40 AM Changeset in webkit [280130] by
-
- 2 edits in trunk/Source/WebCore
Missing layouts when using simplified layout with OOF positioned elements
https://bugs.webkit.org/show_bug.cgi?id=226008
Reviewed by Alan Bujtas.
There are some situations that allow us to do simplified layouts like when there is a positioned child
that needs to be laid out and neither the parent nor any other normal children needs it. In those cases
we just pick the list of positioned objects and invoke layoutPositionedObjects(). However that list
might not be properly updated since it's only done during the layout in RenderBlock::layoutBlockChildren().
This is causing that we miss layouts in cases where a renderer has the posChildNeedsLayout() bit set
(due to some style change for example) but no descendants in the positionedDescendantsMap() because
it has not been laid out yet. In those cases we simply bail out the simplified layout and proceed as in
the normal layout process.
- rendering/RenderBlock.cpp:
(WebCore::RenderBlock::simplifiedLayout):
- 5:57 AM Changeset in webkit [280129] by
-
- 6 edits in trunk/Source
GetIdentifierStringForPreferredVoiceInListWithLocale() is deprecated in Monterey
<https://webkit.org/b/228066>
<rdar://problem/80577312>
Reviewed by Alexey Proskuryakov.
Source/WebCore:
- platform/mac/PlatformSpeechSynthesizerMac.mm:
(WebCore::speechSynthesisGetDefaultVoiceIdentifierForLocale):
- Switch to use CopyIdentifierStringForPreferredVoiceInListWithLocale() in Monterey.
- Change to return RetainPtr<> to handle lifetime of object returned from new function.
(WebCore::PlatformSpeechSynthesizer::initializeVoiceList):
- Change varible type to 'auto' since return type of speechSynthesisGetDefaultVoiceIdentifierForLocale() changed.
Source/WebCore/PAL:
- pal/spi/mac/SpeechSynthesisSPI.h:
(CopyIdentifierStringForPreferredVoiceInListWithLocale): Add.
- Define replacement function for GetIdentifierStringForPreferredVoiceInListWithLocale() in Monterey.
Source/WTF:
- wtf/PlatformHave.h:
- Add HAVE(SPEECHSYNTHESIS_MONTEREY_SPI).
- 4:51 AM Changeset in webkit [280128] by
-
- 9 edits in trunk/Source/WebKit
REGRESSION(r267763): [SOUP] After network process crash, all cookies are lost until browser is restarted
https://bugs.webkit.org/show_bug.cgi?id=228128
Reviewed by Adrian Perez de Castro.
Cookies configuration is no longer stored to be sent again to the new network process after a crash.
- NetworkProcess/NetworkSessionCreationParameters.cpp:
(WebKit::NetworkSessionCreationParameters::encode const): Encode cookieAcceptPolicy.
(WebKit::NetworkSessionCreationParameters::decode): Decode cookieAcceptPolicy.
- NetworkProcess/NetworkSessionCreationParameters.h: Add cookieAcceptPolicy.
- NetworkProcess/soup/NetworkSessionSoup.cpp:
(WebKit::NetworkSessionSoup::NetworkSessionSoup): Set cookie accept policy on NetworkStorageSession.
- UIProcess/API/glib/WebKitCookieManager.cpp:
(webkit_cookie_manager_set_persistent_storage): Use WebsiteDataStore API to cache the given values.
(webkit_cookie_manager_set_accept_policy): Ditto.
- UIProcess/WebCookieManagerProxy.h:
- UIProcess/WebsiteData/WebsiteDataStore.h:
- UIProcess/WebsiteData/soup/WebsiteDataStoreSoup.cpp:
(WebKit::WebsiteDataStore::platformSetNetworkParameters): Set cached cookie settings to network session parameters.
(WebKit::WebsiteDataStore::setCookiePersistentStorage): Cache the given value and notify the cookie manager.
(WebKit::WebsiteDataStore::setHTTPCookieAcceptPolicy): Ditto.
- UIProcess/soup/WebCookieManagerProxySoup.cpp:
(WebKit::WebCookieManagerProxy::getCookiePersistentStorage const): Deleted.
- 4:35 AM Changeset in webkit [280127] by
-
- 4 edits in trunk/Websites/perf.webkit.org
Use bigint for 'commit_order' field in 'commits' table to support larger range.
https://bugs.webkit.org/show_bug.cgi?id=228133
Reviewed by Ryosuke Niwa.
'integer' in postgres has range from -2147483648 to +2147483647 which is not big enough.
Use 'bigint' to support wider range (-9223372036854775808 to 9223372036854775807).
SQL query for migration:
ALTER TABLE commits ALTER commit_order TYPE bigint;
- init-database.sql: Update 'integer' to 'bigint' for 'commit_order'.
- migrate-database.sql: Added migration SQL for this change.
- server-tests/api-report-commits-tests.js: Add a unit test.
Jul 20, 2021:
- 10:55 PM Changeset in webkit [280126] by
-
- 1 copy in tags/Safari-612.1.24.0.3
Tag Safari-612.1.24.0.3.
- 10:37 PM Changeset in webkit [280125] by
-
- 8 edits in branches/safari-612.1.24.0-branch/Source
Versioning.
WebKit-7612.1.24.0.3
- 9:23 PM Changeset in webkit [280124] by
-
- 4 edits in trunk/Source
r280103 is not necessary on all operating systems
https://bugs.webkit.org/show_bug.cgi?id=228136
Reviewed by Alan Bujtas.
Source/WebCore:
r280103 is not necessary on all operating systems.
No new tests because there is no behavior change.
- platform/graphics/WidthIterator.cpp:
(WebCore::WidthIterator::applyFontTransforms):
Source/WTF:
- wtf/PlatformUse.h:
- 8:33 PM Changeset in webkit [280123] by
-
- 24 edits in trunk/Source/WebCore
Make the 'targetElement' argument of the SVG animators to be a reference
https://bugs.webkit.org/show_bug.cgi?id=228132
Reviewed by Simon Fraser.
It is clear that many SVG animators functions assume the argument
'targetElement' is not nullptr. Also the caller SVGAnimateElementBase
makes sure its targetElement() is not nullptr before calling any of its
animator's functions.
- svg/SVGAnimateElementBase.cpp:
(WebCore::SVGAnimateElementBase::setTargetElement):
(WebCore::SVGAnimateElementBase::calculateFromAndToValues):
(WebCore::SVGAnimateElementBase::calculateFromAndByValues):
(WebCore::SVGAnimateElementBase::startAnimation):
(WebCore::SVGAnimateElementBase::calculateAnimatedValue):
(WebCore::SVGAnimateElementBase::applyResultsToTarget):
(WebCore::SVGAnimateElementBase::stopAnimation):
(WebCore::SVGAnimateElementBase::calculateDistance):
- svg/SVGElement.cpp:
(WebCore::SVGElement::commitPropertyChange):
- svg/properties/SVGAnimatedPropertyAnimator.h:
- svg/properties/SVGAnimatedPropertyAnimatorImpl.h:
- svg/properties/SVGAnimatedPropertyPairAnimator.h:
- svg/properties/SVGAnimatedPropertyPairAnimatorImpl.h:
- svg/properties/SVGAnimationAdditiveFunction.h:
- svg/properties/SVGAnimationAdditiveListFunctionImpl.h:
(WebCore::SVGAnimationLengthListFunction::animate):
(WebCore::SVGAnimationNumberListFunction::animate):
(WebCore::SVGAnimationPointListFunction::animate):
(WebCore::SVGAnimationTransformListFunction::animate):
- svg/properties/SVGAnimationAdditiveValueFunctionImpl.cpp:
(WebCore::SVGAnimationColorFunction::colorFromString):
(WebCore::SVGAnimationIntegerFunction::calculateDistance const):
- svg/properties/SVGAnimationAdditiveValueFunctionImpl.h:
(WebCore::SVGAnimationAngleFunction::animate):
(WebCore::SVGAnimationColorFunction::animate):
(WebCore::SVGAnimationLengthFunction::animate):
(WebCore::SVGAnimationNumberFunction::animate):
(WebCore::SVGAnimationPathSegListFunction::animate):
(WebCore::SVGAnimationRectFunction::animate):
- svg/properties/SVGAnimationDiscreteFunction.h:
(WebCore::SVGAnimationDiscreteFunction::animate):
- svg/properties/SVGAnimationDiscreteFunctionImpl.h:
- svg/properties/SVGAnimationFunction.h:
(WebCore::SVGAnimationFunction::calculateDistance const):
(WebCore::SVGAnimationFunction::addFromAndToValues):
- svg/properties/SVGAttributeAnimator.cpp:
(WebCore::SVGAttributeAnimator::isAnimatedStylePropertyAniamtor const):
(WebCore::SVGAttributeAnimator::invalidateStyle):
(WebCore::SVGAttributeAnimator::applyAnimatedStylePropertyChange):
(WebCore::SVGAttributeAnimator::removeAnimatedStyleProperty):
(WebCore::SVGAttributeAnimator::applyAnimatedPropertyChange):
- svg/properties/SVGAttributeAnimator.h:
(WebCore::SVGAttributeAnimator::setFromAndToValues):
(WebCore::SVGAttributeAnimator::setFromAndByValues):
(WebCore::SVGAttributeAnimator::calculateDistance const):
- svg/properties/SVGPrimitivePropertyAnimator.h:
- svg/properties/SVGPropertyAnimator.h:
(WebCore::SVGPropertyAnimator::adjustForInheritance const):
(WebCore::SVGPropertyAnimator::computeInheritedCSSPropertyValue const):
- svg/properties/SVGPropertyOwnerRegistry.h:
- svg/properties/SVGPropertyRegistry.h:
Fix a typo in the name of setAnimatedPropertyDirty().
- svg/properties/SVGValuePropertyAnimator.h:
- svg/properties/SVGValuePropertyAnimatorImpl.h:
- svg/properties/SVGValuePropertyListAnimator.h:
- svg/properties/SVGValuePropertyListAnimatorImpl.h:
- 7:47 PM Changeset in webkit [280122] by
-
- 8 edits in trunk/Source/WebKit
[iOS] Add SPI for internal clients to consult whether or not viewport quirks should be enabled
https://bugs.webkit.org/show_bug.cgi?id=228123
rdar://80397679
Reviewed by Dan Bernstein.
Rename the SPI added in r280119 from
-_needsSiteSpecificQuirksto-_needsSiteSpecificViewportQuirks, to
clarify its intent (and importantly, to differentiate it from the existing WKPreferences SPI of the same name).
This distinction is important because this readonly property acts as a hint for WebKit clients to augment
certain viewport behaviors, whereas the readwrite WKPreferences property is a way for clients to indicate that
WebKit should opt in or out of site-specific quirks (unless overridden by Web Inspector).
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _needsSiteSpecificViewportQuirks]):
(-[WKWebView _needsSiteSpecificQuirks]): Deleted.
- UIProcess/API/Cocoa/WKWebViewPrivate.h:
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::resetStateAfterProcessTermination):
- UIProcess/WebPageProxy.h:
- UIProcess/WebPageProxy.messages.in:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::didCommitLoad):
- WebProcess/WebPage/WebPage.h:
- 6:02 PM Changeset in webkit [280121] by
-
- 1 copy in tags/Safari-612.1.24.1.3
Tag Safari-612.1.24.1.3.
- 5:56 PM Changeset in webkit [280120] by
-
- 8 edits in branches/safari-612.1.24.1-branch/Source
Versioning.
WebKit-7612.1.24.1.3
- 5:51 PM Changeset in webkit [280119] by
-
- 8 edits in trunk/Source/WebKit
[iOS] Add SPI for internal clients to consult whether or not viewport quirks should be enabled
https://bugs.webkit.org/show_bug.cgi?id=228123
rdar://80397679
Reviewed by Tim Horton.
Add support for an SPI property on WKWebView that indicates whether site-specific quirks should be enabled.
For now, this flag is only updated whenever we commit a mainframe load, which is sufficient for the purposes of
Safari to determine whether or not to use quirked viewport behaviors for tab pill behavior.
If needed in the future, this property should probably:
- Support KVO, and...
- Change eagerly when the option is toggled via Web Inspector.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _needsSiteSpecificQuirks]):
- UIProcess/API/Cocoa/WKWebViewPrivate.h:
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::resetStateAfterProcessTermination):
Maintain a corresponding flag on the WebPageProxy in the UI process, which starts out as
trueand is reset
if the web process terminates.
- UIProcess/WebPageProxy.h:
- UIProcess/WebPageProxy.messages.in:
- WebProcess/WebPage/WebPage.cpp:
Add plumbing to propagate changes in the boolean flag to the UI process.
(WebKit::WebPage::didCommitLoad):
Update the flag on WebPage.
- WebProcess/WebPage/WebPage.h:
- 5:37 PM Changeset in webkit [280118] by
-
- 2 edits in trunk/LayoutTests
Updated test expectations from [Pass Timeouts] to [ DumpJSConsoleLogInStdErr Slow ].
Unreviewed test gardening.
- 5:29 PM Changeset in webkit [280117] by
-
- 1 copy in tags/Safari-612.1.24.2.1
Tag Safari-612.1.24.2.1.
- 5:26 PM Changeset in webkit [280116] by
-
- 1 copy in tags/Safari-612.1.24.1.2
Tag Safari-612.1.24.1.2.
- 5:26 PM Changeset in webkit [280115] by
-
- 1 copy in tags/Safari-612.1.24.0.2
Tag Safari-612.1.24.0.2.
- 4:37 PM Changeset in webkit [280114] by
-
- 2 edits in trunk/Source/WebKit
REGRESSION(ANGLE+METAL): WebGL2 content low frame rate
https://bugs.webkit.org/show_bug.cgi?id=228012
Reviewed by Dean Jackson.
Add Additional rules, allowing shared events to work in Webkit
- Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in:
- 4:34 PM Changeset in webkit [280113] by
-
- 2 edits in trunk/LayoutTests
[ Mac wk2 ]inspector/canvas/recording-bitmaprenderer-full.html is a flaky failure and timeout.
https://bugs.webkit.org/show_bug.cgi?id=228131.
Unreviewed test gardening.
- 4:27 PM Changeset in webkit [280112] by
-
- 5 edits in trunk/Source/WebCore
Revert r272370: It delays first paint
https://bugs.webkit.org/show_bug.cgi?id=228121
<rdar://75362363>
Reviewed by Antti Koivisto.
r272370 breaks the cases when the rendering update is initiated when the layer tree is still frozen (circular dependency: visually empty check vs. rendering update)
- dom/Document.cpp:
(WebCore::Document::didInsertInDocumentShadowRoot):
- dom/Element.cpp:
(WebCore::Element::isVisibleWithoutResolvingFullStyle const):
- style/StyleScope.cpp:
(WebCore::Style::Scope::Scope):
(WebCore::Style::Scope::flushPendingSelfUpdate):
(WebCore::Style::Scope::clearPendingUpdate):
(WebCore::Style::Scope::scheduleUpdate):
(WebCore::Style::Scope::pendingUpdateTimerFired):
(WebCore::Style::Scope::insertedInDocument): Deleted.
- style/StyleScope.h:
- 4:20 PM Changeset in webkit [280111] by
-
- 7 edits in trunk/Source/JavaScriptCore
Add ARM64 EON opcode and select it in AIR
https://bugs.webkit.org/show_bug.cgi?id=228057
Reviewed by Saam Barati.
EON Rd Rn Rm <shift> #amount
Bitwise Exclusive OR NOT (shifted register) performs a bitwise Exclusive OR NOT
of a register value Rn and an optionally-shifted register value Rm, and writes the
result to the destination register. The instruction selector can utilize this to
lowering certain patterns in B3 IR before further Air optimization.
The equivalent pattern of EON Rd Rn Rm is d = n (m -1)
Given B3 IR:
Int @0 = ArgumentReg(%x0)
Int @1 = ArgumentReg(%x1)
Int @2 = -1
Int @3 = BitXor(@1, @2)
Int @4 = BitXor(@0, b@3)
Void@5 = Return(@4, Terminal)
Old optimized AIR
Not %x1, %x1, @3
Xor %x0, %x1, %x0, @4
Ret %x0, @5
New optimized AIR
XorNot %x0, %x1, %x0, @4
Ret %x0, @5
The equivalent pattern of EON-with-shift is d = n ((m ShiftType amount) -1)
Given B3 IR:
Int @0 = ArgumentReg(%x0)
Int @1 = ArgumentReg(%x1)
Int @2 = amount
Int @3 = -1
Int @4 = Shl(@1, @2)
Int @5 = BitXor(@4, @3)
Int @6 = BitXor(@0, @5)
Void b@7 = Return(b@6, Terminal)
Old optimized AIR
Lshift %x1, amount, %x1, @4
Not %x1, %x1, @5
Xor %x0, %x1, %x0, @6
Ret %x0, @7
New optimized AIR
XorNotLeftShift %x0, %x1, $63, %x0, @6
Ret %x0, @7
- assembler/MacroAssemblerARM64.h:
(JSC::MacroAssemblerARM64::xorNot32):
(JSC::MacroAssemblerARM64::xorNot64):
(JSC::MacroAssemblerARM64::xorNotLeftShift32):
(JSC::MacroAssemblerARM64::xorNotRightShift32):
(JSC::MacroAssemblerARM64::xorNotUnsignedRightShift32):
(JSC::MacroAssemblerARM64::xorNotLeftShift64):
(JSC::MacroAssemblerARM64::xorNotRightShift64):
(JSC::MacroAssemblerARM64::xorNotUnsignedRightShift64):
- assembler/testmasm.cpp:
(JSC::testXorNot32):
(JSC::testXorNot64):
(JSC::testXorNotWithLeftShift32):
(JSC::testXorNotWithRightShift32):
(JSC::testXorNotWithUnsignedRightShift32):
(JSC::testXorNotWithLeftShift64):
(JSC::testXorNotWithRightShift64):
(JSC::testXorNotWithUnsignedRightShift64):
- b3/B3LowerToAir.cpp:
- b3/air/AirOpcode.opcodes:
- b3/testb3.h:
- b3/testb3_2.cpp:
(testXorNot32):
(testXorNot64):
(testXorNotWithLeftShift32):
(testXorNotWithRightShift32):
(testXorNotWithUnsignedRightShift32):
(testXorNotWithLeftShift64):
(testXorNotWithRightShift64):
(testXorNotWithUnsignedRightShift64):
(addBitTests):
- 4:08 PM Changeset in webkit [280110] by
-
- 7 edits in trunk/Source/WebKit
Completion handler of NetworkProcess::prepareToSuspend may not be invoked promptly
https://bugs.webkit.org/show_bug.cgi?id=228119
Reviewed by Chris Dumez.
WebResourceLoadStatisticsStore and StorageManagerSet dispatch task to suspend background thread on suspension.
When the task is finished on background thread, it dispatches a reply task to main thread. When all replies are
received, network process replies prepareToSuspend message. With our current implementation, if network process
receives messages in order { PrepareToSuspend, ProcessDidResume, PrepareToSuspend },
WebResourceLoadStatisticsStore and StorageManagerSet may dispatch two suspend tasks to background thread and
get suspended in the first task. In this case, the second PrepareToSuspend message will not be replied, and
UI process will be waiting on reply for the latest PrepareToSuspend message to release assertion. To solve this,
background thread should only execute latest suspend task by checking task identifier.
- NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp:
(WebKit::WTF_GUARDED_BY_LOCK):
(WebKit::WebResourceLoadStatisticsStore::resourceLoadStatisticsUpdated):
(WebKit::WebResourceLoadStatisticsStore::suspend):
(WebKit::WebResourceLoadStatisticsStore::resume):
(): Deleted.
- NetworkProcess/Classifier/WebResourceLoadStatisticsStore.h:
- NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::suspendIDBServers):
- NetworkProcess/NetworkProcess.h:
- NetworkProcess/WebStorage/StorageManagerSet.cpp:
(WebKit::StorageManagerSet::suspend):
(WebKit::StorageManagerSet::resume):
- NetworkProcess/WebStorage/StorageManagerSet.h:
(WebKit::StorageManagerSet::WTF_GUARDED_BY_LOCK):
(): Deleted.
- 3:55 PM Changeset in webkit [280109] by
-
- 2 edits in trunk/Tools
Don't run ftl-eager-no-cjit on debug builds
https://bugs.webkit.org/show_bug.cgi?id=228118
Reviewed by Mark Lam.
Many debug JSC stress tests time out intermittently. All I see are under
the ftl-eager-no-cjit mode.
- Scripts/run-jsc-stress-tests:
- 3:07 PM Changeset in webkit [280108] by
-
- 3 edits in trunk/LayoutTests
[ Mac , iOS Debug ] imported/w3c/web-platform-tests/html/cross-origin-opener-policy/resource-popup.https.html is a flaky failure.
https://bugs.webkit.org/show_bug.cgi?id=228127.
Unreviewed test gardening.
- 2:20 PM Changeset in webkit [280107] by
-
- 2 edits in trunk/Tools
Adding myself to Contributors.json
Unreviewed.
- 2:10 PM Changeset in webkit [280106] by
-
- 2 edits in trunk/Tools
Adding myself to Contributors.json.
Unreviewed.
- 2:01 PM Changeset in webkit [280105] by
-
- 3 edits in trunk/Source/WebKit
[Cocoa] Silence telemetry on MSC_mach_wait_until
https://bugs.webkit.org/show_bug.cgi?id=228112
<rdar://problem/78965631>
Reviewed by Per Arne Vollan.
We are processing a lot of telemetry for MSC_mach_wait_until in cases where a block with failure is the correct behavior.
Silencing the warning to reduce CPU and network traffic related to generating and de-duping telemetry on this call.
- Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in:
- WebProcess/com.apple.WebProcess.sb.in:
- 1:56 PM Changeset in webkit [280104] by
-
- 4 edits in trunk/LayoutTests
Update test expectations for svg/animations/smil-leak-list-property-instances.svg.
https://bugs.webkit.org/show_bug.cgi?id=214574.
Unreviewed test gardening.
Patch by Eric Hutchison <Eric Hutchison> on 2021-07-20
- platform/mac-wk2/TestExpectations:
- platform/mac/TestExpectations:
- 1:47 PM Changeset in webkit [280103] by
-
- 3 edits2 adds in trunk
REGRESSION(r272379): Characters with no fonts that support them are drawn as two .notdef glyphs in the fast text codepath
https://bugs.webkit.org/show_bug.cgi?id=228097
<rdar://problem/80798113>
Reviewed by Alan Bujtas.
Source/WebCore:
If a character is not in BMP, and we don't have a glyph for it,
we'll end up with two 0 glyphs in a row for the two surrogates of the character.
We need to make sure that, after shaping, these double-0-glyphs aren't preserved.
Test: fast/text/double-notdef-simple-text-codepath.html
- platform/graphics/WidthIterator.cpp:
(WebCore::WidthIterator::applyFontTransforms):
LayoutTests:
- fast/text/double-notdef-simple-text-codepath-expected.html: Added.
- fast/text/double-notdef-simple-text-codepath.html: Added.
- 1:40 PM Changeset in webkit [280102] by
-
- 2 edits in trunk/Source/WebCore
Use references instead of pointers in WidthIterator::advanceInternal()
https://bugs.webkit.org/show_bug.cgi?id=228099
Reviewed by Fujii Hironori.
We assert that font is non-null, so we should be able to use a reference for it instead of a pointer.
No new tests because there is no behavior change.
- platform/graphics/WidthIterator.cpp:
(WebCore::WidthIterator::advanceInternal):
- 1:39 PM Changeset in webkit [280101] by
-
- 169 edits2 adds in trunk/LayoutTests
[GLIB] Test gardening, update baselines after r279987
https://bugs.webkit.org/show_bug.cgi?id=228109
That change enabled dark mode support, which added dark backgrounds
in many cases.
Unreviewed test gardening.
Patch by Arcady Goldmints-Orlov <Arcady Goldmints-Orlov> on 2021-07-20
- platform/glib/compositing/backing/form-controls-backing-expected.txt:
- platform/glib/fast/box-sizing/percentage-height-expected.txt:
- platform/glib/fast/replaced/width100percent-searchfield-expected.txt:
- platform/glib/svg/custom/foreign-object-skew-expected.txt:
- platform/glib/tables/mozilla/bugs/bug92647-2-expected.txt:
- platform/gtk/css2.1/20110323/replaced-elements-001-expected.txt:
- platform/gtk/css3/flexbox/button-expected.txt:
- platform/gtk/editing/selection/3690703-2-expected.txt:
- platform/gtk/editing/selection/3690703-expected.txt:
- platform/gtk/editing/selection/3690719-expected.txt:
- platform/gtk/editing/selection/4397952-expected.txt:
- platform/gtk/editing/selection/5240265-expected.txt:
- platform/gtk/editing/selection/selection-button-text-expected.txt:
- platform/gtk/fast/block/float/float-avoidance-expected.txt:
- platform/gtk/fast/block/positioning/inline-block-relposition-expected.txt:
- platform/gtk/fast/css/continuationCrash-expected.txt:
- platform/gtk/fast/css/focus-ring-exists-for-search-field-expected.txt:
- platform/gtk/fast/css/input-search-padding-expected.txt:
- platform/gtk/fast/css/margin-top-bottom-dynamic-expected.txt:
- platform/gtk/fast/css/rtl-ordering-expected.txt:
- platform/gtk/fast/css/text-input-with-webkit-border-radius-expected.txt:
- platform/gtk/fast/css/text-overflow-input-expected.txt:
- platform/gtk/fast/dom/HTMLTableColElement/resize-table-using-col-width-expected.txt:
- platform/gtk/fast/dom/HTMLTextAreaElement/reset-textarea-expected.txt:
- platform/gtk/fast/dynamic/positioned-movement-with-positioned-children-expected.txt:
- platform/gtk/fast/forms/001-expected.txt:
- platform/gtk/fast/forms/basic-buttons-expected.txt:
- platform/gtk/fast/forms/basic-selects-expected.txt:
- platform/gtk/fast/forms/blankbuttons-expected.txt:
- platform/gtk/fast/forms/box-shadow-override-expected.txt:
- platform/gtk/fast/forms/button-align-expected.txt:
- platform/gtk/fast/forms/button-cannot-be-nested-expected.txt:
- platform/gtk/fast/forms/button-default-title-expected.txt:
- platform/gtk/fast/forms/button-generated-content-expected.txt:
- platform/gtk/fast/forms/button-inner-block-reuse-expected.txt:
- platform/gtk/fast/forms/button-positioned-expected.txt:
- platform/gtk/fast/forms/button-sizes-expected.txt:
- platform/gtk/fast/forms/button-style-color-expected.txt:
- platform/gtk/fast/forms/button-table-styles-expected.txt:
- platform/gtk/fast/forms/button-text-transform-expected.txt:
- platform/gtk/fast/forms/button-white-space-expected.txt:
- platform/gtk/fast/forms/control-clip-expected.txt:
- platform/gtk/fast/forms/control-clip-overflow-expected.txt:
- platform/gtk/fast/forms/control-restrict-line-height-expected.txt:
- platform/gtk/fast/forms/datalist/datalist-searchinput-appearance-expected.txt:
- platform/gtk/fast/forms/disabled-select-change-index-expected.txt:
- platform/gtk/fast/forms/file/file-input-direction-expected.txt:
- platform/gtk/fast/forms/file/file-input-disabled-expected.txt:
- platform/gtk/fast/forms/form-element-geometry-expected.txt:
- platform/gtk/fast/forms/formmove3-expected.txt:
- platform/gtk/fast/forms/input-appearance-height-expected.txt:
- platform/gtk/fast/forms/input-button-sizes-expected.txt:
- platform/gtk/fast/forms/input-first-letter-expected.txt:
- platform/gtk/fast/forms/input-value-expected.txt:
- platform/gtk/fast/forms/placeholder-position-expected.txt:
- platform/gtk/fast/forms/placeholder-pseudo-style-expected.txt:
- platform/gtk/fast/forms/search-cancel-button-style-sharing-expected.txt:
- platform/gtk/fast/forms/search-input-rtl-expected.txt:
- platform/gtk/fast/forms/search-rtl-expected.txt:
- platform/gtk/fast/forms/search-styled-expected.txt:
- platform/gtk/fast/forms/search/search-size-with-decorations-expected.txt:
- platform/gtk/fast/forms/searchfield-heights-expected.txt:
- platform/gtk/fast/forms/select-baseline-expected.txt:
- platform/gtk/fast/forms/select-disabled-appearance-expected.txt:
- platform/gtk/fast/forms/targeted-frame-submission-expected.txt:
- platform/gtk/fast/html/details-replace-summary-child-expected.txt:
- platform/gtk/fast/html/details-replace-text-expected.txt:
- platform/gtk/fast/overflow/scroll-nested-positioned-layer-in-overflow-expected.txt:
- platform/gtk/fast/overflow/scrollRevealButton-expected.txt:
- platform/gtk/fast/repaint/search-field-cancel-expected.txt:
- platform/gtk/fast/replaced/replaced-breaking-expected.txt:
- platform/gtk/fast/replaced/width100percent-button-expected.txt:
- platform/gtk/fast/table/append-cells2-expected.txt:
- platform/gtk/fast/table/remove-td-display-none-expected.txt:
- platform/gtk/fast/text/international/hindi-spacing-expected.txt:
- platform/gtk/fast/text/textIteratorNilRenderer-expected.txt:
- platform/gtk/http/tests/navigation/javascriptlink-frames-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/css/css-color-adjust/rendering/dark-color-scheme/color-scheme-color-property-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/css/css-pseudo/file-chooser-button-display-toggle-crash.tentative-expected.txt:
- platform/gtk/inspector/css/shadow-scoped-style-expected.txt:
- platform/gtk/svg/custom/inline-svg-in-xhtml-expected.txt:
- platform/gtk/tables/mozilla/bugs/bug1188-expected.txt:
- platform/gtk/tables/mozilla/bugs/bug1318-expected.txt:
- platform/gtk/tables/mozilla/bugs/bug138725-expected.txt:
- platform/gtk/tables/mozilla/bugs/bug18359-expected.txt:
- platform/gtk/tables/mozilla/bugs/bug2479-2-expected.txt:
- platform/gtk/tables/mozilla/bugs/bug2479-3-expected.txt:
- platform/gtk/tables/mozilla/bugs/bug2479-4-expected.txt:
- platform/gtk/tables/mozilla/bugs/bug26178-expected.txt:
- platform/gtk/tables/mozilla/bugs/bug28928-expected.txt:
- platform/gtk/tables/mozilla/bugs/bug33855-expected.txt:
- platform/gtk/tables/mozilla/bugs/bug39209-expected.txt:
- platform/gtk/tables/mozilla/bugs/bug4429-expected.txt:
- platform/gtk/tables/mozilla/bugs/bug44505-expected.txt:
- platform/gtk/tables/mozilla/bugs/bug46368-1-expected.txt:
- platform/gtk/tables/mozilla/bugs/bug46368-2-expected.txt:
- platform/gtk/tables/mozilla/bugs/bug51037-expected.txt:
- platform/gtk/tables/mozilla/bugs/bug51727-expected.txt:
- platform/gtk/tables/mozilla/bugs/bug52505-expected.txt:
- platform/gtk/tables/mozilla/bugs/bug52506-expected.txt:
- platform/gtk/tables/mozilla/bugs/bug60749-expected.txt:
- platform/gtk/tables/mozilla/bugs/bug68912-expected.txt:
- platform/gtk/tables/mozilla/bugs/bug7342-expected.txt:
- platform/gtk/tables/mozilla/collapsing_borders/bug41262-4-expected.txt:
- platform/gtk/tables/mozilla/dom/tableDom-expected.txt:
- platform/gtk/tables/mozilla/other/move_row-expected.txt:
- platform/gtk/tables/mozilla_expected_failures/bugs/bug1725-expected.txt:
- platform/gtk/tables/mozilla_expected_failures/bugs/bug2479-5-expected.txt:
- platform/gtk/tables/mozilla_expected_failures/bugs/bug58402-2-expected.txt:
- platform/gtk/tables/mozilla_expected_failures/collapsing_borders/bug41262-5-expected.txt:
- platform/gtk/tables/mozilla_expected_failures/collapsing_borders/bug41262-6-expected.txt:
- platform/wpe/css2.1/20110323/replaced-elements-001-expected.txt:
- platform/wpe/css3/flexbox/button-expected.txt:
- platform/wpe/fast/block/float/float-avoidance-expected.txt:
- platform/wpe/fast/block/positioning/inline-block-relposition-expected.txt:
- platform/wpe/fast/css/continuationCrash-expected.txt:
- platform/wpe/fast/css/focus-ring-exists-for-search-field-expected.txt:
- platform/wpe/fast/css/input-search-padding-expected.txt:
- platform/wpe/fast/css/margin-top-bottom-dynamic-expected.txt:
- platform/wpe/fast/css/rtl-ordering-expected.txt:
- platform/wpe/fast/css/text-input-with-webkit-border-radius-expected.txt:
- platform/wpe/fast/css/text-overflow-input-expected.txt:
- platform/wpe/fast/dom/HTMLTableColElement/resize-table-using-col-width-expected.txt:
- platform/wpe/fast/dom/HTMLTextAreaElement/reset-textarea-expected.txt:
- platform/wpe/fast/dynamic/positioned-movement-with-positioned-children-expected.txt:
- platform/wpe/fast/html/details-replace-summary-child-expected.txt:
- platform/wpe/fast/html/details-replace-text-expected.txt:
- platform/wpe/fast/overflow/scroll-nested-positioned-layer-in-overflow-expected.txt:
- platform/wpe/fast/overflow/scrollRevealButton-expected.txt:
- platform/wpe/fast/replaced/replaced-breaking-expected.txt:
- platform/wpe/fast/replaced/width100percent-button-expected.txt:
- platform/wpe/fast/table/append-cells2-expected.txt:
- platform/wpe/fast/table/remove-td-display-none-expected.txt:
- platform/wpe/fast/text/international/hindi-spacing-expected.txt:
- platform/wpe/fast/text/textIteratorNilRenderer-expected.txt:
- platform/wpe/http/tests/navigation/javascriptlink-frames-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/css/css-color-adjust/rendering/dark-color-scheme/color-scheme-color-property-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/css/css-pseudo/file-chooser-button-display-toggle-crash.tentative-expected.txt:
- platform/wpe/svg/custom/inline-svg-in-xhtml-expected.txt:
- platform/wpe/tables/mozilla/bugs/bug1188-expected.txt:
- platform/wpe/tables/mozilla/bugs/bug1318-expected.txt:
- platform/wpe/tables/mozilla/bugs/bug138725-expected.txt:
- platform/wpe/tables/mozilla/bugs/bug18359-expected.txt:
- platform/wpe/tables/mozilla/bugs/bug2479-2-expected.txt:
- platform/wpe/tables/mozilla/bugs/bug2479-3-expected.txt:
- platform/wpe/tables/mozilla/bugs/bug2479-4-expected.txt:
- platform/wpe/tables/mozilla/bugs/bug26178-expected.txt:
- platform/wpe/tables/mozilla/bugs/bug28928-expected.txt:
- platform/wpe/tables/mozilla/bugs/bug33855-expected.txt:
- platform/wpe/tables/mozilla/bugs/bug39209-expected.txt:
- platform/wpe/tables/mozilla/bugs/bug4429-expected.txt:
- platform/wpe/tables/mozilla/bugs/bug44505-expected.txt:
- platform/wpe/tables/mozilla/bugs/bug46368-1-expected.txt:
- platform/wpe/tables/mozilla/bugs/bug46368-2-expected.txt:
- platform/wpe/tables/mozilla/bugs/bug51037-expected.txt:
- platform/wpe/tables/mozilla/bugs/bug51727-expected.txt:
- platform/wpe/tables/mozilla/bugs/bug52505-expected.txt:
- platform/wpe/tables/mozilla/bugs/bug52506-expected.txt:
- platform/wpe/tables/mozilla/bugs/bug60749-expected.txt:
- platform/wpe/tables/mozilla/bugs/bug68912-expected.txt:
- platform/wpe/tables/mozilla/bugs/bug7342-expected.txt:
- platform/wpe/tables/mozilla/collapsing_borders/bug41262-4-expected.txt:
- platform/wpe/tables/mozilla/dom/tableDom-expected.txt:
- platform/wpe/tables/mozilla/other/move_row-expected.txt:
- platform/wpe/tables/mozilla_expected_failures/bugs/bug1725-expected.txt:
- platform/wpe/tables/mozilla_expected_failures/bugs/bug2479-5-expected.txt:
- platform/wpe/tables/mozilla_expected_failures/bugs/bug58402-2-expected.txt:
- platform/wpe/tables/mozilla_expected_failures/collapsing_borders/bug41262-5-expected.txt:
- platform/wpe/tables/mozilla_expected_failures/collapsing_borders/bug41262-6-expected.txt:
- 1:10 PM Changeset in webkit [280100] by
-
- 2 edits in trunk/LayoutTests
Unreviewed Windows test gardening.
- platform/win/TestExpectations:
- 12:54 PM Changeset in webkit [280099] by
-
- 4 edits in trunk/Source/WebCore
Use WeakHashSet for Page::m_activityStateChangeObservers
https://bugs.webkit.org/show_bug.cgi?id=228065
Reviewed by Chris Dumez.
- page/ActivityStateChangeObserver.h: Inherit CanMakeWeakPtr.
- page/Page.cpp:
(WebCore::Page::addActivityStateChangeObserver):
(WebCore::Page::removeActivityStateChangeObserver):
(WebCore::Page::setActivityState):
- page/Page.h:
- 12:44 PM Changeset in webkit [280098] by
-
- 5 edits in trunk/Source/WebKit
IBeam cursor is horizontal in Mail compose window
https://bugs.webkit.org/show_bug.cgi?id=228107
<rdar://problem/80636912>
Reviewed by Wenson Hsieh.
Recently we added support for vertical writing mode for the IBeam
cursor in WebKit. This added a new parameter isHorizontalWritingMode
which defaults to false. This causes the IBeam to appear horizontal in
cases where WebPage::populateCaretContext is not called, regressing expected
behavior.
This patch changes isHorizontalWritingMode to isVerticalWritingMode
to fix this, while still allowing support for vertical writing mode.
- Shared/ios/InteractionInformationAtPosition.h:
- Shared/ios/InteractionInformationAtPosition.mm:
(WebKit::InteractionInformationAtPosition::encode const):
(WebKit::InteractionInformationAtPosition::decode):
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView pointerInteraction:styleForRegion:]):
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::populateCaretContext):
- 12:35 PM Changeset in webkit [280097] by
-
- 3 edits1 add in trunk
[JSC] invalidParameterInstanceofSourceAppender should care direct call of Symbol.hasInstance
https://bugs.webkit.org/show_bug.cgi?id=228075
rdar://80762879
Reviewed by Frédéric Wang.
JSTests:
- stress/symbol-hasinstance-error.js: Added.
(shouldThrow):
(let.a):
Source/JavaScriptCore:
invalidParameterInstanceofSourceAppender can be invoked without
instanceofexpression since we can call
[Symbol.hasInstance]function directly, but the implementation did not assume that. This patch fixes
it to handle this direct call.
- runtime/ExceptionHelpers.cpp:
(JSC::invalidParameterInstanceofSourceAppender):
- 12:34 PM Changeset in webkit [280096] by
-
- 2 edits in trunk/LayoutTests
[iOS Release wk2] imported/w3c/web-platform-tests/fetch/content-type/script.window.html is a flaky failure.
https://bugs.webkit.org/show_bug.cgi?id=228114
Unreviewed test gardening.
Patch by Eric Hutchison <Eric Hutchison> on 2021-07-20
- platform/ios-wk2/TestExpectations:
- 12:30 PM Changeset in webkit [280095] by
-
- 4 edits1 add in trunk
REGRESSION (r278062): Misplaced text in Wikipedia search field
https://bugs.webkit.org/show_bug.cgi?id=228098
<rdar://problem/80495165>
Reviewed by Simon Fraser.
Source/WebCore:
New test: GraphicsContextTests.DrawNativeImageDoesNotLeakCompositeOperator
- platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::setCGCompositeOperator):
(WebCore::GraphicsContextCG::drawNativeImage):
drawNativeImage uses CGContextStateSaver (not GraphicsContextStateSaver),
so any state changes it made must only be made to the CGContext, not
the WebCore::GraphicsContext.
However, r278062 mistakenly swapped setPlatformCompositeOperation out for
GraphicsContext::setCompositeOperation(), which mutates the state of
*both* contexts, and then (only sometimes!) depends on the state saver
to reset the state (but, of course, as mentioned, it only resets
the CGContext's state).
(WebCore::GraphicsContextCG::updateState):
Tools:
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WebCore/cg/GraphicsContextTestsCG.cpp: Added.
(TestWebKitAPI::greenImage):
(TestWebKitAPI::TEST):
Add a test for the issue described in the WebCore ChangeLog.
- 12:29 PM Changeset in webkit [280094] by
-
- 7 edits in branches/safari-612.1.24.0-branch/Source/JavaScriptCore
Cherry-pick r280066. rdar://problem/80851532
[JSC] StructureStubInfo's m_identifier should follow to the same protocol of inlineAccessBaseStructure
https://bugs.webkit.org/show_bug.cgi?id=228092
Reviewed by Saam Barati.
In r279813, we fixed a race condition related to inlineAccessBaseStructure: while we clear inlineAccessBaseStructure,
we still run code relying on this field's value until stub version of the code is generated. As a result,
we run the code which relies on the cells that are already collected. And we have the same problem with
m_identifier field too. This patch makes m_identifier follow to the same protocol of inlineAccessBaseStructure
so that we fix this race issue too: both fields will be alive until we switch to the code that are not relying on these
fields.
We also make inlineAccessBaseStructure to m_inlineAccessBaseStructure to easily find that this is member field.
And we also use setWithoutWriteBarrier for m_inlineAccessBaseStructure since we emit codeBlock->vm().heap.writeBarrier(codeBlock)
immediately after that.
- bytecode/AccessCase.cpp: (JSC::AccessCase::fromStructureStubInfo):
- bytecode/GetByStatus.cpp: (JSC::GetByStatus::computeForStubInfoWithoutExitSiteFeedback):
- bytecode/InByStatus.cpp: (JSC::InByStatus::computeForStubInfoWithoutExitSiteFeedback):
- bytecode/PutByIdStatus.cpp: (JSC::PutByIdStatus::computeForStubInfo):
- bytecode/StructureStubInfo.cpp: (JSC::StructureStubInfo::initGetByIdSelf): (JSC::StructureStubInfo::initArrayLength): (JSC::StructureStubInfo::initStringLength): (JSC::StructureStubInfo::initPutByIdReplace): (JSC::StructureStubInfo::initInByIdSelf): (JSC::StructureStubInfo::addAccessCase): (JSC::StructureStubInfo::reset): (JSC::StructureStubInfo::visitAggregateImpl): (JSC::StructureStubInfo::visitWeakReferences): (JSC::StructureStubInfo::propagateTransitions): (JSC::StructureStubInfo::setCacheType): Deleted.
- bytecode/StructureStubInfo.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@280066 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 12:29 PM Changeset in webkit [280093] by
-
- 7 edits1 add in branches/safari-612.1.24.0-branch
Cherry-pick r280050. rdar://problem/80851589
[JSC] InByStatus / InByVariant should visit CacheableIdentifier
https://bugs.webkit.org/show_bug.cgi?id=228088
rdar://80794604
Reviewed by Mark Lam.
JSTests:
- stress/in-by-variant-should-mark-cacheable-identifier.js: Added. (foo): (let.handler.has):
Source/JavaScriptCore:
After r278445, InByVariant holds CacheableIdentifier. And this can have
String/Symbol cells if this variant is generated by in_by_val. In that
case, we must visit this cell as GetByStatus / GetByVariant are doing.
- bytecode/InByStatus.cpp: (JSC::InByStatus::visitAggregateImpl):
- bytecode/InByStatus.h:
- bytecode/InByVariant.cpp: (JSC::InByVariant::visitAggregateImpl):
- bytecode/InByVariant.h:
- bytecode/RecordedStatuses.cpp: (JSC::RecordedStatuses::visitAggregateImpl):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@280050 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 12:29 PM Changeset in webkit [280092] by
-
- 7 edits in branches/safari-612.1.24.1-branch/Source/JavaScriptCore
Cherry-pick r280066. rdar://problem/80851562
[JSC] StructureStubInfo's m_identifier should follow to the same protocol of inlineAccessBaseStructure
https://bugs.webkit.org/show_bug.cgi?id=228092
Reviewed by Saam Barati.
In r279813, we fixed a race condition related to inlineAccessBaseStructure: while we clear inlineAccessBaseStructure,
we still run code relying on this field's value until stub version of the code is generated. As a result,
we run the code which relies on the cells that are already collected. And we have the same problem with
m_identifier field too. This patch makes m_identifier follow to the same protocol of inlineAccessBaseStructure
so that we fix this race issue too: both fields will be alive until we switch to the code that are not relying on these
fields.
We also make inlineAccessBaseStructure to m_inlineAccessBaseStructure to easily find that this is member field.
And we also use setWithoutWriteBarrier for m_inlineAccessBaseStructure since we emit codeBlock->vm().heap.writeBarrier(codeBlock)
immediately after that.
- bytecode/AccessCase.cpp: (JSC::AccessCase::fromStructureStubInfo):
- bytecode/GetByStatus.cpp: (JSC::GetByStatus::computeForStubInfoWithoutExitSiteFeedback):
- bytecode/InByStatus.cpp: (JSC::InByStatus::computeForStubInfoWithoutExitSiteFeedback):
- bytecode/PutByIdStatus.cpp: (JSC::PutByIdStatus::computeForStubInfo):
- bytecode/StructureStubInfo.cpp: (JSC::StructureStubInfo::initGetByIdSelf): (JSC::StructureStubInfo::initArrayLength): (JSC::StructureStubInfo::initStringLength): (JSC::StructureStubInfo::initPutByIdReplace): (JSC::StructureStubInfo::initInByIdSelf): (JSC::StructureStubInfo::addAccessCase): (JSC::StructureStubInfo::reset): (JSC::StructureStubInfo::visitAggregateImpl): (JSC::StructureStubInfo::visitWeakReferences): (JSC::StructureStubInfo::propagateTransitions): (JSC::StructureStubInfo::setCacheType): Deleted.
- bytecode/StructureStubInfo.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@280066 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 12:29 PM Changeset in webkit [280091] by
-
- 7 edits1 add in branches/safari-612.1.24.1-branch
Cherry-pick r280050. rdar://problem/80851606
[JSC] InByStatus / InByVariant should visit CacheableIdentifier
https://bugs.webkit.org/show_bug.cgi?id=228088
rdar://80794604
Reviewed by Mark Lam.
JSTests:
- stress/in-by-variant-should-mark-cacheable-identifier.js: Added. (foo): (let.handler.has):
Source/JavaScriptCore:
After r278445, InByVariant holds CacheableIdentifier. And this can have
String/Symbol cells if this variant is generated by in_by_val. In that
case, we must visit this cell as GetByStatus / GetByVariant are doing.
- bytecode/InByStatus.cpp: (JSC::InByStatus::visitAggregateImpl):
- bytecode/InByStatus.h:
- bytecode/InByVariant.cpp: (JSC::InByVariant::visitAggregateImpl):
- bytecode/InByVariant.h:
- bytecode/RecordedStatuses.cpp: (JSC::RecordedStatuses::visitAggregateImpl):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@280050 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 12:27 PM Changeset in webkit [280090] by
-
- 8 edits in branches/safari-612.1.24.1-branch/Source
Versioning.
WebKit-7612.1.24.1.2
- 11:21 AM Changeset in webkit [280089] by
-
- 7 edits in trunk/Source/WebCore
Make SVGPropertyAnimator::computeCSSPropertyValue() take a reference to SVGElement
https://bugs.webkit.org/show_bug.cgi?id=228093
<rdar://80789262>
Reviewed by Simon Fraser.
The assumption is the pointer 'targetElement' can't be nullptr. So make
it a reference instead.
- svg/SVGAnimationElement.cpp:
(WebCore::SVGAnimationElement::computeCSSPropertyValue): Deleted.
(WebCore::inheritsFromProperty): Deleted.
(WebCore::SVGAnimationElement::determinePropertyValueTypes): Deleted.
- svg/SVGAnimationElement.h:
Delete unused methods from SVGAnimationElement.
- svg/properties/SVGPrimitivePropertyAnimator.h:
- svg/properties/SVGPropertyAnimator.h:
(WebCore::SVGPropertyAnimator::computeCSSPropertyValue const):
(WebCore::SVGPropertyAnimator::computeInheritedCSSPropertyValue const):
- svg/properties/SVGValuePropertyAnimatorImpl.h:
- svg/properties/SVGValuePropertyListAnimatorImpl.h:
- 10:53 AM Changeset in webkit [280088] by
-
- 1 copy in branches/safari-612.1.24.3-branch
New branch.
- 10:45 AM Changeset in webkit [280087] by
-
- 8 edits in branches/safari-612.1.24.0-branch/Source
Versioning.
WebKit-7612.1.24.0.2
- 10:41 AM Changeset in webkit [280086] by
-
- 8 edits in branches/safari-612.1.24.2-branch/Source
Versioning.
WebKit-7612.1.24.2.1
- 10:32 AM Changeset in webkit [280085] by
-
- 4 edits2 adds in trunk
REGRESSION (r278702): Cannot login to appaloosa-store.com/users/sign_in
https://bugs.webkit.org/show_bug.cgi?id=228096
<rdar://80596391>
Reviewed by Alex Christensen.
Source/WebCore:
r278702 added an optimization to FetchBodyConsumer::takeAsBlob() to avoid a copy of the data.
What I didn't realized when I wrote this optimization is that FetchBodyConsumer is copy-constructible
and its copy constructor gets called when calling FetchResponse.clone(). The copy constructor only
does a shallow-copy of its internal buffer so several FetchResponse objects can end up with their
FetchBodyConsumer using the same underlying SharedBuffer object. When that SharedBuffer is shared,
calling takeData() on it is unacceptable as it will disturb the body of other Fetch responses.
To address the issue, we now only call SharedBuffer::takeData() and avoid the copy when the
SharedBuffer has a RefCount of 1, meaning that is it not actually shared. In the cases where it
is shared, we copy the data, like we used to do before r278702.
Test: http/tests/fetch/response-clone-blob.html
- Modules/fetch/FetchBodyConsumer.cpp:
(WebCore::FetchBodyConsumer::takeAsBlob):
LayoutTests:
Add layout test coverage.
- http/tests/fetch/response-clone-blob-expected.txt: Added.
- http/tests/fetch/response-clone-blob.html: Added.
- 10:07 AM Changeset in webkit [280084] by
-
- 8 edits1 move20 adds4 deletes in trunk
Canvas and OffscreenCanvas getContext should check if argument is an object before trying to convert it to a dictionary
https://bugs.webkit.org/show_bug.cgi?id=227792
Reviewed by Sam Weinig.
LayoutTests/imported/w3c:
Synchronise with upstream WPT 2d canvas getContext tests.
- web-platform-tests/html/canvas/offscreen/the-offscreen-canvas/2d-getcontext-options.any-expected.txt: Added.
- web-platform-tests/html/canvas/offscreen/the-offscreen-canvas/2d-getcontext-options.any.html: Added.
- web-platform-tests/html/canvas/offscreen/the-offscreen-canvas/2d-getcontext-options.any.js: Added.
(test.const.options.get alpha):
(test.const.options.get willReadFrequently):
(test.const.options.get desynchronized):
(test.const.options.get colorSpace):
(test):
- web-platform-tests/html/canvas/offscreen/the-offscreen-canvas/2d-getcontext-options.any.worker-expected.txt: Added.
- web-platform-tests/html/canvas/offscreen/the-offscreen-canvas/2d-getcontext-options.any.worker.html: Added.
- web-platform-tests/html/canvas/offscreen/the-offscreen-canvas/2d.getcontext.extraargs-expected.txt: Removed.
- web-platform-tests/html/canvas/offscreen/the-offscreen-canvas/2d.getcontext.extraargs.cache-expected.txt: Added.
- web-platform-tests/html/canvas/offscreen/the-offscreen-canvas/2d.getcontext.extraargs.cache.html: Added.
- web-platform-tests/html/canvas/offscreen/the-offscreen-canvas/2d.getcontext.extraargs.cache.worker-expected.txt: Added.
- web-platform-tests/html/canvas/offscreen/the-offscreen-canvas/2d.getcontext.extraargs.cache.worker.html: Added.
- web-platform-tests/html/canvas/offscreen/the-offscreen-canvas/2d.getcontext.extraargs.cache.worker.js: Added.
(t_fail.t.step_func):
(t.step):
- web-platform-tests/html/canvas/offscreen/the-offscreen-canvas/2d.getcontext.extraargs.create-expected.txt: Added.
- web-platform-tests/html/canvas/offscreen/the-offscreen-canvas/2d.getcontext.extraargs.create.html: Added.
- web-platform-tests/html/canvas/offscreen/the-offscreen-canvas/2d.getcontext.extraargs.create.worker-expected.txt: Added.
- web-platform-tests/html/canvas/offscreen/the-offscreen-canvas/2d.getcontext.extraargs.create.worker.html: Added.
- web-platform-tests/html/canvas/offscreen/the-offscreen-canvas/2d.getcontext.extraargs.create.worker.js: Added.
(t_fail.t.step_func):
(t.step):
- web-platform-tests/html/canvas/offscreen/the-offscreen-canvas/2d.getcontext.extraargs.html: Removed.
- web-platform-tests/html/canvas/offscreen/the-offscreen-canvas/2d.getcontext.extraargs.worker-expected.txt: Removed.
- web-platform-tests/html/canvas/offscreen/the-offscreen-canvas/2d.getcontext.extraargs.worker.js: Removed.
- web-platform-tests/html/canvas/offscreen/the-offscreen-canvas/w3c-import.log:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/2d-getcontext-options-expected.txt: Added.
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/2d-getcontext-options.html: Added.
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/2d.getcontext.extraargs.cache-expected.txt: Added.
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/2d.getcontext.extraargs.cache.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-canvas-element/2d.getcontext.extraargs.html.
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/2d.getcontext.extraargs.create-expected.txt: Added.
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/2d.getcontext.extraargs.create.html: Added.
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/w3c-import.log:
Source/WebCore:
Check if options argument is an object before converting to a dictionary.
Tests: imported/w3c/web-platform-tests/html/canvas/offscreen/the-offscreen-canvas/2d-getcontext-options.any.html
imported/w3c/web-platform-tests/html/canvas/offscreen/the-offscreen-canvas/2d-getcontext-options.any.worker.html
imported/w3c/web-platform-tests/html/canvas/offscreen/the-offscreen-canvas/2d.getcontext.extraargs.cache.html
imported/w3c/web-platform-tests/html/canvas/offscreen/the-offscreen-canvas/2d.getcontext.extraargs.cache.worker.html
imported/w3c/web-platform-tests/html/canvas/offscreen/the-offscreen-canvas/2d.getcontext.extraargs.create.html
imported/w3c/web-platform-tests/html/canvas/offscreen/the-offscreen-canvas/2d.getcontext.extraargs.create.worker.html
imported/w3c/web-platform-tests/html/semantics/embedded-content/the-canvas-element/2d-getcontext-options.html
imported/w3c/web-platform-tests/html/semantics/embedded-content/the-canvas-element/2d.getcontext.extraargs.cache.html
imported/w3c/web-platform-tests/html/semantics/embedded-content/the-canvas-element/2d.getcontext.extraargs.create.html
- html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::getContext):
- html/OffscreenCanvas.cpp:
(WebCore::OffscreenCanvas::getContext):
LayoutTests:
Canvas 2d getContext extraargs tests now pass.
- platform/glib/TestExpectations:
- 9:54 AM Changeset in webkit [280083] by
-
- 2 edits in trunk/Source/WebCore
Protect m_data when iterating in CachedRawResource::didAddClient
https://bugs.webkit.org/show_bug.cgi?id=228108
<rdar://80716674>
Patch by Alex Christensen <achristensen@webkit.org> on 2021-07-20
Reviewed by Chris Dumez.
I think something is destroying m_data when its segments are being iterated.
Protect it so it doesn't get destroyed.
Also, to be on the safe side, check that the client is still a client before using it.
- loader/cache/CachedRawResource.cpp:
(WebCore::CachedRawResource::didAddClient):
- 9:43 AM Changeset in webkit [280082] by
-
- 1 copy in branches/safari-612.1.24.2-branch
New branch.
- 9:42 AM Changeset in webkit [280081] by
-
- 61 edits2 adds in trunk
Change referrer-policy default to strict-origin-when-cross-origin
https://bugs.webkit.org/show_bug.cgi?id=218909
Reviewed by Chris Dumez.
LayoutTests/imported/w3c:
This matches the behavior of other browsers. Update all our tests to deal with the origin now being shorter.
- web-platform-tests/fetch/api/cors/cors-preflight-referrer.any-expected.txt:
- web-platform-tests/fetch/api/cors/cors-preflight-referrer.any.worker-expected.txt:
- web-platform-tests/html/browsers/browsing-the-web/navigating-across-documents/source/navigate-child-src-about-blank-expected.txt:
- web-platform-tests/html/browsers/windows/browsing-context-expected.txt:
- web-platform-tests/service-workers/service-worker/fetch-event-referrer-policy.https-expected.txt:
Source/WebCore:
This matches the behavior of other browsers.
Covered by existing tests and web platform tests we haven't imported yet.
- dom/Document.h:
- loader/FrameLoader.cpp:
(WebCore::FrameLoader::effectiveReferrerPolicy const):
- loader/cache/CachedResourceLoader.cpp:
(WebCore::CachedResourceLoader::requestResource):
- platform/ReferrerPolicy.cpp:
(WebCore::parseReferrerPolicyToken):
- platform/ReferrerPolicy.h:
Tools:
This matches the behavior of other browsers.
Covered by existing tests and web platform tests we haven't imported yet.
- TestWebKitAPI/Tests/WebKitCocoa/NetworkProcess.mm:
(TEST):
LayoutTests:
This matches the behavior of other browsers.
Covered by existing tests and web platform tests we haven't imported yet.
- http/tests/media/media-stream/enumerate-devices-source-id.html:
- http/tests/referrer-policy-iframe/unsafe-url/cross-origin-http-http.html:
- http/tests/resourceLoadStatistics/downgraded-referrer-for-navigation-with-link-query-from-prevalent-resource.html:
- http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/report-frame-ancestors-cross-origin-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/report-frame-ancestors-cross-origin-https-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/report-frame-ancestors-same-origin-https-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-image-https-expected.txt:
- http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-css-in-iframe-expected.txt:
- http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-css-in-iframe-report-only-expected.txt:
- http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-css-in-main-frame-expected.txt:
- http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-image-in-iframe-expected.txt:
- http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-image-in-iframe-with-enforced-and-report-policies-expected.txt:
- http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-image-in-main-frame-expected.txt:
- http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-plugin-in-iframe-expected.txt:
- http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-plugin-in-main-frame-expected.txt:
- http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-script-in-iframe-expected.txt:
- http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-script-in-main-frame-expected.txt:
- http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-xhr-asynchronous-in-iframe-expected.txt:
- http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-xhr-asynchronous-in-main-frame-expected.txt:
- http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-xhr-synchronous-in-iframe-expected.txt:
- http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-xhr-synchronous-in-main-frame-expected.txt:
- http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-when-private-browsing-enabled.py:
- http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-when-private-browsing-toggled.py:
- http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies.py:
- http/tests/security/contentSecurityPolicy/report-status-code-zero-when-using-https-expected.txt:
- http/tests/security/contentSecurityPolicy/report-uri-scheme-relative.py:
- http/tests/security/referrer-policy-header-expected.txt:
- http/tests/security/referrer-policy-header-multipart-expected.txt:
- http/tests/security/referrer-policy-header-test.js:
- http/wpt/beacon/cors/cors-preflight-blob-failure.html:
- http/wpt/beacon/cors/cors-preflight-blob-success.html:
- http/wpt/beacon/cors/cors-preflight-redirect-from-crossorigin-to-sameorigin.html:
- http/wpt/html/browsers/windows/browsing-context.html:
- platform/mac-wk1/imported/w3c/web-platform-tests/fetch/api/redirect/redirect-referrer.any-expected.txt: Added.
- platform/mac-wk1/imported/w3c/web-platform-tests/fetch/api/redirect/redirect-referrer.any.worker-expected.txt: Added.
- platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-css-in-iframe-expected.txt:
- platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-css-in-main-frame-expected.txt:
- platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-image-in-iframe-expected.txt:
- platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-image-in-iframe-with-enforced-and-report-policies-expected.txt:
- platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-image-in-main-frame-expected.txt:
- platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-plugin-in-iframe-expected.txt:
- platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-plugin-in-main-frame-expected.txt:
- platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-script-in-iframe-expected.txt:
- platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-script-in-main-frame-expected.txt:
- platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-xhr-asynchronous-in-iframe-expected.txt:
- platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-xhr-asynchronous-in-main-frame-expected.txt:
- platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-xhr-synchronous-in-iframe-expected.txt:
- platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-xhr-synchronous-in-main-frame-expected.txt:
- 8:29 AM Changeset in webkit [280080] by
-
- 3 edits in trunk/Source/WebCore
[GStreamer] Switch raw GstStructure pointers to GUniquePtr
https://bugs.webkit.org/show_bug.cgi?id=228106
Reviewed by Xabier Rodriguez-Calvar.
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer):
(WebCore::MediaPlayerPrivateGStreamer::setAudioStreamProperties):
(WebCore::MediaPlayerPrivateGStreamer::mediaLocationChanged):
(WebCore::MediaPlayerPrivateGStreamer::loadNextLocation):
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
- 5:48 AM Changeset in webkit [280079] by
-
- 2 edits in trunk/Tools
EWS should send email notification when a bot goes out of disk space
https://bugs.webkit.org/show_bug.cgi?id=216489
Reviewed by Ryan Haddad.
- CISupport/ews-build/steps.py:
(CleanUpGitIndexLock.start):
(CleanUpGitIndexLock.send_email_for_git_issue):
- 4:26 AM Changeset in webkit [280078] by
-
- 11 edits in trunk
Images as grid items should use the overridingLogicalWidth when defined to compute the logical Height
https://bugs.webkit.org/show_bug.cgi?id=228022
Reviewed by Javier Fernandez.
LayoutTests/imported/w3c:
Update test expectations as the sub-tests are now passing.
- web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-029-expected.txt:
- web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-030-expected.txt:
- web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-031-expected.txt:
- web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-035-expected.txt:
- web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-036-expected.txt:
Source/WebCore:
When computing the logical height using an intrinsic aspect ratio, RenderReplaced should use the
overridingLogicalWidth whenever defined just as how it does for flex items. This change is to
replace the use of intrinsic (non-stretched) logical width in current code with the overridingLogicalWidth.
The current code doesn't set overringLogicalWidth while the width changes while stretches along Row Axis.
This change adds the logic in.
- rendering/RenderGrid.cpp:
(WebCore::RenderGrid::applyStretchAlignmentToChildIfNeeded):
- rendering/RenderReplaced.cpp:
(WebCore::RenderReplaced::computeReplacedLogicalHeight const):
LayoutTests:
Update TestExpectations as 3 failed grid WPT tests are now passing.
- 4:08 AM Changeset in webkit [280077] by
-
- 17 edits7 adds in trunk/Source/WebKit
[GTK] Propagate GtkSettings to web process
https://bugs.webkit.org/show_bug.cgi?id=227854
Patch by Alexander Mikhaylenko <Alexander Mikhaylenko> on 2021-07-20
Reviewed by Carlos Garcia Campos.
There's a number of properties in GtkSettings that web process uses:
- gtk-cursor-blink
- gtk-cursor-blink-time
- gtk-font-name
- gtk-primary-button-warps-slider
- gtk-theme-name
- gtk-xft-antialias
- gtk-xft-dpi
- gtk-xft-hinting
- gtk-xft-hintstyle
- gtk-xft-rgba
While we do propagate gtk-theme-name, we don't do it for any of the other settings.
This means that they can only be fetched from XSettings/GSettings/settings portal
by GTK itself, but if the app changes them or if they are changed from inspector,
web processes won't see that.
Introduce GtkSettingsManager as a specific place that listens to preferences
changes and notifies the web process, where GtkSettingsManagerProxy updates
GtkSettings on that side. Keep the dark mode preference separate since there's
existing cross-platform infrastructure for it.
Apply settings after reinitializing as well, it was only done after initialization
so failed with PSON.
- PlatformGTK.cmake:
- Shared/WebPageCreationParameters.cpp:
(WebKit::WebPageCreationParameters::encode const):
(WebKit::WebPageCreationParameters::decode):
- Shared/WebPageCreationParameters.h:
- Shared/gtk/GtkSettingsState.cpp: Added.
(WebKit::GtkSettingsState::encode const):
(WebKit::GtkSettingsState::decode):
- Shared/gtk/GtkSettingsState.h: Added.
- Shared/gtk/NativeWebTouchEventGtk.cpp:
- SourcesGTK.txt:
- UIProcess/API/gtk/PageClientImpl.cpp:
- UIProcess/API/gtk/PageClientImpl.h:
- UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseSetToplevelOnScreenWindow):
(webkitWebViewBaseRoot):
(webkitWebViewBaseUnroot):
(webkitWebViewBaseConstructed):
- UIProcess/PageClient.h:
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::creationParameters):
- UIProcess/WebPageProxy.h:
- UIProcess/gtk/GtkSettingsManager.cpp: Added.
(WebKit::GtkSettingsManager::singleton):
(WebKit::GtkSettingsManager::themeName const):
(WebKit::GtkSettingsManager::fontName const):
(WebKit::GtkSettingsManager::xftAntialias const):
(WebKit::GtkSettingsManager::xftHinting const):
(WebKit::GtkSettingsManager::xftHintStyle const):
(WebKit::GtkSettingsManager::xftRGBA const):
(WebKit::GtkSettingsManager::xftDPI const):
(WebKit::GtkSettingsManager::cursorBlink const):
(WebKit::GtkSettingsManager::cursorBlinkTime const):
(WebKit::GtkSettingsManager::primaryButtonWarpsSlider const):
(WebKit::GtkSettingsManager::settingsDidChange):
(WebKit::GtkSettingsManager::GtkSettingsManager):
- UIProcess/gtk/GtkSettingsManager.h: Added.
(WebKit::GtkSettingsManager::settingsState const):
- UIProcess/gtk/WebPageProxyGtk.cpp:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::m_appHighlightsVisible):
(WebKit::WebPage::reinitializeWebPage):
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/WebPage.messages.in:
- WebProcess/WebPage/gtk/WebPageGtk.cpp:
- WebProcess/gtk/GtkSettingsManagerProxy.cpp: Added.
(WebKit::GtkSettingsManagerProxy::singleton):
(WebKit::GtkSettingsManagerProxy::GtkSettingsManagerProxy):
(WebKit::GtkSettingsManagerProxy::settingsDidChange):
(WebKit::GtkSettingsManagerProxy::applySettings):
- WebProcess/gtk/GtkSettingsManagerProxy.h: Added.
- WebProcess/gtk/GtkSettingsManagerProxy.messages.in: Added.
- 4:04 AM Changeset in webkit [280076] by
-
- 2 edits in trunk/Tools
Update myself (vjaquez) as committer in contributors.json
https://bugs.webkit.org/show_bug.cgi?id=228103
Unreviewed.
- Scripts/webkitpy/common/config/contributors.json:
- 3:39 AM Changeset in webkit [280075] by
-
- 10 edits2 deletes in trunk
Fix grid aspect-ratio tests
https://bugs.webkit.org/show_bug.cgi?id=225860
Patch by Rob Buis <rbuis@igalia.com> on 2021-07-20
Reviewed by Javier Fernandez.
LayoutTests/imported/w3c:
Import aspect-ratio tests based on 56bf98c5c0.
- web-platform-tests/css/css-sizing/aspect-ratio/grid-aspect-ratio-013-expected.xht: Removed.
- web-platform-tests/css/css-sizing/aspect-ratio/grid-aspect-ratio-013.html: Removed.
- web-platform-tests/css/css-sizing/aspect-ratio/grid-aspect-ratio-018.html:
- web-platform-tests/css/css-sizing/aspect-ratio/grid-aspect-ratio-019.html:
Source/WebCore:
Fix various combinations of implicit/explicit stretching in inline and
block directions as tested by grid-aspect-ratio-028.html until
grid-aspect-ratio-038.html and as specified [1, 2].
Also treat explicit stretching through justify-items/align-items: stretch
like justify-self/align-self: stretch.
[1] https://drafts.csswg.org/css-grid/#grid-item-sizing
[2] drafts.csswg.org/css-sizing-4/#aspect-ratio
- rendering/RenderBox.cpp:
(WebCore::RenderBox::hasStretchedLogicalWidth const):
(WebCore::RenderBox::shouldComputeLogicalWidthFromAspectRatio const):
- rendering/RenderBox.h:
- rendering/RenderGrid.cpp:
(WebCore::RenderGrid::selfAlignmentForChild const):
(WebCore::RenderGrid::alignSelfForChild const):
(WebCore::RenderGrid::justifySelfForChild const):
(WebCore::RenderGrid::aspectRatioPrefersInline):
(WebCore::RenderGrid::applyStretchAlignmentToChildIfNeeded):
(WebCore::RenderGrid::hasAutoSizeInColumnAxis const):
(WebCore::RenderGrid::hasAutoSizeInRowAxis const):
- rendering/RenderGrid.h:
LayoutTests:
Unskip tests that now pass.
- 3:32 AM WebKitGTK/2.32.x edited by
- (diff)
- 3:25 AM Changeset in webkit [280074] by
-
- 4 edits in trunk/Source/WebKit
[GTK][WPE] Fix compilation when ATK is not used
https://bugs.webkit.org/show_bug.cgi?id=228077
Reviewed by Carlos Garcia Campos.
Guard ATK only inside implementations, so the code is more readable.
Also changed guard from ATK to GTK platform showEmojiPicker().
No new tests needed.
- UIProcess/WebPageProxy.h:
- UIProcess/WebPageProxy.messages.in:
- UIProcess/wpe/WebPageProxyWPE.cpp:
(WebKit::WebPageProxy::bindAccessibilityTree):