[webkit-changes] [290200] trunk/Source/WebKit
Title: [290200] trunk/Source/WebKit Revision 290200 Author sihui_...@apple.com Date 2022-02-18 23:22:47 -0800 (Fri, 18 Feb 2022) Log Message ASSERTION FAILED: !hasAnyOpenConnections() in UniqueIDBDatabase::~UniqueIDBDatabase() https://bugs.webkit.org/show_bug.cgi?id=236856 Reviewed by Chris Dumez. The assertion is hit when running API test WebKit.MigrateIndexedDBDataToGeneralStorageDirectory. We need to properly close UniqueIDBDatabase before it's destroyed. * NetworkProcess/NetworkConnectionToWebProcess.cpp: (WebKit::NetworkConnectionToWebProcess::storageSession): remove logging as it was added when we had check for default session. Since we don't have the check now, the logging does not make much sense. * NetworkProcess/storage/IDBStorageManager.cpp: (WebKit::IDBStorageManager::~IDBStorageManager): * NetworkProcess/storage/IDBStorageManager.h: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp trunk/Source/WebKit/NetworkProcess/storage/IDBStorageManager.cpp trunk/Source/WebKit/NetworkProcess/storage/IDBStorageManager.h Diff Modified: trunk/Source/WebKit/ChangeLog (290199 => 290200) --- trunk/Source/WebKit/ChangeLog 2022-02-19 07:19:34 UTC (rev 290199) +++ trunk/Source/WebKit/ChangeLog 2022-02-19 07:22:47 UTC (rev 290200) @@ -1,3 +1,20 @@ +2022-02-18 Sihui Liu + +ASSERTION FAILED: !hasAnyOpenConnections() in UniqueIDBDatabase::~UniqueIDBDatabase() +https://bugs.webkit.org/show_bug.cgi?id=236856 + +Reviewed by Chris Dumez. + +The assertion is hit when running API test WebKit.MigrateIndexedDBDataToGeneralStorageDirectory. We need to +properly close UniqueIDBDatabase before it's destroyed. + +* NetworkProcess/NetworkConnectionToWebProcess.cpp: +(WebKit::NetworkConnectionToWebProcess::storageSession): remove logging as it was added when we had check for +default session. Since we don't have the check now, the logging does not make much sense. +* NetworkProcess/storage/IDBStorageManager.cpp: +(WebKit::IDBStorageManager::~IDBStorageManager): +* NetworkProcess/storage/IDBStorageManager.h: + 2022-02-18 Ben Nham Hook up PushManager to permission state Modified: trunk/Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp (290199 => 290200) --- trunk/Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp 2022-02-19 07:19:34 UTC (rev 290199) +++ trunk/Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp 2022-02-19 07:22:47 UTC (rev 290200) @@ -750,10 +750,7 @@ NetworkStorageSession* NetworkConnectionToWebProcess::storageSession() { -auto* session = networkProcess().storageSession(m_sessionID); -if (!session) -LOG_ERROR("Non-default storage session was requested, but there was no session for it. Please file a bug unless you just disabled private browsing, in which case it's an expected race."); -return session; +return networkProcess().storageSession(m_sessionID); } void NetworkConnectionToWebProcess::startDownload(DownloadID downloadID, const ResourceRequest& request, std::optional isNavigatingToAppBoundDomain, const String& suggestedName) Modified: trunk/Source/WebKit/NetworkProcess/storage/IDBStorageManager.cpp (290199 => 290200) --- trunk/Source/WebKit/NetworkProcess/storage/IDBStorageManager.cpp 2022-02-19 07:19:34 UTC (rev 290199) +++ trunk/Source/WebKit/NetworkProcess/storage/IDBStorageManager.cpp 2022-02-19 07:22:47 UTC (rev 290200) @@ -120,6 +120,12 @@ { } +IDBStorageManager::~IDBStorageManager() +{ +for (auto& database : m_databases.values()) +database->immediateClose(); +} + bool IDBStorageManager::isActive() const { return !m_databases.isEmpty(); Modified: trunk/Source/WebKit/NetworkProcess/storage/IDBStorageManager.h (290199 => 290200) --- trunk/Source/WebKit/NetworkProcess/storage/IDBStorageManager.h 2022-02-19 07:19:34 UTC (rev 290199) +++ trunk/Source/WebKit/NetworkProcess/storage/IDBStorageManager.h 2022-02-19 07:22:47 UTC (rev 290200) @@ -52,6 +52,7 @@ using QuotaCheckFunction = Function&&)>; IDBStorageManager(const String& path, IDBStorageRegistry&, QuotaCheckFunction&&); +~IDBStorageManager(); bool isActive() const; bool hasDataInMemory() const; void closeDatabasesForDeletion(); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [290199] trunk/Tools
Title: [290199] trunk/Tools Revision 290199 Author ddkil...@apple.com Date 2022-02-18 23:19:34 -0800 (Fri, 18 Feb 2022) Log Message [Tools] Sanitizer builds should obey `set-webkit-configuration --force-optimization-level` Reviewed by Brent Fulgham. * Scripts/webkitdirs.pm: (XcodeOptions): - Pass WK_FORCE_OPTIMIZATION_LEVEL instead of GCC_OPTIMIZATION_LEVEL if sanitizers are enabled so the optimization level can be overridden in sanitizer.xcconfig. * sanitizer/asan.xcconfig: (WK_NOT_): Remove. (WK_NOT_YES): Remove. - Move variables to sanitizer.xcconfig. * sanitizer/sanitizer.xcconfig: (WK_EMPTY_): Add. (WK_NOT_): Add. (WK_NOT_YES): Add. - Add utility variables originally from SDKVariant.xcconfig. (WK_OVERRIDE_OPTIMIZATION_LEVEL): Add. - Set to YES/NO depending on whether WK_FORCE_OPTIMIZATION_LEVEL is set. (GCC_OPTIMIZATION_LEVEL): (GCC_OPTIMIZATION_LEVEL_OVERRIDE_YES): Add. (GCC_OPTIMIZATION_LEVEL_OVERRIDE_NO): Add. (GCC_OPTIMIZATION_LEVEL_OVERRIDE_NO_Debug): Rename from GCC_OPTIMIZATION_LEVEL_Debug. (GCC_OPTIMIZATION_LEVEL_OVERRIDE_NO_Production): Rename from GCC_OPTIMIZATION_LEVEL_Production. (GCC_OPTIMIZATION_LEVEL_OVERRIDE_NO_Release): Rename from GCC_OPTIMIZATION_LEVEL_Release. - Make use of WK_OVERRIDE_OPTIMIZATION_LEVEL and WK_FORCE_OPTIMIZATION_LEVEL to allow overriding the default optimization level for sanitizer builds. Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/webkitdirs.pm trunk/Tools/sanitizer/asan.xcconfig trunk/Tools/sanitizer/sanitizer.xcconfig Diff Modified: trunk/Tools/ChangeLog (290198 => 290199) --- trunk/Tools/ChangeLog 2022-02-19 05:26:41 UTC (rev 290198) +++ trunk/Tools/ChangeLog 2022-02-19 07:19:34 UTC (rev 290199) @@ -1,3 +1,40 @@ +2022-02-18 David Kilzer + +[Tools] Sanitizer builds should obey `set-webkit-configuration --force-optimization-level` + + + +Reviewed by Brent Fulgham. + +* Scripts/webkitdirs.pm: +(XcodeOptions): +- Pass WK_FORCE_OPTIMIZATION_LEVEL instead of + GCC_OPTIMIZATION_LEVEL if sanitizers are enabled so the + optimization level can be overridden in sanitizer.xcconfig. + +* sanitizer/asan.xcconfig: +(WK_NOT_): Remove. +(WK_NOT_YES): Remove. +- Move variables to sanitizer.xcconfig. + +* sanitizer/sanitizer.xcconfig: +(WK_EMPTY_): Add. +(WK_NOT_): Add. +(WK_NOT_YES): Add. +- Add utility variables originally from SDKVariant.xcconfig. +(WK_OVERRIDE_OPTIMIZATION_LEVEL): Add. +- Set to YES/NO depending on whether WK_FORCE_OPTIMIZATION_LEVEL + is set. +(GCC_OPTIMIZATION_LEVEL): +(GCC_OPTIMIZATION_LEVEL_OVERRIDE_YES): Add. +(GCC_OPTIMIZATION_LEVEL_OVERRIDE_NO): Add. +(GCC_OPTIMIZATION_LEVEL_OVERRIDE_NO_Debug): Rename from GCC_OPTIMIZATION_LEVEL_Debug. +(GCC_OPTIMIZATION_LEVEL_OVERRIDE_NO_Production): Rename from GCC_OPTIMIZATION_LEVEL_Production. +(GCC_OPTIMIZATION_LEVEL_OVERRIDE_NO_Release): Rename from GCC_OPTIMIZATION_LEVEL_Release. +- Make use of WK_OVERRIDE_OPTIMIZATION_LEVEL and + WK_FORCE_OPTIMIZATION_LEVEL to allow overriding the default + optimization level for sanitizer builds. + 2022-02-18 Ben Nham Hook up PushManager to permission state Modified: trunk/Tools/Scripts/webkitdirs.pm (290198 => 290199) --- trunk/Tools/Scripts/webkitdirs.pm 2022-02-19 05:26:41 UTC (rev 290198) +++ trunk/Tools/Scripts/webkitdirs.pm 2022-02-19 07:19:34 UTC (rev 290199) @@ -1032,7 +1032,14 @@ push @options, ("-xcconfig", File::Spec->catfile(sourceDir(), "Tools", "sanitizer", "ubsan.xcconfig")); } push @options, XcodeCoverageSupportOptions() if $coverageIsEnabled; -push @options, ("GCC_OPTIMIZATION_LEVEL=$forceOptimizationLevel") if $forceOptimizationLevel; +if ($forceOptimizationLevel) { +if ($asanIsEnabled || $tsanIsEnabled || $ubsanIsEnabled) { +# Command-line Xcode variable won't override that same varible set in a command-line xcconfig file. +push @options, "WK_FORCE_OPTIMIZATION_LEVEL=$forceOptimizationLevel"; +} else { +push @options, "GCC_OPTIMIZATION_LEVEL=$forceOptimizationLevel"; +} +} push @options, "WK_LTO_MODE=$ltoMode" if $ltoMode; push @options, @baseProductDirOption; push @options, "ARCHS=$architecture" if $architecture; Modified: trunk/Tools/sanitizer/asan.xcconfig (290198 => 290199) --- trunk/Tools/sanitizer/asan.xcconfig 2022-02-19 05:26:41 UTC (rev 290198) +++ trunk/Tools/sanitizer/asan.xcconfig 2022-02-19 07:19:34 UTC (rev 290199) @@ -13,9 +13,6 @@ // Update after is fixed. WK_NEEDS_ASAN_USE_AFTER_SCOPE_WORKAROUND_FOR_bmalloc_YES = -DWK_WORKAROUND_RDAR_87613908_ASAN_STACK_USE_AFTER_SCOPE; -WK_NOT_ = YES; -WK_NOT_YES = NO; - WK_NEEDS_ASAN_USE_AFTER_SCOPE_WORKAROUND = $(WK_NOT_$(WK_XCODE_VERSION_BEFORE_13_3_$(XCODE_VERSION_MAJOR)));
[webkit-changes] [290198] trunk
Title: [290198] trunk Revision 290198 Author n...@apple.com Date 2022-02-18 21:26:41 -0800 (Fri, 18 Feb 2022) Log Message Hook up PushManager to permission state https://bugs.webkit.org/show_bug.cgi?id=236739 Reviewed by Brady Eidson. Source/WebCore: This implements PushManager.permissionState. It returns the same value as Notification.permission through the same mechanism. This also makes PushManager.subscribe request permission from the user to show notifications if the permission is in the default state and these requirements are met: 1. The caller is a document with the same origin as a top level document. This means that cross-origin iframes cannot request push permissions. This matches Chrome's behavior. 2. The caller cannot be a service worker. This limitation is allowed for by the spec. There also needs to be some code added which removes a push subscription if the user deletes the subscription entirely in the UI, for instance when the UIProcess calls WKNotificationManagerProviderDidRemoveNotificationPolicies. That will be handled in a separate patch. Covered by new layout tests. * Modules/push-api/PushManager.cpp: (WebCore::PushManager::subscribe): (WebCore::PushManager::getSubscription): (WebCore::PushManager::permissionState): Source/WebKit: Update comment explaining why we still have a permission state stub in webpushd. * webpushd/WebPushDaemon.mm: (WebPushD::Daemon::getPushPermissionState): Tools: Made the WebPushD API tests work now that subscribe checks for permission. * TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm: LayoutTests: Added tests that make sure that PushManager.permissionState() and PushManager.subscribe() respect the notification permission level for the current origin. I made these regular tests rather than WPT tests because the WPT test harness calls grantWebNotificationPermission at the top of its setup script (in testharnessreport.js), and I didn't want to change that for this patch. * http/tests/push-api/resources/push-api-test-pre.js: Added. (finishPushAPITest): (waitForState): * http/tests/push-api/resources/subscribe-iframe-cross-origin.html: Added. * http/tests/push-api/resources/subscribe-iframe-same-origin.html: Added. * http/tests/push-api/resources/subscribe-tests.js: Added. (async testServiceWorkerPermissionState): (async testDocumentPermissionState): (async testServiceWorkerSubscribe): (async testDocumentSubscribe): * http/tests/push-api/resources/subscribe-worker.js: Added. (async event): * http/tests/push-api/subscribe-default-permissions-expected.txt: Added. * http/tests/push-api/subscribe-default-permissions-iframe-cross-origin-expected.txt: Added. * http/tests/push-api/subscribe-default-permissions-iframe-cross-origin.html: Added. * http/tests/push-api/subscribe-default-permissions-iframe-same-origin-expected.txt: Added. * http/tests/push-api/subscribe-default-permissions-iframe-same-origin.html: Added. * http/tests/push-api/subscribe-default-permissions.html: Added. * http/tests/push-api/subscribe-deny-permissions-expected.txt: Added. * http/tests/push-api/subscribe-deny-permissions.html: Added. * http/tests/push-api/subscribe-grant-permissions-expected.txt: Added. * http/tests/push-api/subscribe-grant-permissions.html: Added. * platform/gtk/TestExpectations: * platform/mac-wk1/TestExpectations: * platform/win/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/gtk/TestExpectations trunk/LayoutTests/platform/mac-wk1/TestExpectations trunk/LayoutTests/platform/win/TestExpectations trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/push-api/PushManager.cpp trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/webpushd/WebPushDaemon.mm trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm Added Paths trunk/LayoutTests/http/tests/push-api/ trunk/LayoutTests/http/tests/push-api/resources/ trunk/LayoutTests/http/tests/push-api/resources/push-api-test-pre.js trunk/LayoutTests/http/tests/push-api/resources/subscribe-iframe-cross-origin.html trunk/LayoutTests/http/tests/push-api/resources/subscribe-iframe-same-origin.html trunk/LayoutTests/http/tests/push-api/resources/subscribe-tests.js trunk/LayoutTests/http/tests/push-api/resources/subscribe-worker.js trunk/LayoutTests/http/tests/push-api/subscribe-default-permissions-expected.txt trunk/LayoutTests/http/tests/push-api/subscribe-default-permissions-iframe-cross-origin-expected.txt trunk/LayoutTests/http/tests/push-api/subscribe-default-permissions-iframe-cross-origin.html trunk/LayoutTests/http/tests/push-api/subscribe-default-permissions-iframe-same-origin-expected.txt trunk/LayoutTests/http/tests/push-api/subscribe-default-permissions-iframe-same-origin.html trunk/LayoutTests/http/tests/push-api/subscribe-default-permissions.html trunk/LayoutTests/http/tests/push-api/subscribe-deny-permissions-expected.txt trunk/LayoutTests/http/tests/push-api/subscribe-deny-permissions.html
[webkit-changes] [290197] trunk
Title: [290197] trunk Revision 290197 Author n...@apple.com Date 2022-02-18 20:27:39 -0800 (Fri, 18 Feb 2022) Log Message Stop propagating inertness through iframes in Node::deprecatedIsInert() https://bugs.webkit.org/show_bug.cgi?id=236512 Reviewed by Chris Dumez. This is only a bug for Node::deprecatedIsInert(), so it only affects focus. Selection APIs, etc. weren't affected before this bug. LayoutTests/imported/w3c: * web-platform-tests/html/semantics/interactive-elements/the-dialog-element/inert-focus-in-frames-expected.txt: Source/WebCore: Test: web-platform-tests/html/semantics/interactive-elements/the-dialog-element/inert-focus-in-frames.html * dom/Node.cpp: (WebCore::Node::deprecatedIsInert const): Modified Paths trunk/LayoutTests/imported/w3c/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/Node.cpp Diff Modified: trunk/LayoutTests/imported/w3c/ChangeLog (290196 => 290197) --- trunk/LayoutTests/imported/w3c/ChangeLog 2022-02-19 04:14:04 UTC (rev 290196) +++ trunk/LayoutTests/imported/w3c/ChangeLog 2022-02-19 04:27:39 UTC (rev 290197) @@ -1,5 +1,17 @@ 2022-02-18 Tim Nguyen +Stop propagating inertness through iframes in Node::deprecatedIsInert() +https://bugs.webkit.org/show_bug.cgi?id=236512 + +Reviewed by Chris Dumez. + +This is only a bug for Node::deprecatedIsInert(), so it only affects focus. Selection APIs, etc. weren't affected +before this bug. + +* web-platform-tests/html/semantics/interactive-elements/the-dialog-element/inert-focus-in-frames-expected.txt: + +2022-02-18 Tim Nguyen + Re-import inert and WPT https://bugs.webkit.org/show_bug.cgi?id=236808 Modified: trunk/Source/WebCore/ChangeLog (290196 => 290197) --- trunk/Source/WebCore/ChangeLog 2022-02-19 04:14:04 UTC (rev 290196) +++ trunk/Source/WebCore/ChangeLog 2022-02-19 04:27:39 UTC (rev 290197) @@ -1,3 +1,18 @@ +2022-02-18 Tim Nguyen + +Stop propagating inertness through iframes in Node::deprecatedIsInert() +https://bugs.webkit.org/show_bug.cgi?id=236512 + +Reviewed by Chris Dumez. + +This is only a bug for Node::deprecatedIsInert(), so it only affects focus. Selection APIs, etc. weren't affected +before this bug. + +Test: web-platform-tests/html/semantics/interactive-elements/the-dialog-element/inert-focus-in-frames.html + +* dom/Node.cpp: +(WebCore::Node::deprecatedIsInert const): + 2022-02-18 Commit Queue Unreviewed, reverting r290188. Modified: trunk/Source/WebCore/dom/Node.cpp (290196 => 290197) --- trunk/Source/WebCore/dom/Node.cpp 2022-02-19 04:14:04 UTC (rev 290196) +++ trunk/Source/WebCore/dom/Node.cpp 2022-02-19 04:27:39 UTC (rev 290197) @@ -2634,10 +2634,7 @@ } } -if (!document().frame() || !document().frame()->ownerElement()) -return false; - -return document().frame()->ownerElement()->deprecatedIsInert(); +return false; } template<> ContainerNode* parent(const Node& node) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [290196] trunk
Title: [290196] trunk Revision 290196 Author sihui_...@apple.com Date 2022-02-18 20:14:04 -0800 (Fri, 18 Feb 2022) Log Message Source/WebKit: Add assertion that no two network sessions share the same storage path https://bugs.webkit.org/show_bug.cgi?id=236844 Reviewed by Chris Dumez. Each NetworkStorageManager has its own queue and accesses the storage files on that queue, so we can't have two NetworkworkStorageManagers use the same path, as the path may be accessed concurrently and cause corruption. Currently we have an SPI for setting custom generalStorageDirectory for WebsiteDataStore (in _WKWebsiteDataStoreConfiguration), which means SPI clients can create two sessions with the same path in theory. Let's add an assertion to ensure that does not happen. This assertion has helped find a bug in WebKitTestRunner that we didn't set custom generalStorageDirectory for a custom WebsiteDataStore (so it's using the same path as default WebsiteDataStore). * NetworkProcess/storage/NetworkStorageManager.cpp: (WebKit::activePaths): (WebKit::NetworkStorageManager::NetworkStorageManager): (WebKit::NetworkStorageManager::~NetworkStorageManager): Tools: Add assertion that no two network session share the same storage path https://bugs.webkit.org/show_bug.cgi?id=236844 Reviewed by Chris Dumez. * WebKitTestRunner/TestController.cpp: (WTR::TestController::configureWebsiteDataStoreTemporaryDirectories): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/storage/NetworkStorageManager.cpp trunk/Tools/ChangeLog trunk/Tools/WebKitTestRunner/TestController.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (290195 => 290196) --- trunk/Source/WebKit/ChangeLog 2022-02-19 03:56:45 UTC (rev 290195) +++ trunk/Source/WebKit/ChangeLog 2022-02-19 04:14:04 UTC (rev 290196) @@ -1,3 +1,24 @@ +2022-02-18 Sihui Liu + +Add assertion that no two network sessions share the same storage path +https://bugs.webkit.org/show_bug.cgi?id=236844 + +Reviewed by Chris Dumez. + +Each NetworkStorageManager has its own queue and accesses the storage files on that queue, so we can't have two +NetworkworkStorageManagers use the same path, as the path may be accessed concurrently and cause corruption. +Currently we have an SPI for setting custom generalStorageDirectory for WebsiteDataStore (in +_WKWebsiteDataStoreConfiguration), which means SPI clients can create two sessions with the same path in theory. +Let's add an assertion to ensure that does not happen. + +This assertion has helped find a bug in WebKitTestRunner that we didn't set custom generalStorageDirectory for a +custom WebsiteDataStore (so it's using the same path as default WebsiteDataStore). + +* NetworkProcess/storage/NetworkStorageManager.cpp: +(WebKit::activePaths): +(WebKit::NetworkStorageManager::NetworkStorageManager): +(WebKit::NetworkStorageManager::~NetworkStorageManager): + 2022-02-18 Per Arne Vollan Move content filtering to Networking process Modified: trunk/Source/WebKit/NetworkProcess/storage/NetworkStorageManager.cpp (290195 => 290196) --- trunk/Source/WebKit/NetworkProcess/storage/NetworkStorageManager.cpp 2022-02-19 03:56:45 UTC (rev 290195) +++ trunk/Source/WebKit/NetworkProcess/storage/NetworkStorageManager.cpp 2022-02-19 04:14:04 UTC (rev 290196) @@ -108,6 +108,12 @@ FileSystem::deleteFile(filePath); } +static HashSet& activePaths() +{ +static MainThreadNeverDestroyed> paths; +return paths; +} + Ref NetworkStorageManager::create(PAL::SessionID sessionID, IPC::Connection::UniqueID connection, const String& path, const String& customLocalStoragePath, const String& customIDBStoragePath, const String& customCacheStoragePath, uint64_t defaultOriginQuota, uint64_t defaultThirdPartyOriginQuota, bool shouldUseCustomPaths) { return adoptRef(*new NetworkStorageManager(sessionID, connection, path, customLocalStoragePath, customIDBStoragePath, customCacheStoragePath, defaultOriginQuota, defaultThirdPartyOriginQuota, shouldUseCustomPaths)); @@ -122,6 +128,12 @@ { ASSERT(RunLoop::isMain()); +// Sessions are not supposed to share the same path, as each session runs on its own queue +// and this can cause corruption. If the assertion is hit, check if you create multiple +// WebsiteDataStores with the same generalStorageDirectory. +if (!path.isEmpty()) +RELEASE_ASSERT(activePaths().add(path).isNewEntry); + m_queue->dispatch([this, protectedThis = Ref { *this }, path = path.isolatedCopy(), customLocalStoragePath = crossThreadCopy(customLocalStoragePath), customIDBStoragePath = crossThreadCopy(customIDBStoragePath), customCacheStoragePath = crossThreadCopy(customCacheStoragePath), shouldUseCustomPaths]() mutable { m_fileSystemStorageHandleRegistry = makeUnique(); m_storageAreaRegistry = makeUnique(); @@ -142,6 +154,9 @@ {
[webkit-changes] [290195] trunk/Source/bmalloc
Title: [290195] trunk/Source/bmalloc Revision 290195 Author ysuz...@apple.com Date 2022-02-18 19:56:45 -0800 (Fri, 18 Feb 2022) Log Message [libpas] Increase scavenger period from 100ms to 125ms in Darwin x64 https://bugs.webkit.org/show_bug.cgi?id=236873 Reviewed by Saam Barati. Make x64 scavenger less aggressive while maintaining Membuster neutral to make it less work. * libpas/src/libpas/pas_config_prefix.h: * libpas/src/libpas/pas_scavenger.c: * libpas/src/libpas/pas_utils.h: Modified Paths trunk/Source/bmalloc/ChangeLog trunk/Source/bmalloc/libpas/src/libpas/pas_config_prefix.h trunk/Source/bmalloc/libpas/src/libpas/pas_scavenger.c trunk/Source/bmalloc/libpas/src/libpas/pas_utils.h Diff Modified: trunk/Source/bmalloc/ChangeLog (290194 => 290195) --- trunk/Source/bmalloc/ChangeLog 2022-02-19 03:53:08 UTC (rev 290194) +++ trunk/Source/bmalloc/ChangeLog 2022-02-19 03:56:45 UTC (rev 290195) @@ -1,3 +1,17 @@ +2022-02-18 Yusuke Suzuki + +[libpas] Increase scavenger period from 100ms to 125ms in Darwin x64 +https://bugs.webkit.org/show_bug.cgi?id=236873 + +Reviewed by Saam Barati. + +Make x64 scavenger less aggressive while maintaining Membuster neutral +to make it less work. + +* libpas/src/libpas/pas_config_prefix.h: +* libpas/src/libpas/pas_scavenger.c: +* libpas/src/libpas/pas_utils.h: + 2022-02-18 Robert Jenner Unreviewed, reverting r290149. Modified: trunk/Source/bmalloc/libpas/src/libpas/pas_config_prefix.h (290194 => 290195) --- trunk/Source/bmalloc/libpas/src/libpas/pas_config_prefix.h 2022-02-19 03:53:08 UTC (rev 290194) +++ trunk/Source/bmalloc/libpas/src/libpas/pas_config_prefix.h 2022-02-19 03:56:45 UTC (rev 290195) @@ -54,6 +54,18 @@ #define __PAS_ARM (!!__PAS_ARM64 || !!__PAS_ARM32) +#if defined(__i386__) || defined(i386) || defined(_M_IX86) || defined(_X86_) || defined(__THW_INTEL) +#define __PAS_X86 1 +#else +#define __PAS_X86 0 +#endif + +#if defined(__x86_64__) || defined(_M_X64) +#define __PAS_X86_64 1 +#else +#define __PAS_X86_64 0 +#endif + #if defined(__riscv) #define __PAS_RISCV 1 #else Modified: trunk/Source/bmalloc/libpas/src/libpas/pas_scavenger.c (290194 => 290195) --- trunk/Source/bmalloc/libpas/src/libpas/pas_scavenger.c 2022-02-19 03:53:08 UTC (rev 290194) +++ trunk/Source/bmalloc/libpas/src/libpas/pas_scavenger.c 2022-02-19 03:56:45 UTC (rev 290195) @@ -61,7 +61,11 @@ double pas_scavenger_period_in_milliseconds = 10.; uint64_t pas_scavenger_max_epoch_delta = 10ll * 1000ll * 1000ll; #else +#if PAS_OS(DARWIN) && PAS_X86_64 +double pas_scavenger_period_in_milliseconds = 125.; +#else double pas_scavenger_period_in_milliseconds = 100.; +#endif uint64_t pas_scavenger_max_epoch_delta = 300ll * 1000ll * 1000ll; #endif Modified: trunk/Source/bmalloc/libpas/src/libpas/pas_utils.h (290194 => 290195) --- trunk/Source/bmalloc/libpas/src/libpas/pas_utils.h 2022-02-19 03:53:08 UTC (rev 290194) +++ trunk/Source/bmalloc/libpas/src/libpas/pas_utils.h 2022-02-19 03:56:45 UTC (rev 290195) @@ -84,6 +84,9 @@ #define PAS_ARM __PAS_ARM +#define PAS_X86 __PAS_X86 +#define PAS_X86_64 __PAS_X86_64 + #define PAS_RISCV __PAS_RISCV #if PAS_ARM64 && !PAS_ARM64E && !PAS_OS(MAC) && !defined(__ARM_FEATURE_ATOMICS) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [290194] trunk/Source/JavaScriptCore
Title: [290194] trunk/Source/_javascript_Core Revision 290194 Author ysuz...@apple.com Date 2022-02-18 19:53:08 -0800 (Fri, 18 Feb 2022) Log Message [JSC] Make ArrayPrototype just an array https://bugs.webkit.org/show_bug.cgi?id=236869 Reviewed by Saam Barati. Originally, ArrayPrototype has slightly different memory layout & different logic etc. But now, it is just an array with a lot of properties. We should just make it an array. * runtime/ArrayPrototype.cpp: (JSC::ArrayPrototype::finishCreation): * runtime/ArrayPrototype.h: Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/runtime/ArrayPrototype.cpp trunk/Source/_javascript_Core/runtime/ArrayPrototype.h Diff Modified: trunk/Source/_javascript_Core/ChangeLog (290193 => 290194) --- trunk/Source/_javascript_Core/ChangeLog 2022-02-19 03:21:11 UTC (rev 290193) +++ trunk/Source/_javascript_Core/ChangeLog 2022-02-19 03:53:08 UTC (rev 290194) @@ -1,3 +1,17 @@ +2022-02-18 Yusuke Suzuki + +[JSC] Make ArrayPrototype just an array +https://bugs.webkit.org/show_bug.cgi?id=236869 + +Reviewed by Saam Barati. + +Originally, ArrayPrototype has slightly different memory layout & different logic etc. +But now, it is just an array with a lot of properties. We should just make it an array. + +* runtime/ArrayPrototype.cpp: +(JSC::ArrayPrototype::finishCreation): +* runtime/ArrayPrototype.h: + 2022-02-18 Robert Jenner Unreviewed, reverting r290149. Modified: trunk/Source/_javascript_Core/runtime/ArrayPrototype.cpp (290193 => 290194) --- trunk/Source/_javascript_Core/runtime/ArrayPrototype.cpp 2022-02-19 03:21:11 UTC (rev 290193) +++ trunk/Source/_javascript_Core/runtime/ArrayPrototype.cpp 2022-02-19 03:53:08 UTC (rev 290194) @@ -57,8 +57,6 @@ // -- ArrayPrototype -const ClassInfo ArrayPrototype::s_info = {"Array", ::s_info, nullptr, nullptr, CREATE_METHOD_TABLE(ArrayPrototype)}; - ArrayPrototype* ArrayPrototype::create(VM& vm, JSGlobalObject* globalObject, Structure* structure) { ArrayPrototype* prototype = new (NotNull, allocateCell(vm)) ArrayPrototype(vm, structure); @@ -76,6 +74,8 @@ { Base::finishCreation(vm); ASSERT(inherits(vm, info())); +ASSERT(info() == JSArray::info()); +ASSERT(type() == ArrayType); putDirectWithoutTransition(vm, vm.propertyNames->toString, globalObject->arrayProtoToStringFunction(), static_cast(PropertyAttribute::DontEnum)); putDirectWithoutTransition(vm, vm.propertyNames->builtinNames().valuesPublicName(), globalObject->arrayProtoValuesFunction(), static_cast(PropertyAttribute::DontEnum)); Modified: trunk/Source/_javascript_Core/runtime/ArrayPrototype.h (290193 => 290194) --- trunk/Source/_javascript_Core/runtime/ArrayPrototype.h 2022-02-19 03:21:11 UTC (rev 290193) +++ trunk/Source/_javascript_Core/runtime/ArrayPrototype.h 2022-02-19 03:53:08 UTC (rev 290194) @@ -24,23 +24,17 @@ namespace JSC { +// This is a simple JSArray, only including some special initialization sequence. +// We must not have special ArrayPrototype::info. class ArrayPrototype final : public JSArray { public: using Base = JSArray; -enum class SpeciesWatchpointStatus { -Uninitialized, -Initialized, -Fired -}; - static ArrayPrototype* create(VM&, JSGlobalObject*, Structure*); - -DECLARE_EXPORT_INFO; static Structure* createStructure(VM& vm, JSGlobalObject* globalObject, JSValue prototype) { -return Structure::create(vm, globalObject, prototype, TypeInfo(DerivedArrayType, StructureFlags), info(), ArrayClass); +return Base::createStructure(vm, globalObject, prototype, ArrayClass); } private: ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [290192] trunk/LayoutTests
Title: [290192] trunk/LayoutTests Revision 290192 Author ryanhad...@apple.com Date 2022-02-18 18:47:22 -0800 (Fri, 18 Feb 2022) Log Message http/wpt/push-api/onpush-disabled.html fails (incremental build issue?) https://bugs.webkit.org/show_bug.cgi?id=236874 Unreviewed test gardening. * TestExpectations: Mark test as failing to reduce impact on EWS. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (290191 => 290192) --- trunk/LayoutTests/ChangeLog 2022-02-19 02:09:33 UTC (rev 290191) +++ trunk/LayoutTests/ChangeLog 2022-02-19 02:47:22 UTC (rev 290192) @@ -1,3 +1,12 @@ +2022-02-18 Ryan Haddad + +http/wpt/push-api/onpush-disabled.html fails (incremental build issue?) +https://bugs.webkit.org/show_bug.cgi?id=236874 + +Unreviewed test gardening. + +* TestExpectations: Mark test as failing to reduce impact on EWS. + 2022-02-18 Matteo Flores REGRESSION(r287249): [ Monterey wk2 ] media/media-source/media-webm-vorbis-partial.html is a constant text failure Modified: trunk/LayoutTests/TestExpectations (290191 => 290192) --- trunk/LayoutTests/TestExpectations 2022-02-19 02:09:33 UTC (rev 290191) +++ trunk/LayoutTests/TestExpectations 2022-02-19 02:47:22 UTC (rev 290192) @@ -5176,5 +5176,7 @@ js/dom/reflect-set-onto-dom.html [ Skip ] userscripts/user-script-plugin-document.html [ Skip ] +webkit.org/b/236874 http/wpt/push-api/onpush-disabled.html [ Failure ] + # This is marked as passing on WK2. fast/canvas/large-getImageData.html [ Skip ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [290191] trunk/LayoutTests
Title: [290191] trunk/LayoutTests Revision 290191 Author jen...@apple.com Date 2022-02-18 18:09:33 -0800 (Fri, 18 Feb 2022) Log Message REGRESSION(r287249): [ Monterey wk2 ] media/media-source/media-webm-vorbis-partial.html is a constant text failure https://bugs.webkit.org/show_bug.cgi?id=236857 Unreviewed test gardening. Patch by Matteo Flores on 2022-02-18 * platform/mac-bigsur/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.txt: Copied from LayoutTests/platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.txt. * platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.txt: Rebaslining due to test changes. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.txt Added Paths trunk/LayoutTests/platform/mac-bigsur/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.txt Diff Modified: trunk/LayoutTests/ChangeLog (290190 => 290191) --- trunk/LayoutTests/ChangeLog 2022-02-19 01:03:29 UTC (rev 290190) +++ trunk/LayoutTests/ChangeLog 2022-02-19 02:09:33 UTC (rev 290191) @@ -1,3 +1,13 @@ +2022-02-18 Matteo Flores + +REGRESSION(r287249): [ Monterey wk2 ] media/media-source/media-webm-vorbis-partial.html is a constant text failure +https://bugs.webkit.org/show_bug.cgi?id=236857 + +Unreviewed test gardening. + +* platform/mac-bigsur/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.txt: Copied from LayoutTests/platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.txt. +* platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.txt: Rebaslining due to test changes. + 2022-02-18 Wenson Hsieh [Live Text] Add a mechanism to inject images into image overlays Modified: trunk/LayoutTests/platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.txt (290190 => 290191) --- trunk/LayoutTests/platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.txt 2022-02-19 01:03:29 UTC (rev 290190) +++ trunk/LayoutTests/platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.txt 2022-02-19 02:09:33 UTC (rev 290191) @@ -11,14 +11,14 @@ RenderInline {SPAN} at (0,0) size 114x14 [color=#FF] [border: (1px solid #008000) none (1px solid #FF) none] RenderText {#text} at (662,8) size 114x12 text run at (662,8) width 114 RTL: "\x{628}\x{62F}\x{621} \x{627}\x{644}\x{645}\x{64D} \x{641}\x{64A} \x{62A}\x{62D}\x{637}\x{645} \x{644}\x{62C}\x{645}\x{64E}\x{651}\x{644} \x{627}\x{644}\x{627}\x{633}\x{628}\x{627}\x{646}\x{64A}\x{629}" -RenderBR {BR} at (662,17) size 1x0 +RenderBR {BR} at (662,8) size 1x12 RenderText {#text} at (639,21) size 137x12 text run at (639,21) width 137 RTL: "\x{628}\x{62F}\x{621} \x{627}\x{644}\x{62A}\x{62D}\x{642}\x{64A}\x{642} \x{641}\x{64A} \x{62A}\x{62D}\x{637}\x{645} \x{627}\x{644}\x{637}\x{627}\x{626}\x{631}\x{629} \x{627}\x{644}\x{627}\x{633}\x{628}\x{627}\x{646}\x{64A}\x{629}" RenderBlock {DIV} at (0,84) size 784x50 [bgcolor=#D3D3D3] -RenderInline {SPAN} at (0,0) size 137x17 [color=#FF] [border: (1px solid #008000) none (1px solid #FF) none] - RenderText {#text} at (639,9) size 137x15 -text run at (639,9) width 137 RTL: "\x{628}\x{62F}\x{621} \x{627}\x{644}\x{645}\x{64D} \x{641}\x{64A} \x{62A}\x{62D}\x{637}\x{645} \x{644}\x{62C}\x{645}\x{64E}\x{651}\x{644} \x{627}\x{644}\x{627}\x{633}\x{628}\x{627}\x{646}\x{64A}\x{629}" -RenderBR {BR} at (639,20) size 1x0 +RenderInline {SPAN} at (0,0) size 136x17 [color=#FF] [border: (1px solid #008000) none (1px solid #FF) none] + RenderText {#text} at (640,9) size 136x15 +text run at (640,9) width 136 RTL: "\x{628}\x{62F}\x{621} \x{627}\x{644}\x{645}\x{64D} \x{641}\x{64A} \x{62A}\x{62D}\x{637}\x{645} \x{644}\x{62C}\x{645}\x{64E}\x{651}\x{644} \x{627}\x{644}\x{627}\x{633}\x{628}\x{627}\x{646}\x{64A}\x{629}" +RenderBR {BR} at (640,9) size 1x15 RenderText {#text} at (612,26) size 164x15 text run at (612,26) width 164 RTL: "\x{628}\x{62F}\x{621} \x{627}\x{644}\x{62A}\x{62D}\x{642}\x{64A}\x{642} \x{641}\x{64A} \x{62A}\x{62D}\x{637}\x{645} \x{627}\x{644}\x{637}\x{627}\x{626}\x{631}\x{629} \x{627}\x{644}\x{627}\x{633}\x{628}\x{627}\x{646}\x{64A}\x{629}" RenderBlock {DIV} at (0,142) size 784x56 [bgcolor=#D3D3D3] @@ -25,27 +25,27 @@ RenderInline {SPAN} at (0,0) size 159x20 [color=#FF] [border: (1px solid #008000) none (1px solid #FF) none] RenderText {#text} at (617,9) size 159x18 text run at (617,9) width 159 RTL: "\x{628}\x{62F}\x{621} \x{627}\x{644}\x{645}\x{64D} \x{641}\x{64A} \x{62A}\x{62D}\x{637}\x{645}
[webkit-changes] [290190] trunk/Source/WebGPU
Title: [290190] trunk/Source/WebGPU Revision 290190 Author mmaxfi...@apple.com Date 2022-02-18 17:03:29 -0800 (Fri, 18 Feb 2022) Log Message [WebGPU] Any object-creation function that takes a descriptor can fail https://bugs.webkit.org/show_bug.cgi?id=236855 Reviewed by Dean Jackson. Generally, we view allocation failure as catastrophic, and crash. Because of that, I originally made these methods return Refs, because I expected the failure case to cause intentional crashes rather than return nullptr. However, descriptors the shared header have a nextInChain pointer, which allows callers to pass in extra extension-specific structs, as a linked list. If the WebGPU implementation sees one of these extra structs that it doesn't know what to do with, it has to fail. That means that it's possible to fail in a way other than an allocation failure, which means these functions have to return RefPtrs instead of Refs. * WebGPU/Adapter.h: * WebGPU/Adapter.mm: (WebGPU::Adapter::requestDevice): (wgpuAdapterRequestDevice): * WebGPU/CommandEncoder.h: * WebGPU/CommandEncoder.mm: (WebGPU::CommandEncoder::beginComputePass): (WebGPU::CommandEncoder::beginRenderPass): (WebGPU::CommandEncoder::finish): (wgpuCommandEncoderBeginComputePass): (wgpuCommandEncoderBeginRenderPass): (wgpuCommandEncoderFinish): * WebGPU/Device.h: * WebGPU/Device.mm: (WebGPU::Device::createBindGroup): (WebGPU::Device::createBindGroupLayout): (WebGPU::Device::createBuffer): (WebGPU::Device::createCommandEncoder): (WebGPU::Device::createComputePipeline): (WebGPU::Device::createComputePipelineAsync): (WebGPU::Device::createPipelineLayout): (WebGPU::Device::createQuerySet): (WebGPU::Device::createRenderBundleEncoder): (WebGPU::Device::createRenderPipeline): (WebGPU::Device::createRenderPipelineAsync): (WebGPU::Device::createSampler): (WebGPU::Device::createShaderModule): (WebGPU::Device::createSwapChain): (WebGPU::Device::createTexture): (WebGPU::Device::getQueue): (wgpuDeviceCreateBindGroup): (wgpuDeviceCreateBindGroupLayout): (wgpuDeviceCreateBuffer): (wgpuDeviceCreateCommandEncoder): (wgpuDeviceCreateComputePipeline): (wgpuDeviceCreateComputePipelineAsync): (wgpuDeviceCreatePipelineLayout): (wgpuDeviceCreateQuerySet): (wgpuDeviceCreateRenderBundleEncoder): (wgpuDeviceCreateRenderPipeline): (wgpuDeviceCreateRenderPipelineAsync): (wgpuDeviceCreateSampler): (wgpuDeviceCreateShaderModule): (wgpuDeviceCreateSwapChain): (wgpuDeviceCreateTexture): (wgpuDeviceGetQueue): * WebGPU/Instance.h: * WebGPU/Instance.mm: (WebGPU::Instance::createSurface): (wgpuInstanceCreateSurface): * WebGPU/RenderBundleEncoder.h: * WebGPU/RenderBundleEncoder.mm: (WebGPU::RenderBundleEncoder::finish): (wgpuRenderBundleEncoderFinish): * WebGPU/Texture.h: * WebGPU/Texture.mm: (WebGPU::Texture::createView): (wgpuTextureCreateView): Modified Paths trunk/Source/WebGPU/ChangeLog trunk/Source/WebGPU/WebGPU/Adapter.h trunk/Source/WebGPU/WebGPU/Adapter.mm trunk/Source/WebGPU/WebGPU/CommandEncoder.h trunk/Source/WebGPU/WebGPU/CommandEncoder.mm trunk/Source/WebGPU/WebGPU/Device.h trunk/Source/WebGPU/WebGPU/Device.mm trunk/Source/WebGPU/WebGPU/Instance.h trunk/Source/WebGPU/WebGPU/Instance.mm trunk/Source/WebGPU/WebGPU/RenderBundleEncoder.h trunk/Source/WebGPU/WebGPU/RenderBundleEncoder.mm trunk/Source/WebGPU/WebGPU/Texture.h trunk/Source/WebGPU/WebGPU/Texture.mm Diff Modified: trunk/Source/WebGPU/ChangeLog (290189 => 290190) --- trunk/Source/WebGPU/ChangeLog 2022-02-19 01:02:27 UTC (rev 290189) +++ trunk/Source/WebGPU/ChangeLog 2022-02-19 01:03:29 UTC (rev 290190) @@ -1,3 +1,79 @@ +2022-02-18 Myles C. Maxfield + +[WebGPU] Any object-creation function that takes a descriptor can fail +https://bugs.webkit.org/show_bug.cgi?id=236855 + +Reviewed by Dean Jackson. + +Generally, we view allocation failure as catastrophic, and crash. Because of that, I originally +made these methods return Refs, because I expected the failure case to cause intentional crashes +rather than return nullptr. + +However, descriptors the shared header have a nextInChain pointer, which allows callers to pass +in extra extension-specific structs, as a linked list. If the WebGPU implementation sees one of +these extra structs that it doesn't know what to do with, it has to fail. That means that it's +possible to fail in a way other than an allocation failure, which means these functions have to +return RefPtrs instead of Refs. + +* WebGPU/Adapter.h: +* WebGPU/Adapter.mm: +(WebGPU::Adapter::requestDevice): +(wgpuAdapterRequestDevice): +* WebGPU/CommandEncoder.h: +* WebGPU/CommandEncoder.mm: +(WebGPU::CommandEncoder::beginComputePass): +(WebGPU::CommandEncoder::beginRenderPass): +(WebGPU::CommandEncoder::finish): +(wgpuCommandEncoderBeginComputePass): +(wgpuCommandEncoderBeginRenderPass): +(wgpuCommandEncoderFinish): +
[webkit-changes] [290189] trunk/Source
Title: [290189] trunk/Source Revision 290189 Author pvol...@apple.com Date 2022-02-18 17:02:27 -0800 (Fri, 18 Feb 2022) Log Message Move content filtering to Networking process https://bugs.webkit.org/show_bug.cgi?id=233760 Reviewed by Brent Fulgham. Source/WebCore: Remove content filtering from DocumentLoader when the feature is enabled, since this takes place in the WebContent process. Modify the ContentFilter class by removing use of the types CachedResoure and CachedRawResource, since objects of these types are not available in the Networking process. Parameters with these types are replaced with URL parameters. The new behavior is behind a feature flag, which is not enabled in this patch. * WebCore.xcodeproj/project.pbxproj: * loader/ContentFilter.cpp: (WebCore::ContentFilter::startFilteringMainResource): (WebCore::ContentFilter::stopFilteringMainResource): (WebCore::ContentFilter::continueAfterResponseReceived): (WebCore::ContentFilter::continueAfterDataReceived): (WebCore::ContentFilter::continueAfterNotifyFinished): (WebCore::ContentFilter::didDecide): (WebCore::ContentFilter::deliverResourceData): (WebCore::ContentFilter::url): (WebCore::ContentFilter::deliverStoredResourceData): * loader/ContentFilter.h: (WebCore::ContentFilter::blockedError const): (WebCore::ContentFilter::isAllowed const): (WebCore::ContentFilter::responseReceived const): * loader/ContentFilterClient.h: * loader/DocumentLoader.cpp: (WebCore::DocumentLoader::notifyFinished): (WebCore::DocumentLoader::willSendRequest): (WebCore::DocumentLoader::responseReceived): (WebCore::DocumentLoader::dataReceived): (WebCore::DocumentLoader::detachFromFrame): (WebCore::DocumentLoader::startLoadingMainResource): (WebCore::DocumentLoader::clearMainResource): (WebCore::DocumentLoader::becomeMainResourceClient): (WebCore::DocumentLoader::contentFilterDidBlock): (WebCore::DocumentLoader::handleContentFilterDidBlock): (WebCore::DocumentLoader::handleContentFilterProvisionalLoadFailure): (WebCore::DocumentLoader::contentFilterWillHandleProvisionalLoadFailure): (WebCore::DocumentLoader::contentFilterHandleProvisionalLoadFailure): * loader/DocumentLoader.h: * loader/FrameLoader.cpp: (WebCore::FrameLoader::dispatchDidFailProvisionalLoad): * loader/PolicyChecker.cpp: (WebCore::FrameLoader::PolicyChecker::checkNavigationPolicy): * loader/SubstituteData.h: (WebCore::SubstituteData::encode const): (WebCore::SubstituteData::decode): * platform/cocoa/ContentFilterUnblockHandlerCocoa.mm: (WebCore::ContentFilterUnblockHandler::canHandleRequest const): Source/WebKit: Move content filtering from the DocumentLoader class in the WebProcess to the NetworkResourceLoader class in the Networking process. The NetworkResourceLoader is now a client of the content filter, and will send messages to the DocumentLoader in the WebProcess to cancel the load when the content filter decided to block the load. If the content filter is providing replacement data, this will also be sent over IPC to the WebProcess. Data is not being sent to the WebProcess until the content filter has decided to allow the load, if content filtering is enabled. * NetworkProcess/NetworkResourceLoader.cpp: (WebKit::NetworkResourceLoader::start): (WebKit::NetworkResourceLoader::startContentFiltering): (WebKit::NetworkResourceLoader::didReceiveResponse): (WebKit::NetworkResourceLoader::didFinishLoading): (WebKit::NetworkResourceLoader::willSendRedirectedRequest): (WebKit::NetworkResourceLoader::bufferingTimerFired): (WebKit::NetworkResourceLoader::sendBuffer): (WebKit::NetworkResourceLoader::didRetrieveCacheEntry): (WebKit::NetworkResourceLoader::sendResultForCacheEntry): (WebKit::NetworkResourceLoader::dataReceivedThroughContentFilter): (WebKit::NetworkResourceLoader::contentFilterDidBlock): (WebKit::NetworkResourceLoader::cancelMainResourceLoadForContentFilter): (WebKit::NetworkResourceLoader::handleProvisionalLoadFailureFromContentFilter): * NetworkProcess/NetworkResourceLoader.h: * UIProcess/Network/NetworkProcessProxy.cpp: (WebKit::NetworkProcessProxy::reloadAfterUnblockedContentFilter): * UIProcess/Network/NetworkProcessProxy.h: * UIProcess/Network/NetworkProcessProxy.messages.in: * WebProcess/Network/WebResourceLoader.cpp: (WebKit::WebResourceLoader::contentFilterDidBlockLoad): (WebKit::WebResourceLoader::cancelMainResourceLoadForContentFilter): (WebKit::WebResourceLoader::handleProvisionalLoadFailureFromContentFilter): (WebKit::WebResourceLoader::reload): * WebProcess/Network/WebResourceLoader.h: * WebProcess/Network/WebResourceLoader.messages.in: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj trunk/Source/WebCore/loader/ContentFilter.cpp trunk/Source/WebCore/loader/ContentFilter.h trunk/Source/WebCore/loader/ContentFilterClient.h trunk/Source/WebCore/loader/DocumentLoader.cpp trunk/Source/WebCore/loader/DocumentLoader.h trunk/Source/WebCore/loader/FrameLoader.cpp trunk/Source/WebCore/loader/PolicyChecker.cpp
[webkit-changes] [290187] trunk/Source/WebKit
Title: [290187] trunk/Source/WebKit Revision 290187 Author pvol...@apple.com Date 2022-02-18 16:52:16 -0800 (Fri, 18 Feb 2022) Log Message [iOS] Add required Mach service to the sandbox of the GPU process https://bugs.webkit.org/show_bug.cgi?id=236860 Reviewed by Darin Adler. * Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb Diff Modified: trunk/Source/WebKit/ChangeLog (290186 => 290187) --- trunk/Source/WebKit/ChangeLog 2022-02-19 00:44:12 UTC (rev 290186) +++ trunk/Source/WebKit/ChangeLog 2022-02-19 00:52:16 UTC (rev 290187) @@ -1,3 +1,12 @@ +2022-02-18 Per Arne Vollan + +[iOS] Add required Mach service to the sandbox of the GPU process +https://bugs.webkit.org/show_bug.cgi?id=236860 + +Reviewed by Darin Adler. + +* Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb: + 2022-02-18 Devin Rousso [iOS] Safari can sometimes hang while printing due to sync IPC Modified: trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb (290186 => 290187) --- trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb 2022-02-19 00:44:12 UTC (rev 290186) +++ trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb 2022-02-19 00:52:16 UTC (rev 290187) @@ -100,6 +100,7 @@ (global-name "com.apple.coremedia.cpe.xpc") ; Needed for HDR playback. (global-name "com.apple.coremedia.customurlloader.xpc") ; Needed for custom media loading (global-name "com.apple.coremedia.formatreader.xpc") + (global-name "com.apple.coremedia.mediaparserd.formatreader.xpc") (global-name "com.apple.coremedia.player.xpc") (global-name "com.apple.coremedia.remaker") (global-name "com.apple.coremedia.remotequeue") ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [290186] trunk/Source
Title: [290186] trunk/Source Revision 290186 Author drou...@apple.com Date 2022-02-18 16:44:12 -0800 (Fri, 18 Feb 2022) Log Message [iOS] Safari can sometimes hang while printing due to sync IPC https://bugs.webkit.org/show_bug.cgi?id=236811 Reviewed by Aditya Keerthi. Source/WebKit: * UIProcess/_WKWebViewPrintFormatter.h: * UIProcess/_WKWebViewPrintFormatterInternal.h: * UIProcess/_WKWebViewPrintFormatter.mm: (-[_WKWebViewPrintFormatter requiresMainThread]): Added. Adopt new UIKit SPI for allowing `UIPrintFormatter` to be called off the main thread. * UIProcess/ios/WKContentView.mm: (-[WKContentView _processDidExit]): (-[WKContentView _wk_printFormatterRequiresMainThread]): Added. (-[WKContentView _wk_pageCountForPrintFormatter:]): (-[WKContentView _waitForDrawToPDFCallbackIfNeeded:]): Added. (-[WKContentView _wk_printedDocument:]): (-[WKContentView _waitForDrawToPDFCallback:]): Deleted. Reorganize this code to support both sync and async flows. * UIProcess/ios/WebPageProxyIOS.mm: (WebKit::WebPageProxy::computePagesForPrintingiOS): Added. (WebKit::WebPageProxy::drawToPDFiOS): Added. (WebKit::WebPageProxy::computePagesForPrintingAndDrawToPDF): Deleted. * WebProcess/WebPage/WebPage.messages.in: * WebProcess/WebPage/WebPage.h: * WebProcess/WebPage/ios/WebPageIOS.mm: Split `WebPageProxy::computePagesForPrintingAndDrawToPDF` into two methods, as the first "part" (i.e. `computePagesForPrintingiOS`) is no longer needed with this new UIKit SPI. * UIProcess/WebPageProxy.h: * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::computePagesForPrinting): * UIProcess/API/C/WKPage.cpp: (WKPageComputePagesForPrinting): * UIProcess/mac/WKPrintingView.mm: (-[WKPrintingView _askPageToComputePageRects]): Have `WebPageProxy::computePagesForPrinting` take a `WebCore::FrameIdentifier` instead of a `WebFrameProxy*` so that more callers (e.g. `API::FrameHandle`) can use it. * UIProcess/ios/WKPDFView.mm: (-[WKPDFView _wk_printFormatterRequiresMainThread]): Added. By the time `WKPDFView` is asked to print, it should already have all the data necessary to do so, so there's no reason to not use the main thread (since there's no sync IPC). Source/WTF: Adopt new UIKit SPI for allowing `UIPrintFormatter` to be called off the main thread. * wtf/PlatformHave.h: Add a `HAVE_UIKIT_BACKGROUND_THREAD_PRINTING` to guard this new behavior. Modified Paths trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/PlatformHave.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/API/C/WKPage.cpp trunk/Source/WebKit/UIProcess/WebPageProxy.cpp trunk/Source/WebKit/UIProcess/WebPageProxy.h trunk/Source/WebKit/UIProcess/_WKWebViewPrintFormatter.mm trunk/Source/WebKit/UIProcess/_WKWebViewPrintFormatterInternal.h trunk/Source/WebKit/UIProcess/ios/WKContentView.mm trunk/Source/WebKit/UIProcess/ios/WKPDFView.mm trunk/Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm trunk/Source/WebKit/UIProcess/mac/WKPrintingView.mm trunk/Source/WebKit/WebProcess/WebPage/WebPage.h trunk/Source/WebKit/WebProcess/WebPage/WebPage.messages.in trunk/Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm Diff Modified: trunk/Source/WTF/ChangeLog (290185 => 290186) --- trunk/Source/WTF/ChangeLog 2022-02-19 00:40:18 UTC (rev 290185) +++ trunk/Source/WTF/ChangeLog 2022-02-19 00:44:12 UTC (rev 290186) @@ -1,3 +1,16 @@ +2022-02-18 Devin Rousso + +[iOS] Safari can sometimes hang while printing due to sync IPC +https://bugs.webkit.org/show_bug.cgi?id=236811 + + +Reviewed by Aditya Keerthi. + +Adopt new UIKit SPI for allowing `UIPrintFormatter` to be called off the main thread. + +* wtf/PlatformHave.h: +Add a `HAVE_UIKIT_BACKGROUND_THREAD_PRINTING` to guard this new behavior. + 2022-02-18 Robert Jenner Unreviewed, reverting r290149. Modified: trunk/Source/WTF/wtf/PlatformHave.h (290185 => 290186) --- trunk/Source/WTF/wtf/PlatformHave.h 2022-02-19 00:40:18 UTC (rev 290185) +++ trunk/Source/WTF/wtf/PlatformHave.h 2022-02-19 00:44:12 UTC (rev 290186) @@ -1218,3 +1218,7 @@ #if (PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 13) || (PLATFORM(IOS) && __IPHONE_OS_VERSION_MIN_REQUIRED >= 16) || (PLATFORM(WATCHOS) && __WATCH_OS_VERSION_MIN_REQUIRED >= 9) #define HAVE_SAFE_BROWSING_RESULT_DETAILS 1 #endif + +#if (PLATFORM(IOS) && __IPHONE_OS_VERSION_MIN_REQUIRED >= 16) +#define HAVE_UIKIT_BACKGROUND_THREAD_PRINTING 1 +#endif Modified: trunk/Source/WebKit/ChangeLog (290185 => 290186) --- trunk/Source/WebKit/ChangeLog 2022-02-19 00:40:18 UTC (rev 290185) +++ trunk/Source/WebKit/ChangeLog 2022-02-19 00:44:12 UTC (rev 290186) @@ -1,3 +1,51 @@ +2022-02-18 Devin Rousso + +[iOS] Safari can sometimes hang while printing due to sync IPC +https://bugs.webkit.org/show_bug.cgi?id=236811 + + +Reviewed by Aditya Keerthi. + +* UIProcess/_WKWebViewPrintFormatter.h: +* UIProcess/_WKWebViewPrintFormatterInternal.h: +*
[webkit-changes] [290185] trunk/Tools
Title: [290185] trunk/Tools Revision 290185 Author ange...@igalia.com Date 2022-02-18 16:40:18 -0800 (Fri, 18 Feb 2022) Log Message [JSC] Fix test sharding when using --make-runner and --remote https://bugs.webkit.org/show_bug.cgi?id=236560 Reviewed by Adrian Perez de Castro. After https://commits.webkit.org/244496@main, test sharding was broken for the make runner. Specifically, all remotes would get assigned all tests (instead of a subset). Fix this by propagating and using the correct value for remoteHosts. * Scripts/webkitruby/jsc-stress-test-writer-default.rb: Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/webkitruby/jsc-stress-test-writer-default.rb Diff Modified: trunk/Tools/ChangeLog (290184 => 290185) --- trunk/Tools/ChangeLog 2022-02-19 00:28:13 UTC (rev 290184) +++ trunk/Tools/ChangeLog 2022-02-19 00:40:18 UTC (rev 290185) @@ -1,3 +1,18 @@ +2022-02-18 Angelos Oikonomopoulos + +[JSC] Fix test sharding when using --make-runner and --remote +https://bugs.webkit.org/show_bug.cgi?id=236560 + +Reviewed by Adrian Perez de Castro. + +After https://commits.webkit.org/244496@main, test sharding was broken +for the make runner. Specifically, all remotes would get assigned all +tests (instead of a subset). + +Fix this by propagating and using the correct value for remoteHosts. + +* Scripts/webkitruby/jsc-stress-test-writer-default.rb: + 2022-02-18 Robert Jenner Unreviewed, reverting r290149. Modified: trunk/Tools/Scripts/webkitruby/jsc-stress-test-writer-default.rb (290184 => 290185) --- trunk/Tools/Scripts/webkitruby/jsc-stress-test-writer-default.rb 2022-02-19 00:28:13 UTC (rev 290184) +++ trunk/Tools/Scripts/webkitruby/jsc-stress-test-writer-default.rb 2022-02-19 00:40:18 UTC (rev 290185) @@ -356,7 +356,7 @@ outp.puts "\tsh test_script_#{index}" target end -def prepareRunnerForRemote(runlist, serialPlans, completedPlans, remoteIndex) +def prepareRunnerForRemote(runlist, serialPlans, completedPlans, remoteHosts, remoteIndex) # The goals of our parallel test runner are scalability and simplicity. The # simplicity part is particularly important. We don't want to have to have # a full-time contributor just philosophising about parallel testing. @@ -400,7 +400,7 @@ if completedPlans.include?(plan) next end -if @remoteHosts.nil? or plan.index % @remoteHosts.length == remoteIndex +if remoteHosts.nil? or plan.index % remoteHosts.length == remoteIndex if serialPlans.include?(plan) serialRunPlans << plan else @@ -431,11 +431,11 @@ end def prepareRunner(runlist, serialPlans, completedPlans, remoteHosts) if remoteHosts.nil? -prepareRunnerForRemote(runlist, serialPlans, completedPlans, 0) +prepareRunnerForRemote(runlist, serialPlans, completedPlans, remoteHosts, 0) else remoteHosts.each_index { |remoteIndex| -prepareRunnerForRemote(runlist, serialPlans, completedPlans, remoteIndex) +prepareRunnerForRemote(runlist, serialPlans, completedPlans, remoteHosts, remoteIndex) } end end ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [290184] trunk/Source
Title: [290184] trunk/Source Revision 290184 Author j_pas...@apple.com Date 2022-02-18 16:28:13 -0800 (Fri, 18 Feb 2022) Log Message [WebAuthn] Support for conditional mediation https://bugs.webkit.org/show_bug.cgi?id=236820 rdar://84821947 Reviewed by Brent Fulgham and Chris Dumez. This patch adds support for conditional mediation, as defined in the credentials management spec: https://w3c.github.io/webappsec-credential-management/#dom-credentialmediationrequirement-conditional Source/WebCore: * Modules/credentialmanagement/BasicCredential.cpp: (WebCore::BasicCredential::isConditionalMediationAvailable): * Modules/credentialmanagement/BasicCredential.h: * Modules/credentialmanagement/BasicCredential.idl: * Modules/credentialmanagement/CredentialRequestOptions.h: * Modules/credentialmanagement/CredentialRequestOptions.idl: * Modules/credentialmanagement/CredentialsContainer.cpp: (WebCore::CredentialsContainer::get): * Modules/webauthn/AuthenticatorCoordinator.cpp: (WebCore::AuthenticatorCoordinator::discoverFromExternalSource const): (WebCore::AuthenticatorCoordinator::isConditionalMediationAvailable const): * Modules/webauthn/AuthenticatorCoordinator.h: * Modules/webauthn/AuthenticatorCoordinatorClient.h: * WebCore.xcodeproj/project.pbxproj: Source/WebKit: * Platform/spi/Cocoa/AuthenticationServicesCoreSPI.h: * UIProcess/WebAuthentication/Cocoa/WebAuthenticatorCoordinatorProxy.mm: (WebKit::configurationAssertionRequestContext): (WebKit::WebAuthenticatorCoordinatorProxy::contextForRequest): (WebKit::WebAuthenticatorCoordinatorProxy::performRequest): (WebKit::WebAuthenticatorCoordinatorProxy::isConditionalMediationAvailable): * UIProcess/WebAuthentication/WebAuthenticationRequestData.h: * UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.cpp: (WebKit::WebAuthenticatorCoordinatorProxy::makeCredential): (WebKit::WebAuthenticatorCoordinatorProxy::getAssertion): (WebKit::WebAuthenticatorCoordinatorProxy::isConditionalMediationAvailable): * UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.h: * UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.messages.in: * WebProcess/WebAuthentication/WebAuthenticatorCoordinator.cpp: (WebKit::WebAuthenticatorCoordinator::getAssertion): * WebProcess/WebAuthentication/WebAuthenticatorCoordinator.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/credentialmanagement/BasicCredential.cpp trunk/Source/WebCore/Modules/credentialmanagement/BasicCredential.h trunk/Source/WebCore/Modules/credentialmanagement/BasicCredential.idl trunk/Source/WebCore/Modules/credentialmanagement/CredentialRequestOptions.h trunk/Source/WebCore/Modules/credentialmanagement/CredentialRequestOptions.idl trunk/Source/WebCore/Modules/credentialmanagement/CredentialsContainer.cpp trunk/Source/WebCore/Modules/webauthn/AuthenticatorCoordinator.cpp trunk/Source/WebCore/Modules/webauthn/AuthenticatorCoordinator.h trunk/Source/WebCore/Modules/webauthn/AuthenticatorCoordinatorClient.h trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Platform/spi/Cocoa/AuthenticationServicesCoreSPI.h trunk/Source/WebKit/UIProcess/API/Cocoa/_WKWebAuthenticationPanel.mm trunk/Source/WebKit/UIProcess/WebAuthentication/Cocoa/WebAuthenticatorCoordinatorProxy.mm trunk/Source/WebKit/UIProcess/WebAuthentication/WebAuthenticationRequestData.h trunk/Source/WebKit/UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.cpp trunk/Source/WebKit/UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.h trunk/Source/WebKit/UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.messages.in trunk/Source/WebKit/WebAuthnProcess/WebAuthnConnectionToWebProcess.cpp trunk/Source/WebKit/WebProcess/WebAuthentication/WebAuthenticatorCoordinator.cpp trunk/Source/WebKit/WebProcess/WebAuthentication/WebAuthenticatorCoordinator.h Diff Modified: trunk/Source/WebCore/ChangeLog (290183 => 290184) --- trunk/Source/WebCore/ChangeLog 2022-02-19 00:27:04 UTC (rev 290183) +++ trunk/Source/WebCore/ChangeLog 2022-02-19 00:28:13 UTC (rev 290184) @@ -1,3 +1,29 @@ +2022-02-18 J Pascoe + +[WebAuthn] Support for conditional mediation +https://bugs.webkit.org/show_bug.cgi?id=236820 +rdar://84821947 + +Reviewed by Brent Fulgham and Chris Dumez. + +This patch adds support for conditional mediation, as defined in the +credentials management spec: https://w3c.github.io/webappsec-credential-management/#dom-credentialmediationrequirement-conditional + +* Modules/credentialmanagement/BasicCredential.cpp: +(WebCore::BasicCredential::isConditionalMediationAvailable): +* Modules/credentialmanagement/BasicCredential.h: +* Modules/credentialmanagement/BasicCredential.idl: +* Modules/credentialmanagement/CredentialRequestOptions.h: +* Modules/credentialmanagement/CredentialRequestOptions.idl: +*
[webkit-changes] [290183] trunk/Source/WebKit
Title: [290183] trunk/Source/WebKit Revision 290183 Author pvol...@apple.com Date 2022-02-18 16:27:04 -0800 (Fri, 18 Feb 2022) Log Message Remove unneeded sandbox extension code https://bugs.webkit.org/show_bug.cgi?id=228777 Reviewed by Brent Fulgham. Since the GPU process is now enabled by default, some related sandbox extension code can be removed. * Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in: * Shared/WebPageCreationParameters.cpp: (WebKit::WebPageCreationParameters::encode const): (WebKit::WebPageCreationParameters::decode): * Shared/WebPageCreationParameters.h: * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::creationParameters): (WebKit::mediaRelatedMachServices): Deleted. (WebKit::mediaRelatedIOKitClasses): Deleted. * WebProcess/WebPage/WebPage.cpp: (WebKit::m_appHighlightsVisible): * WebProcess/com.apple.WebProcess.sb.in: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in trunk/Source/WebKit/Shared/WebPageCreationParameters.cpp trunk/Source/WebKit/Shared/WebPageCreationParameters.h trunk/Source/WebKit/UIProcess/WebPageProxy.cpp trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in Diff Modified: trunk/Source/WebKit/ChangeLog (290182 => 290183) --- trunk/Source/WebKit/ChangeLog 2022-02-19 00:22:29 UTC (rev 290182) +++ trunk/Source/WebKit/ChangeLog 2022-02-19 00:27:04 UTC (rev 290183) @@ -1,5 +1,28 @@ 2022-02-18 Per Arne Vollan +Remove unneeded sandbox extension code +https://bugs.webkit.org/show_bug.cgi?id=228777 + + +Reviewed by Brent Fulgham. + +Since the GPU process is now enabled by default, some related sandbox extension code can be removed. + +* Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in: +* Shared/WebPageCreationParameters.cpp: +(WebKit::WebPageCreationParameters::encode const): +(WebKit::WebPageCreationParameters::decode): +* Shared/WebPageCreationParameters.h: +* UIProcess/WebPageProxy.cpp: +(WebKit::WebPageProxy::creationParameters): +(WebKit::mediaRelatedMachServices): Deleted. +(WebKit::mediaRelatedIOKitClasses): Deleted. +* WebProcess/WebPage/WebPage.cpp: +(WebKit::m_appHighlightsVisible): +* WebProcess/com.apple.WebProcess.sb.in: + +2022-02-18 Per Arne Vollan + [iOS] Add access to required Mach service in the Network process https://bugs.webkit.org/show_bug.cgi?id=236853 Modified: trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in (290182 => 290183) --- trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in 2022-02-19 00:22:29 UTC (rev 290182) +++ trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in 2022-02-19 00:27:04 UTC (rev 290183) @@ -1091,20 +1091,6 @@ "com.apple.tccd" "com.apple.uikit.viewservice.com.apple.WebContentFilter.remoteUI" "com.apple.webinspector" - -;;; FIXME(207716): The following should be removed when the GPU process is complete -"com.apple.airplay.apsynccontroller.xpc" "com.apple.audio.AURemoteIOServer" "com.apple.audio.AudioComponentPrefs" "com.apple.audio.AudioComponentRegistrar" -"com.apple.audio.AudioQueueServer" "com.apple.audio.AudioSession" "com.apple.coremedia.admin" "com.apple.coremedia.asset.xpc" -"com.apple.coremedia.assetimagegenerator.xpc" "com.apple.coremedia.audiodeviceclock.xpc" "com.apple.coremedia.audioprocessingtap.xpc" -"com.apple.coremedia.capturesession" "com.apple.coremedia.capturesource" "com.apple.coremedia.compressionsession" "com.apple.coremedia.cpe.xpc" -"com.apple.coremedia.cpeprotector.xpc" "com.apple.coremedia.customurlloader.xpc" "com.apple.coremedia.decompressionsession" -"com.apple.coremedia.endpoint.xpc" "com.apple.coremedia.figcontentkeysession.xpc" "com.apple.coremedia.figcpecryptor" -"com.apple.coremedia.formatreader.xpc" "com.apple.coremedia.player.xpc" "com.apple.coremedia.remaker" "com.apple.coremedia.remotequeue" -"com.apple.coremedia.routediscoverer.xpc" "com.apple.coremedia.routingcontext.xpc" "com.apple.coremedia.routingsessionmanager.xpc" -"com.apple.coremedia.samplebufferaudiorenderer.xpc" "com.apple.coremedia.samplebufferrendersynchronizer.xpc" "com.apple.coremedia.sandboxserver.xpc" -"com.apple.coremedia.sts" "com.apple.coremedia.systemcontroller.xpc" "com.apple.coremedia.videoqueue" "com.apple.coremedia.volumecontroller.xpc" -"com.apple.coremedia.visualcontext.xpc" "com.apple.mediaremoted.xpc" "com.apple.accessibility.mediaaccessibilityd" -;;; FIXME(207716): End services to remove. ))) ;; Silence warnings about these connections if we have decided not to
[webkit-changes] [290182] tags/Safari-613.1.17.0.6/
Title: [290182] tags/Safari-613.1.17.0.6/ Revision 290182 Author alanc...@apple.com Date 2022-02-18 16:22:29 -0800 (Fri, 18 Feb 2022) Log Message Tag Safari-613.1.17.0.6. Added Paths tags/Safari-613.1.17.0.6/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [290181] tags/Safari-613.1.17.0.6/
Title: [290181] tags/Safari-613.1.17.0.6/ Revision 290181 Author alanc...@apple.com Date 2022-02-18 16:22:22 -0800 (Fri, 18 Feb 2022) Log Message Delete tag. Removed Paths tags/Safari-613.1.17.0.6/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [290180] trunk/Source/WebKit
Title: [290180] trunk/Source/WebKit Revision 290180 Author pvol...@apple.com Date 2022-02-18 16:18:58 -0800 (Fri, 18 Feb 2022) Log Message [iOS] Add access to required Mach service in the Network process https://bugs.webkit.org/show_bug.cgi?id=236853 Reviewed by Darin Adler. * Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb Diff Modified: trunk/Source/WebKit/ChangeLog (290179 => 290180) --- trunk/Source/WebKit/ChangeLog 2022-02-19 00:03:05 UTC (rev 290179) +++ trunk/Source/WebKit/ChangeLog 2022-02-19 00:18:58 UTC (rev 290180) @@ -1,3 +1,13 @@ +2022-02-18 Per Arne Vollan + +[iOS] Add access to required Mach service in the Network process +https://bugs.webkit.org/show_bug.cgi?id=236853 + + +Reviewed by Darin Adler. + +* Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb: + 2022-02-18 Robert Jenner Unreviewed, reverting r290149. Modified: trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb (290179 => 290180) --- trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb 2022-02-19 00:03:05 UTC (rev 290179) +++ trunk/Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb 2022-02-19 00:18:58 UTC (rev 290180) @@ -215,6 +215,10 @@ (allow mach-lookup (global-name "com.apple.nehelper")) +;; +(allow mach-lookup +(global-name "com.apple.networkserviceproxy.fetch-token")) + (allow-well-known-system-group-container-literal-read "/systemgroup.com.apple.nsurlstoragedresources/Library/dafsaData.bin") ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [290179] trunk
Title: [290179] trunk Revision 290179 Author jen...@apple.com Date 2022-02-18 16:03:05 -0800 (Fri, 18 Feb 2022) Log Message Unreviewed, reverting r290149. Broke Debug Builds. Reverted changeset: "Generate compile_commands.json on macOS Builds" https://bugs.webkit.org/show_bug.cgi?id=235686 https://commits.webkit.org/r290149 Modified Paths trunk/ChangeLog trunk/Makefile.shared trunk/PerformanceTests/ChangeLog trunk/PerformanceTests/DecoderTest/Configurations/DebugRelease.xcconfig trunk/PerformanceTests/MediaTime/Configurations/DebugRelease.xcconfig trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/Configurations/DebugRelease.xcconfig trunk/Source/ThirdParty/ANGLE/ChangeLog trunk/Source/ThirdParty/ANGLE/Configurations/DebugRelease.xcconfig trunk/Source/ThirdParty/libwebrtc/ChangeLog trunk/Source/ThirdParty/libwebrtc/Configurations/DebugRelease.xcconfig trunk/Source/WTF/ChangeLog trunk/Source/WTF/Configurations/DebugRelease.xcconfig trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Configurations/DebugRelease.xcconfig trunk/Source/WebCore/PAL/ChangeLog trunk/Source/WebCore/PAL/Configurations/DebugRelease.xcconfig trunk/Source/WebGPU/ChangeLog trunk/Source/WebGPU/Configurations/DebugRelease.xcconfig trunk/Source/WebInspectorUI/ChangeLog trunk/Source/WebInspectorUI/Configurations/DebugRelease.xcconfig trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Configurations/DebugRelease.xcconfig trunk/Source/WebKit/UIProcess/API/C/WKPageUIClient.h trunk/Source/WebKitLegacy/mac/ChangeLog trunk/Source/WebKitLegacy/mac/Configurations/DebugRelease.xcconfig trunk/Source/bmalloc/ChangeLog trunk/Source/bmalloc/Configurations/DebugRelease.xcconfig trunk/Tools/ChangeLog trunk/Tools/ContentExtensionTester/Configurations/DebugRelease.xcconfig trunk/Tools/DumpRenderTree/mac/Configurations/DebugRelease.xcconfig trunk/Tools/ImageDiff/cg/Configurations/DebugRelease.xcconfig trunk/Tools/MiniBrowser/Configurations/DebugRelease.xcconfig trunk/Tools/Scripts/build-jsc trunk/Tools/Scripts/build-webkit trunk/Tools/TestWebKitAPI/Configurations/DebugRelease.xcconfig trunk/Tools/WebEditingTester/Configurations/DebugRelease.xcconfig trunk/Tools/WebKitTestRunner/Configurations/DebugRelease.xcconfig trunk/Tools/lldb/lldbWebKitTester/Configurations/DebugRelease.xcconfig Removed Paths trunk/Tools/Scripts/generate-compile-commands Diff Modified: trunk/ChangeLog (290178 => 290179) --- trunk/ChangeLog 2022-02-18 23:50:27 UTC (rev 290178) +++ trunk/ChangeLog 2022-02-19 00:03:05 UTC (rev 290179) @@ -1,3 +1,15 @@ +2022-02-18 Robert Jenner + +Unreviewed, reverting r290149. + +Broke Debug Builds. + +Reverted changeset: + +"Generate compile_commands.json on macOS Builds" +https://bugs.webkit.org/show_bug.cgi?id=235686 +https://commits.webkit.org/r290149 + 2022-02-18 Ryosuke Niwa Replace trac URLs in Introduction.md by equivalent GitHub URLs Modified: trunk/Makefile.shared (290178 => 290179) --- trunk/Makefile.shared 2022-02-18 23:50:27 UTC (rev 290178) +++ trunk/Makefile.shared 2022-02-19 00:03:05 UTC (rev 290179) @@ -47,13 +47,6 @@ endif endif -ifneq (,$(EXPORT_COMPILE_COMMANDS)) - XCODE_OPTIONS += EXPORT_COMPILE_COMMANDS=YES - XCODE_OPTIONS += GCC_PRECOMPILE_PREFIX_HEADER=NO - XCODE_OPTIONS += CLANG_ENABLE_MODULE_DEBUGGING=NO - XCODE_OPTIONS += COMPILER_INDEX_STORE_ENABLE=NO -endif - DEFAULT_VERBOSITY := $(shell defaults read org.webkit.BuildConfiguration BuildTranscriptVerbosity 2>/dev/null || echo "default") VERBOSITY ?= $(DEFAULT_VERBOSITY) Modified: trunk/PerformanceTests/ChangeLog (290178 => 290179) --- trunk/PerformanceTests/ChangeLog 2022-02-18 23:50:27 UTC (rev 290178) +++ trunk/PerformanceTests/ChangeLog 2022-02-19 00:03:05 UTC (rev 290179) @@ -1,3 +1,15 @@ +2022-02-18 Robert Jenner + +Unreviewed, reverting r290149. + +Broke Debug Builds. + +Reverted changeset: + +"Generate compile_commands.json on macOS Builds" +https://bugs.webkit.org/show_bug.cgi?id=235686 +https://commits.webkit.org/r290149 + 2022-02-18 Brandon Stewart Generate compile_commands.json on macOS Builds Modified: trunk/PerformanceTests/DecoderTest/Configurations/DebugRelease.xcconfig (290178 => 290179) --- trunk/PerformanceTests/DecoderTest/Configurations/DebugRelease.xcconfig 2022-02-18 23:50:27 UTC (rev 290178) +++ trunk/PerformanceTests/DecoderTest/Configurations/DebugRelease.xcconfig 2022-02-19 00:03:05 UTC (rev 290179) @@ -35,9 +35,6 @@ SDKROOT_ = macosx; SDKROOT_YES = macosx.internal; -OTHER_CFLAGS = $(inherited) $(COMPILE_COMMANDS_$(EXPORT_COMPILE_COMMANDS)); -COMPILE_COMMANDS_YES = '-gen-cdb-fragment-path' '$(BUILT_PRODUCTS_DIR)/compile_commands'; - WK_DEFAULT_LTO_MODE = $(WK_USER_LTO_MODE_none); WK_CCACHE_DIR = $(SRCROOT)/../../Tools/ccache; Modified: trunk/PerformanceTests/MediaTime/Configurations/DebugRelease.xcconfig (290178 => 290179) ---
[webkit-changes] [290178] trunk
Title: [290178] trunk Revision 290178 Author wenson_hs...@apple.com Date 2022-02-18 15:50:27 -0800 (Fri, 18 Feb 2022) Log Message [Live Text] Add a mechanism to inject images into image overlays https://bugs.webkit.org/show_bug.cgi?id=236842 Reviewed by Aditya Keerthi. Source/WebCore: To support additional behaviors around the "Copy Cropped Image" context menu item on macOS, add a new image overlay helper method to install a temporary image element within the image overlay shadow root of a host image. See below for more details. Test: fast/images/text-recognition/image-overlay-cropped-image.html * dom/ImageOverlay.cpp: (WebCore::ImageOverlay::imageOverlayCroppedImageIdentifier): (WebCore::ImageOverlay::imageOverlayCroppedImageBackdropIdentifier): (WebCore::ImageOverlay::isOverlayText): (WebCore::ImageOverlay::removeOverlaySoonIfNeeded): (WebCore::ImageOverlay::installImageOverlayStyleSheet): Pull out logic for installing the UA style sheet for image overlays into a helper method, so that we can ensure the stylesheet in both cases where the `CroppedImage` is installed first, or Live Text is injected first. (WebCore::ImageOverlay::updateSubtree): Refactor this method to not completely remove the image overlay root container in the case where the Live Text subtree needs to be regenerated; this prevents us from inadvertently removing the cropped image overlay elements when updating Live Text elements in the UA shadow root. (WebCore::ImageOverlay::CroppedImage::install): Add a method to install a cropped image overlay into the given host element. This creates a new blob URL using the given image data and MIME type, and uses it to insert an image element within the image overlay root container that's absolutely positioned over the given crop rect (normalized relative to the image). This inserted image is presented over another dimming element that fades in and out as `setVisibility()` is called. Finally, `install` returns a `unique_ptr` to a RAII object that can be used to fade the cropped image backdrop in or out; when destroyed, this RAII object immediately disconnects both the backdrop and the image element, and revokes the temporary blob URL created during `install()`. (WebCore::ImageOverlay::CroppedImage::CroppedImage): (WebCore::ImageOverlay::CroppedImage::~CroppedImage): (WebCore::ImageOverlay::CroppedImage::setVisibility): * dom/ImageOverlay.h: * dom/ShadowRoot.h: Add a `using TreeScope::getElementById;` here to make it possible to call `getElementById` on `ShadowRoot` without having to cast to a `TreeScope`. * html/shadow/imageOverlay.css: (img#image-overlay-cropped-image): (div#image-overlay-cropped-image-backdrop): * testing/Internals.cpp: (WebCore::Internals::pngDataForTesting): (WebCore::Internals::installCroppedImageOverlay): (WebCore::Internals::uninstallCroppedImageOverlay): Add internal testing support for the cropped image overlay by allowing layout tests to inject an image overlay with hard-coded PNG data into the given element. * testing/Internals.h: * testing/Internals.idl: * testing/Internals.mm: (WebCore::Internals::pngDataForTesting): LayoutTests: Add a layout test that exercises the new cropped image overlay code. * fast/images/text-recognition/image-overlay-cropped-image-expected.txt: Added. * fast/images/text-recognition/image-overlay-cropped-image.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/ImageOverlay.cpp trunk/Source/WebCore/dom/ImageOverlay.h trunk/Source/WebCore/dom/ShadowRoot.h trunk/Source/WebCore/html/shadow/imageOverlay.css trunk/Source/WebCore/testing/Internals.cpp trunk/Source/WebCore/testing/Internals.h trunk/Source/WebCore/testing/Internals.idl trunk/Source/WebCore/testing/Internals.mm Added Paths trunk/LayoutTests/fast/images/text-recognition/image-overlay-cropped-image-expected.txt trunk/LayoutTests/fast/images/text-recognition/image-overlay-cropped-image.html Diff Modified: trunk/LayoutTests/ChangeLog (290177 => 290178) --- trunk/LayoutTests/ChangeLog 2022-02-18 23:42:31 UTC (rev 290177) +++ trunk/LayoutTests/ChangeLog 2022-02-18 23:50:27 UTC (rev 290178) @@ -1,3 +1,15 @@ +2022-02-18 Wenson Hsieh + +[Live Text] Add a mechanism to inject images into image overlays +https://bugs.webkit.org/show_bug.cgi?id=236842 + +Reviewed by Aditya Keerthi. + +Add a layout test that exercises the new cropped image overlay code. + +* fast/images/text-recognition/image-overlay-cropped-image-expected.txt: Added. +* fast/images/text-recognition/image-overlay-cropped-image.html: Added. + 2022-02-18 Kimmo Kinnunen WebGL GPUP: Crash when running fast/mediastream/getUserMedia-to-canvas-1.html Added: trunk/LayoutTests/fast/images/text-recognition/image-overlay-cropped-image-expected.txt (0 => 290178) --- trunk/LayoutTests/fast/images/text-recognition/image-overlay-cropped-image-expected.txt (rev
[webkit-changes] [290177] trunk/LayoutTests
Title: [290177] trunk/LayoutTests Revision 290177 Author ryanhad...@apple.com Date 2022-02-18 15:42:31 -0800 (Fri, 18 Feb 2022) Log Message REGRESSION (10/5/2021?): [iOS] http/wpt/cross-origin-opener-policy/single-request-to-server.html is a flaky failure https://bugs.webkit.org/show_bug.cgi?id=233284 Unreviewed test gardening. * platform/ios/TestExpectations: Mark test as flaky. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/ios/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (290176 => 290177) --- trunk/LayoutTests/ChangeLog 2022-02-18 22:58:10 UTC (rev 290176) +++ trunk/LayoutTests/ChangeLog 2022-02-18 23:42:31 UTC (rev 290177) @@ -9,6 +9,15 @@ * platform/ios-wk2/TestExpectations: +2022-02-18 Ryan Haddad + +REGRESSION (10/5/2021?): [iOS] http/wpt/cross-origin-opener-policy/single-request-to-server.html is a flaky failure +https://bugs.webkit.org/show_bug.cgi?id=233284 + +Unreviewed test gardening. + +* platform/ios/TestExpectations: Mark test as flaky. + 2022-02-18 Jon Lee REGRESSION (r289990): [iOS] fast/backgrounds/gradient-background-shadow.html is consistently failing Modified: trunk/LayoutTests/platform/ios/TestExpectations (290176 => 290177) --- trunk/LayoutTests/platform/ios/TestExpectations 2022-02-18 22:58:10 UTC (rev 290176) +++ trunk/LayoutTests/platform/ios/TestExpectations 2022-02-18 23:42:31 UTC (rev 290177) @@ -3467,6 +3467,8 @@ imported/w3c/web-platform-tests/html/rendering/non-replaced-elements/form-controls/select-sizing-001.html [ Pass ] imported/w3c/web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe-modify-scrolling-attr-to-yes.html [ Pass ] +webkit.org/b/233284 http/wpt/cross-origin-opener-policy/single-request-to-server.html [ Pass Failure ] + [ Release ] editing/spelling/toggle-spellchecking.html [ Failure Pass ] pointerevents/mouse/pointer-event-basic-properties.html [ Timeout ] -imported/w3c/web-platform-tests/workers/semantics/multiple-workers/004.html [ Failure Pass ] \ No newline at end of file +imported/w3c/web-platform-tests/workers/semantics/multiple-workers/004.html [ Failure Pass ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [290176] tags/Safari-614.1.4/
Title: [290176] tags/Safari-614.1.4/ Revision 290176 Author kocsen_ch...@apple.com Date 2022-02-18 14:58:10 -0800 (Fri, 18 Feb 2022) Log Message Tag Safari-614.1.4. Added Paths tags/Safari-614.1.4/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [290175] trunk
Title: [290175] trunk Revision 290175 Author commit-qu...@webkit.org Date 2022-02-18 14:48:08 -0800 (Fri, 18 Feb 2022) Log Message WebGL GPUP: Crash when running fast/mediastream/getUserMedia-to-canvas-1.html https://bugs.webkit.org/show_bug.cgi?id=236502 Source/WebCore: Patch by Kimmo Kinnunen on 2022-02-18 Reviewed by Eric Carlson. Add a polymorphic function asVideoFrameCV to convert VideoFrame to VideoFrameCV. VideoFrameCV is used to draw the in-process video frame to in-process WebGL. RemoteVideoFrameProxy will implement asVideoFrameCV by fetching the data from GPUP and returning a new object exposing the data. No new tests, tested by now unskipped tests. * platform/VideoFrame.h: * platform/graphics/cocoa/GraphicsContextGLCocoa.mm: (WebCore::GraphicsContextGLCocoa::copyTextureFromMedia): * platform/graphics/cv/VideoFrameCV.h: * platform/graphics/cv/VideoFrameCV.mm: (WebCore::VideoFrameCV::asVideoFrameCV): Source/WebKit: The crash is about MediaPlayerPrivateMediaStreamAVFObjC being in WP while other media player private variants are proxied to GPUP. The previous implementation would send media player identifiers to GPUP for copying. This patch will implement the copy by the media player creating a reference to VideoFrame. WebGL would send reference of the VideoFrame to GPUP for copying. Make WP MediaPlayerPrivateRemote always return RemoteVideoFrameProxy objects instead of WP in-process VideoFrame instances (for Cocoa VideoFrameCV) that would hold the video data in process. WP MediaPlayerPrivateMediaStreamAVFObjC already returns RemoteVideoFrameProxy objects. This way GPUP WebGL implementation can obtain the read reference to the remote object and send it in copyTextureFromVideoFrame message. The WP in-process WebGL implementation converts the RemoteVideoFrameProxy to VideoFrameCV with the new RemoteVideoFrameProxy::asVideoFrameCV. Patch by Kimmo Kinnunen on 2022-02-18 Reviewed by Eric Carlson. * GPUProcess/graphics/RemoteGraphicsContextGL.cpp: (WebKit::RemoteGraphicsContextGL::RemoteGraphicsContextGL): (WebKit::RemoteGraphicsContextGL::copyTextureFromVideoFrame): * GPUProcess/graphics/RemoteGraphicsContextGL.h: * GPUProcess/graphics/RemoteGraphicsContextGL.messages.in: * GPUProcess/graphics/RemoteGraphicsContextGLCocoa.cpp: (WebKit::RemoteGraphicsContextGL::copyTextureFromVideoFrame): (WebKit::RemoteGraphicsContextGL::create): (WebKit::RemoteGraphicsContextGLCocoa::RemoteGraphicsContextGLCocoa): (WebKit::RemoteGraphicsContextGLCocoa::platformWorkQueueInitialize): (WebKit::RemoteGraphicsContextGLCocoa::prepareForDisplay): * GPUProcess/media/RemoteMediaPlayerManagerProxy.cpp: (WebKit::RemoteMediaPlayerManagerProxy::createMediaPlayer): * GPUProcess/media/RemoteMediaPlayerProxy.cpp: (WebKit::RemoteMediaPlayerProxy::RemoteMediaPlayerProxy): (WebKit::RemoteMediaPlayerProxy::videoFrameForCurrentTimeIfChanged): * GPUProcess/media/RemoteMediaPlayerProxy.h: * GPUProcess/media/RemoteMediaPlayerProxy.messages.in: * WebProcess/GPU/graphics/RemoteGraphicsContextGLProxy.cpp: (WebKit::RemoteGraphicsContextGLProxy::copyTextureFromMedia): * WebProcess/GPU/graphics/RemoteGraphicsContextGLProxy.h: * WebProcess/GPU/media/MediaPlayerPrivateRemote.cpp: (WebKit::MediaPlayerPrivateRemote::videoFrameForCurrentTime): * WebProcess/GPU/media/MediaPlayerPrivateRemote.h: * WebProcess/GPU/media/RemoteVideoFrameProxy.cpp: (WebKit::RemoteVideoFrameProxy::asVideoFrameCV): * WebProcess/GPU/media/RemoteVideoFrameProxy.h: LayoutTests: Unskip the previous crashes caused by the lack of implementation. Patch by Kimmo Kinnunen on 2022-02-18 Reviewed by Eric Carlson. * platform/ios-wk2/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/ios-wk2/TestExpectations trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/VideoFrame.h trunk/Source/WebCore/platform/cocoa/SharedVideoFrameInfo.h trunk/Source/WebCore/platform/cocoa/SharedVideoFrameInfo.mm trunk/Source/WebCore/platform/graphics/cocoa/GraphicsContextGLCocoa.mm trunk/Source/WebCore/platform/graphics/cv/CVUtilities.h trunk/Source/WebCore/platform/graphics/cv/CVUtilities.mm trunk/Source/WebCore/platform/graphics/cv/VideoFrameCV.h trunk/Source/WebCore/platform/graphics/cv/VideoFrameCV.mm trunk/Source/WebCore/platform/mediarecorder/MediaRecorderPrivateAVFImpl.cpp trunk/Source/WebCore/platform/mediastream/mac/RealtimeIncomingVideoSourceCocoa.h trunk/Source/WebCore/platform/mediastream/mac/RealtimeIncomingVideoSourceCocoa.mm trunk/Source/WebCore/platform/mediastream/mac/RealtimeOutgoingVideoSourceCocoa.cpp trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/GPUProcess/GPUConnectionToWebProcess.cpp trunk/Source/WebKit/GPUProcess/GPUConnectionToWebProcess.h trunk/Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGL.cpp trunk/Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGL.h trunk/Source/WebKit/GPUProcess/graphics/RemoteGraphicsContextGL.messages.in
[webkit-changes] [290174] trunk/Source
Title: [290174] trunk/Source Revision 290174 Author eric.carl...@apple.com Date 2022-02-18 14:43:33 -0800 (Fri, 18 Feb 2022) Log Message [macOS] Allow screen and window capture to be done in the GPU Process https://bugs.webkit.org/show_bug.cgi?id=236815 Reviewed by Jer Noble. Source/WebCore: Tested manually. * platform/mediastream/mac/ScreenCaptureKitCaptureSource.h: * platform/mediastream/mac/ScreenCaptureKitCaptureSource.mm: (WebCore::ScreenCaptureKitCaptureSource::sessionDidChangeContent): Call CaptureDevice constructor directly since we have everything it needs. (WebCore::findSharableDevice): Extract logic from processSharableContent into a static function so it can be reused. (WebCore::ScreenCaptureKitCaptureSource::findShareableContent): Use findSharableDevice. (WebCore::ScreenCaptureKitCaptureSource::streamConfiguration): Add logging. (WebCore::ScreenCaptureKitCaptureSource::startContentStream): Ditto. (WebCore::ScreenCaptureKitCaptureSource::captureDeviceWithPersistentID): (WebCore::ScreenCaptureKitCaptureSource::processSharableContent): Deleted. * platform/mediastream/mac/ScreenCaptureKitSharingSessionManager.h: (WebCore::ScreenCaptureKitSharingSessionManager::SharingSessionObserver::operator== const): Deleted. * platform/mediastream/mac/ScreenCaptureKitSharingSessionManager.mm: (WebCore::ScreenCaptureKitSharingSessionManager::isAvailable): (WebCore::ScreenCaptureKitSharingSessionManager::sessionDidChangeContent): Call CaptureDevice constructor directly since we have everything it needs. (WebCore::ScreenCaptureKitSharingSessionManager::promptForGetDisplayMedia): Call completion handler if the class is not available. Source/WebKit: * GPUProcess/GPUProcess.cpp: (WebKit::GPUProcess::showWindowPicker): Call the picker. (WebKit::GPUProcess::showScreenPicker): Ditto. (WebKit::GPUProcess::setUseScreenCaptureKit): * GPUProcess/GPUProcess.h: * GPUProcess/GPUProcess.messages.in: * GPUProcess/mac/com.apple.WebKit.GPUProcess.sb.in: Add rule to allow sandbox to be extended dynamically with the mach-lookups required for the picker. * Scripts/process-entitlements.sh: Add entitlements required for picker. * Shared/WebPageCreationParameters.cpp: (WebKit::WebPageCreationParameters::encode const): Encode shouldCaptureDisplayInGPUProcess. (WebKit::WebPageCreationParameters::decode): Decode shouldCaptureDisplayInGPUProcess. * Shared/WebPageCreationParameters.h: * UIProcess/Cocoa/WebPageProxyCocoa.mm: * UIProcess/GPU/GPUProcessProxy.cpp: (WebKit::addDisplayCaptureSandboxExtension): Create extensions required to use the system picker. (WebKit::GPUProcessProxy::updateSandboxAccess): Add display capture. (WebKit::GPUProcessProxy::updateCaptureAccess): Pass "allowDisplayCapture" to updateSandboxAccess. (WebKit::GPUProcessProxy::showWindowPicker): (WebKit::GPUProcessProxy::showScreenPicker): (WebKit::GPUProcessProxy::updatePreferences): * UIProcess/GPU/GPUProcessProxy.h: * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::creationParameters): Set shouldCaptureDisplayInGPUProcess. * UIProcess/mac/DisplayCaptureSessionManager.mm: (WebKit::DisplayCaptureSessionManager::showWindowPicker): Send message to GPU process when necessary. (WebKit::DisplayCaptureSessionManager::showScreenPicker): Ditto. * WebProcess/WebPage/Cocoa/WebPageCocoa.mm: (WebKit::WebPage::platformInitialize): Pass shouldCaptureDisplayInGPUProcess to setupCaptureProcesses. * WebProcess/cocoa/UserMediaCaptureManager.cpp: (WebKit::UserMediaCaptureManager::setupCaptureProcesses): Add shouldCaptureDisplayInGPUProcess parameter. (WebKit::UserMediaCaptureManager::DisplayFactory::createDisplayCaptureSource): Deal with GPU process capture. (WebKit::UserMediaCaptureManager::DisplayFactory::setShouldCaptureInGPUProcess): * WebProcess/cocoa/UserMediaCaptureManager.h: Source/WTF: * Scripts/Preferences/WebPreferencesExperimental.yaml: Add UseGPUProcessForDisplayCapture. Modified Paths trunk/Source/WTF/ChangeLog trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/mediastream/mac/ScreenCaptureKitCaptureSource.h trunk/Source/WebCore/platform/mediastream/mac/ScreenCaptureKitCaptureSource.mm trunk/Source/WebCore/platform/mediastream/mac/ScreenCaptureKitSharingSessionManager.h trunk/Source/WebCore/platform/mediastream/mac/ScreenCaptureKitSharingSessionManager.mm trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/GPUProcess/GPUProcess.cpp trunk/Source/WebKit/GPUProcess/GPUProcess.h trunk/Source/WebKit/GPUProcess/GPUProcess.messages.in trunk/Source/WebKit/GPUProcess/mac/com.apple.WebKit.GPUProcess.sb.in trunk/Source/WebKit/Scripts/process-entitlements.sh trunk/Source/WebKit/Shared/WebPageCreationParameters.cpp trunk/Source/WebKit/Shared/WebPageCreationParameters.h trunk/Source/WebKit/UIProcess/Cocoa/WebPageProxyCocoa.mm trunk/Source/WebKit/UIProcess/GPU/GPUProcessProxy.cpp trunk/Source/WebKit/UIProcess/GPU/GPUProcessProxy.h trunk/Source/WebKit/UIProcess/WebPageProxy.cpp
[webkit-changes] [290173] trunk/Source/WebKit
Title: [290173] trunk/Source/WebKit Revision 290173 Author katherine_che...@apple.com Date 2022-02-18 14:40:32 -0800 (Fri, 18 Feb 2022) Log Message Use async NSSharingServicePicker menu if available https://bugs.webkit.org/show_bug.cgi?id=236823 Reviewed by Dean Jackson. * UIProcess/Cocoa/WKShareSheet.h: * UIProcess/Cocoa/WKShareSheet.mm: (-[WKShareSheet presentWithShareDataArray:inRect:]): (-[WKShareSheet canShowPickerAsync:]): (-[WKShareSheet showPickerAsync:completionHandler:]): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/Cocoa/WKShareSheet.h trunk/Source/WebKit/UIProcess/Cocoa/WKShareSheet.mm Diff Modified: trunk/Source/WebKit/ChangeLog (290172 => 290173) --- trunk/Source/WebKit/ChangeLog 2022-02-18 22:37:33 UTC (rev 290172) +++ trunk/Source/WebKit/ChangeLog 2022-02-18 22:40:32 UTC (rev 290173) @@ -1,3 +1,17 @@ +2022-02-18 Kate Cheney + +Use async NSSharingServicePicker menu if available +https://bugs.webkit.org/show_bug.cgi?id=236823 + + +Reviewed by Dean Jackson. + +* UIProcess/Cocoa/WKShareSheet.h: +* UIProcess/Cocoa/WKShareSheet.mm: +(-[WKShareSheet presentWithShareDataArray:inRect:]): +(-[WKShareSheet canShowPickerAsync:]): +(-[WKShareSheet showPickerAsync:completionHandler:]): + 2022-02-18 J Pascoe [WebAuthn] Add credentialID to _WKWebAuthenticationAssertionResponse and userHandle in getAllLocalAuthenticatorCredentials Modified: trunk/Source/WebKit/UIProcess/Cocoa/WKShareSheet.h (290172 => 290173) --- trunk/Source/WebKit/UIProcess/Cocoa/WKShareSheet.h 2022-02-18 22:37:33 UTC (rev 290172) +++ trunk/Source/WebKit/UIProcess/Cocoa/WKShareSheet.h 2022-02-18 22:40:32 UTC (rev 290173) @@ -41,6 +41,11 @@ - (void)presentWithParameters:(const WebCore::ShareDataWithParsedURL&)data inRect:(std::optional)rect completionHandler:(WTF::CompletionHandler&&)completionHandler; - (void)dismiss; +#if PLATFORM(MAC) +- (BOOL)canShowPickerAsync:(NSSharingServicePicker *)picker; +- (void)showPickerAsync:(NSSharingServicePicker *)picker showRelativeToRect:(NSRect)presentationRect ofView:(WKWebView *)webView completion:(void (^)(void))completionHandler; +#endif + @property (nonatomic, weak) id delegate; @end Modified: trunk/Source/WebKit/UIProcess/Cocoa/WKShareSheet.mm (290172 => 290173) --- trunk/Source/WebKit/UIProcess/Cocoa/WKShareSheet.mm 2022-02-18 22:37:33 UTC (rev 290172) +++ trunk/Source/WebKit/UIProcess/Cocoa/WKShareSheet.mm 2022-02-18 22:40:32 UTC (rev 290173) @@ -46,6 +46,10 @@ #import #endif +#if USE(APPLE_INTERNAL_SDK) && PLATFORM(MAC) +#import +#endif + #if PLATFORM(MAC) @interface WKShareSheet () @end @@ -178,7 +182,11 @@ NSRect mouseLocationInWindow = [webView.window convertRectFromScreen:mouseLocationRect]; presentationRect = [webView convertRect:mouseLocationInWindow fromView:nil]; } -[_sharingServicePicker showRelativeToRect:presentationRect ofView:webView preferredEdge:NSMinYEdge]; + +if ([self canShowPickerAsync:_sharingServicePicker.get()]) +[self showPickerAsync:_sharingServicePicker.get() showRelativeToRect:presentationRect ofView:webView completion:^{ }]; +else +[_sharingServicePicker showRelativeToRect:presentationRect ofView:webView preferredEdge:NSMinYEdge]; #else _shareSheetViewController = adoptNS([[UIActivityViewController alloc] initWithActivityItems:sharingItems applicationActivities:nil]); @@ -362,6 +370,21 @@ return fileURL; } +#if PLATFORM(MAC) +#if USE(APPLE_INTERNAL_SDK) +#import +#else +- (BOOL)canShowPickerAsync:(NSSharingServicePicker *)picker +{ +return false; +} +- (void)showPickerAsync:(NSSharingServicePicker *)picker showRelativeToRect:(NSRect)presentationRect ofView:(WKWebView *)webView completion:(void (^)(void))completionHandler +{ + +} +#endif +#endif + @end #endif // PLATFORM(COCOA) && !PLATFORM(WATCHOS) && !PLATFORM(APPLETV) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [290172] tags/Safari-613.1.17.0.6/
Title: [290172] tags/Safari-613.1.17.0.6/ Revision 290172 Author alanc...@apple.com Date 2022-02-18 14:37:33 -0800 (Fri, 18 Feb 2022) Log Message Tag Safari-613.1.17.0.6. Added Paths tags/Safari-613.1.17.0.6/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [290171] tags/Safari-613.1.17.1.6/
Title: [290171] tags/Safari-613.1.17.1.6/ Revision 290171 Author alanc...@apple.com Date 2022-02-18 14:36:44 -0800 (Fri, 18 Feb 2022) Log Message Tag Safari-613.1.17.1.6. Added Paths tags/Safari-613.1.17.1.6/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [290170] trunk/Source/WebCore
Title: [290170] trunk/Source/WebCore Revision 290170 Author za...@apple.com Date 2022-02-18 14:32:31 -0800 (Fri, 18 Feb 2022) Log Message [LFC][IFC] Fix ideographic baseline for atomic inline level boxes with non-zero descent https://bugs.webkit.org/show_bug.cgi?id=236841 Reviewed by Antti Koivisto. In most cases atomic inline level boxes have zero descent values. However the ideographic should include the descent value (see RenderBox::baselinePosition) This patch also removes the check for orthogonal content since it is already covered at LineLayout::updateLayoutBoxDimensions (getting the correct baseline value that is). * layout/formattingContexts/inline/InlineLineBoxBuilder.cpp: (WebCore::Layout::LineBoxBuilder::adjustIdeographicBaselineIfApplicable): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/layout/formattingContexts/inline/InlineLineBoxBuilder.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (290169 => 290170) --- trunk/Source/WebCore/ChangeLog 2022-02-18 22:19:43 UTC (rev 290169) +++ trunk/Source/WebCore/ChangeLog 2022-02-18 22:32:31 UTC (rev 290170) @@ -1,3 +1,18 @@ +2022-02-18 Alan Bujtas + +[LFC][IFC] Fix ideographic baseline for atomic inline level boxes with non-zero descent +https://bugs.webkit.org/show_bug.cgi?id=236841 + +Reviewed by Antti Koivisto. + +In most cases atomic inline level boxes have zero descent values. However the ideographic should +include the descent value (see RenderBox::baselinePosition) +This patch also removes the check for orthogonal content since it is already covered at LineLayout::updateLayoutBoxDimensions +(getting the correct baseline value that is). + +* layout/formattingContexts/inline/InlineLineBoxBuilder.cpp: +(WebCore::Layout::LineBoxBuilder::adjustIdeographicBaselineIfApplicable): + 2022-02-18 Youenn Fablet REGRESSION (r288201): ASSERTION FAILED: !allScriptExecutionContextsMap().contains(m_identifier) Modified: trunk/Source/WebCore/layout/formattingContexts/inline/InlineLineBoxBuilder.cpp (290169 => 290170) --- trunk/Source/WebCore/layout/formattingContexts/inline/InlineLineBoxBuilder.cpp 2022-02-18 22:19:43 UTC (rev 290169) +++ trunk/Source/WebCore/layout/formattingContexts/inline/InlineLineBoxBuilder.cpp 2022-02-18 22:32:31 UTC (rev 290170) @@ -349,14 +349,6 @@ // when the style/content needs ideographic baseline setup in vertical writing mode. auto& rootInlineBox = lineBox.rootInlineBox(); -auto isAtomicInlineLevelBoxWithIdeographicBaseline = [&](auto& atomicInlineLevelBox) { -ASSERT(atomicInlineLevelBox.isAtomicInlineLevelBox()); -auto& layoutBox = atomicInlineLevelBox.layoutBox(); -auto isReplaced = is(layoutBox) && !layoutBox.isIntegrationInlineBlock(); -auto isOrthogonalFormattingContextRoot = layoutBox.establishesBlockFormattingContext() && layoutBox.style().isHorizontalWritingMode(); -return isReplaced || isOrthogonalFormattingContextRoot; -}; - auto lineNeedsIdeographicBaseline = [&] { auto styleToUse = [&] (auto& inlineLevelBox) -> const RenderStyle& { return !lineIndex ? inlineLevelBox.layoutBox().firstLineStyle() : inlineLevelBox.layoutBox().style(); @@ -374,8 +366,6 @@ for (auto& inlineLevelBox : lineBox.nonRootInlineLevelBoxes()) { if (inlineLevelBox.isInlineBox() && primaryFontRequiresIdeographicBaseline(styleToUse(inlineLevelBox))) return true; -if (inlineLevelBox.isAtomicInlineLevelBox() && isAtomicInlineLevelBoxWithIdeographicBaseline(inlineLevelBox)) -return true; } return false; }; @@ -391,11 +381,11 @@ else if (inlineLevelBox.isLineBreakBox()) { auto& parentInlineBox = lineBox.inlineLevelBoxForLayoutBox(inlineLevelBox.layoutBox().parent()); setBaselineAndLayoutBounds(inlineLevelBox, layoutBoundsMetricsForInlineBox(parentInlineBox, IdeographicBaseline)); -} else if (inlineLevelBox.isAtomicInlineLevelBox() && isAtomicInlineLevelBoxWithIdeographicBaseline(inlineLevelBox)) { -auto alphabeticBaseline = inlineLevelBox.ascent(); -InlineLayoutUnit ideographicBaseline = roundToInt(alphabeticBaseline / 2); +} else if (inlineLevelBox.isAtomicInlineLevelBox()) { +auto inlineLevelBoxHeight = inlineLevelBox.layoutBounds().height(); +InlineLayoutUnit ideographicBaseline = roundToInt(inlineLevelBoxHeight / 2); // Move the baseline position but keep the same logical height. -setBaselineAndLayoutBounds(inlineLevelBox, { ideographicBaseline, inlineLevelBox.layoutBounds().descent + (alphabeticBaseline - ideographicBaseline) }); +setBaselineAndLayoutBounds(inlineLevelBox, { ideographicBaseline, inlineLevelBoxHeight - ideographicBaseline }); } } }
[webkit-changes] [290169] branches/safari-614.1.4-branch/Source/WebCore
Title: [290169] branches/safari-614.1.4-branch/Source/WebCore Revision 290169 Author kocsen_ch...@apple.com Date 2022-02-18 14:19:43 -0800 (Fri, 18 Feb 2022) Log Message Cherry-pick r290153. rdar://problem/89142268 [Cocoa] Make AVFoundationSPI.h robust against changes in system headers https://bugs.webkit.org/show_bug.cgi?id=236787 Reviewed by Eric Carlson. Source/WebCore: Wrap call-sites in #if HAVE() macros. * platform/graphics/avfoundation/objc/CDMInstanceFairPlayStreamingAVFObjC.mm: (WebCore::CDMInstanceFairPlayStreamingAVFObjC::contentKeySession): (WebCore::CDMInstanceFairPlayStreamingAVFObjC::sessionForRequest const): (WebCore::CDMInstanceSessionFairPlayStreamingAVFObjC::requestLicense): (WebCore::CDMInstanceSessionFairPlayStreamingAVFObjC::removeSessionData): (WebCore::CDMInstanceSessionFairPlayStreamingAVFObjC::didProvideRequest): (WebCore::CDMInstanceSessionFairPlayStreamingAVFObjC::protectionStatusForDisplayID const): (WebCore::CDMInstanceSessionFairPlayStreamingAVFObjC::ensureSessionOrGroup): Source/WebCore/PAL: Follow-up: build problems still persist on certain platforms, so the "robustness" changes made previously were not robust enough. The guards in AVFoundationSPI.h were intended to ensure the definitions were present even on builds where the official API is not supported. However, just because the API is not supported does not mean it's not present, which leads to duplicate-interface build errors. Fix the AVFoundationSPI.h pragmas to only define the classes and methods where those objects are supported, and in parallel, wrap implementations which use those objects in those same guards (making these checks compile-time in addition to runtime). Move the declarations inside the #else (IOW, !USE(APPLE_INTERNAL_SDK)) block above, and wrap each declaration in the correct HAVE() macro. * pal/spi/cocoa/AVFoundationSPI.h: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@290153 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-614.1.4-branch/Source/WebCore/ChangeLog branches/safari-614.1.4-branch/Source/WebCore/PAL/ChangeLog branches/safari-614.1.4-branch/Source/WebCore/PAL/pal/spi/cocoa/AVFoundationSPI.h branches/safari-614.1.4-branch/Source/WebCore/platform/graphics/avfoundation/objc/CDMInstanceFairPlayStreamingAVFObjC.mm Diff Modified: branches/safari-614.1.4-branch/Source/WebCore/ChangeLog (290168 => 290169) --- branches/safari-614.1.4-branch/Source/WebCore/ChangeLog 2022-02-18 22:01:40 UTC (rev 290168) +++ branches/safari-614.1.4-branch/Source/WebCore/ChangeLog 2022-02-18 22:19:43 UTC (rev 290169) @@ -1,3 +1,65 @@ +2022-02-18 Russell Epstein + +Cherry-pick r290153. rdar://problem/89142268 + +[Cocoa] Make AVFoundationSPI.h robust against changes in system headers +https://bugs.webkit.org/show_bug.cgi?id=236787 + + +Reviewed by Eric Carlson. + +Source/WebCore: + +Wrap call-sites in #if HAVE() macros. + +* platform/graphics/avfoundation/objc/CDMInstanceFairPlayStreamingAVFObjC.mm: +(WebCore::CDMInstanceFairPlayStreamingAVFObjC::contentKeySession): +(WebCore::CDMInstanceFairPlayStreamingAVFObjC::sessionForRequest const): +(WebCore::CDMInstanceSessionFairPlayStreamingAVFObjC::requestLicense): +(WebCore::CDMInstanceSessionFairPlayStreamingAVFObjC::removeSessionData): +(WebCore::CDMInstanceSessionFairPlayStreamingAVFObjC::didProvideRequest): +(WebCore::CDMInstanceSessionFairPlayStreamingAVFObjC::protectionStatusForDisplayID const): +(WebCore::CDMInstanceSessionFairPlayStreamingAVFObjC::ensureSessionOrGroup): + +Source/WebCore/PAL: + +Follow-up: build problems still persist on certain platforms, so the "robustness" +changes made previously were not robust enough. The guards in AVFoundationSPI.h were +intended to ensure the definitions were present even on builds where the official API +is not supported. However, just because the API is not supported does not mean it's not +present, which leads to duplicate-interface build errors. + +Fix the AVFoundationSPI.h pragmas to only define the classes and methods where those +objects are supported, and in parallel, wrap implementations which use those objects +in those same guards (making these checks compile-time in addition to runtime). + +Move the declarations inside the #else (IOW, !USE(APPLE_INTERNAL_SDK)) block above, +and wrap each declaration in the correct HAVE() macro. + +* pal/spi/cocoa/AVFoundationSPI.h: + + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@290153 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2022-02-18 Jer Noble + +[Cocoa] Make AVFoundationSPI.h robust against changes in system headers +https://bugs.webkit.org/show_bug.cgi?id=236787 + + +Reviewed by
[webkit-changes] [290168] trunk/Websites/bugs.webkit.org/template/en/default/ queue.json.tmpl
Title: [290168] trunk/Websites/bugs.webkit.org/template/en/default/queue.json.tmpl Revision 290168 Author d...@apple.com Date 2022-02-18 14:01:40 -0800 (Fri, 18 Feb 2022) Log Message Revert 290166. Removed Paths trunk/Websites/bugs.webkit.org/template/en/default/queue.json.tmpl Diff Deleted: trunk/Websites/bugs.webkit.org/template/en/default/queue.json.tmpl (290167 => 290168) --- trunk/Websites/bugs.webkit.org/template/en/default/queue.json.tmpl 2022-02-18 21:38:57 UTC (rev 290167) +++ trunk/Websites/bugs.webkit.org/template/en/default/queue.json.tmpl 2022-02-18 22:01:40 UTC (rev 290168) @@ -1,47 +0,0 @@ -[%# This Source Code Form is subject to the terms of the Mozilla Public - # License, v. 2.0. If a copy of the MPL was not distributed with this - # file, You can obtain one at http://mozilla.org/MPL/2.0/. - # - # This Source Code Form is "Incompatible With Secondary Licenses", as - # defined by the Mozilla Public License, v. 2.0. #%] - -[% RAWPERL %] -my @display_columns = ('requester', 'requestee', 'type', 'created', 'category', - 'restricted', 'bug_id', 'bug_summary', 'attach_id', - 'attach_summary', 'attach_mimetype', 'attach_ispatch'); -my $requests= $stash->get('requests'); -my $time_filter = $context->filter('time', [ '%Y-%m-%dT%H:%M:%SZ', 'UTC' ]); -my $mail_filter = $context->filter('email'); - -my @results; -foreach my $request (@$requests) { -my %item = (); -foreach my $column (@display_columns) { -my $val; -if ( $column eq 'created' ) { -$val = $time_filter->( $request->{$column} ); -} -elsif ( $column =~ /^requeste/ ) { -$val = $request->{$column} ? { -email => $request->{$column}->email -} : undef; -} -elsif ( $column =~ /_id$/ ) { -$val = $request->{$column} ? 0 + $request->{$column} : undef; -} -elsif ( $column =~ /^(restricted|attach_ispatch)$/ ) { -$val = $request->{$column} ? \1 : \0; -} -else { -$val = $request->{$column}; -} -$item{$column} = $val; -} -push @results, \%item; -} -{ -use feature 'state'; -state $json = JSON::XS->new->utf8->ascii; -$output .= $json->encode( \@results ); -} -[% END %] ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [290167] trunk/Source/WebCore
Title: [290167] trunk/Source/WebCore Revision 290167 Author you...@apple.com Date 2022-02-18 13:38:57 -0800 (Fri, 18 Feb 2022) Log Message REGRESSION (r288201): ASSERTION FAILED: !allScriptExecutionContextsMap().contains(m_identifier) https://bugs.webkit.org/show_bug.cgi?id=236123 Reviewed by Chris Dumez. We sometimes call setupForReplace which reset m_gotFirstByte to false. In that case, we may reuse the same client ID for two different documents. To prevent this, we clear the clientID in setupForReplace. For good measure, if service worker runtime flag is not on, we do not set the client ID at all. Covered by existing WK1 tests. * loader/DocumentLoader.cpp: (WebCore::DocumentLoader::setupForReplace): (WebCore::DocumentLoader::loadMainResource): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/loader/DocumentLoader.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (290166 => 290167) --- trunk/Source/WebCore/ChangeLog 2022-02-18 21:32:03 UTC (rev 290166) +++ trunk/Source/WebCore/ChangeLog 2022-02-18 21:38:57 UTC (rev 290167) @@ -1,3 +1,22 @@ +2022-02-18 Youenn Fablet + +REGRESSION (r288201): ASSERTION FAILED: !allScriptExecutionContextsMap().contains(m_identifier) +https://bugs.webkit.org/show_bug.cgi?id=236123 + + +Reviewed by Chris Dumez. + +We sometimes call setupForReplace which reset m_gotFirstByte to false. +In that case, we may reuse the same client ID for two different documents. +To prevent this, we clear the clientID in setupForReplace. +For good measure, if service worker runtime flag is not on, we do not set the client ID at all. + +Covered by existing WK1 tests. + +* loader/DocumentLoader.cpp: +(WebCore::DocumentLoader::setupForReplace): +(WebCore::DocumentLoader::loadMainResource): + 2022-02-18 Sam Sneddon ServiceWorkerGlobalScope+PushAPI requires PushAPIEnabled Modified: trunk/Source/WebCore/loader/DocumentLoader.cpp (290166 => 290167) --- trunk/Source/WebCore/loader/DocumentLoader.cpp 2022-02-18 21:32:03 UTC (rev 290166) +++ trunk/Source/WebCore/loader/DocumentLoader.cpp 2022-02-18 21:38:57 UTC (rev 290167) @@ -1358,7 +1358,15 @@ m_writer.end(); frameLoader()->setReplacing(); m_gotFirstByte = false; - + +#if ENABLE(SERVICE_WORKER) +unregisterReservedServiceWorkerClient(); +if (m_resultingClientId) { +scriptExecutionContextIdentifierToLoaderMap().remove(m_resultingClientId); +m_resultingClientId = { }; +} +#endif + stopLoadingSubresources(); stopLoadingPlugIns(); #if ENABLE(WEB_ARCHIVE) || ENABLE(MHTML) @@ -2109,12 +2117,14 @@ CachingPolicy::AllowCaching); #if ENABLE(SERVICE_WORKER) -// The main navigation load will trigger the registration of the client. -if (m_resultingClientId) -scriptExecutionContextIdentifierToLoaderMap().remove(m_resultingClientId); -m_resultingClientId = ScriptExecutionContextIdentifier::generate(); -ASSERT(!scriptExecutionContextIdentifierToLoaderMap().contains(m_resultingClientId)); -scriptExecutionContextIdentifierToLoaderMap().add(m_resultingClientId, this); +if (RuntimeEnabledFeatures::sharedFeatures().serviceWorkerEnabled()) { +// The main navigation load will trigger the registration of the client. +if (m_resultingClientId) +scriptExecutionContextIdentifierToLoaderMap().remove(m_resultingClientId); +m_resultingClientId = ScriptExecutionContextIdentifier::generate(); +ASSERT(!scriptExecutionContextIdentifierToLoaderMap().contains(m_resultingClientId)); +scriptExecutionContextIdentifierToLoaderMap().add(m_resultingClientId, this); +} #endif CachedResourceRequest mainResourceRequest(WTFMove(request), mainResourceLoadOptions); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [290166] trunk/Websites/bugs.webkit.org/template/en/default/ queue.json.tmpl
Title: [290166] trunk/Websites/bugs.webkit.org/template/en/default/queue.json.tmpl Revision 290166 Author d...@apple.com Date 2022-02-18 13:32:03 -0800 (Fri, 18 Feb 2022) Log Message Temporarily adding JSON output for request queue to see if it works. Will remove it immediately after testing. Unreviewed. * template/en/default/queue.json.tmpl: Added. Added Paths trunk/Websites/bugs.webkit.org/template/en/default/queue.json.tmpl Diff Added: trunk/Websites/bugs.webkit.org/template/en/default/queue.json.tmpl (0 => 290166) --- trunk/Websites/bugs.webkit.org/template/en/default/queue.json.tmpl (rev 0) +++ trunk/Websites/bugs.webkit.org/template/en/default/queue.json.tmpl 2022-02-18 21:32:03 UTC (rev 290166) @@ -0,0 +1,47 @@ +[%# This Source Code Form is subject to the terms of the Mozilla Public + # License, v. 2.0. If a copy of the MPL was not distributed with this + # file, You can obtain one at http://mozilla.org/MPL/2.0/. + # + # This Source Code Form is "Incompatible With Secondary Licenses", as + # defined by the Mozilla Public License, v. 2.0. #%] + +[% RAWPERL %] +my @display_columns = ('requester', 'requestee', 'type', 'created', 'category', + 'restricted', 'bug_id', 'bug_summary', 'attach_id', + 'attach_summary', 'attach_mimetype', 'attach_ispatch'); +my $requests= $stash->get('requests'); +my $time_filter = $context->filter('time', [ '%Y-%m-%dT%H:%M:%SZ', 'UTC' ]); +my $mail_filter = $context->filter('email'); + +my @results; +foreach my $request (@$requests) { +my %item = (); +foreach my $column (@display_columns) { +my $val; +if ( $column eq 'created' ) { +$val = $time_filter->( $request->{$column} ); +} +elsif ( $column =~ /^requeste/ ) { +$val = $request->{$column} ? { +email => $request->{$column}->email +} : undef; +} +elsif ( $column =~ /_id$/ ) { +$val = $request->{$column} ? 0 + $request->{$column} : undef; +} +elsif ( $column =~ /^(restricted|attach_ispatch)$/ ) { +$val = $request->{$column} ? \1 : \0; +} +else { +$val = $request->{$column}; +} +$item{$column} = $val; +} +push @results, \%item; +} +{ +use feature 'state'; +state $json = JSON::XS->new->utf8->ascii; +$output .= $json->encode( \@results ); +} +[% END %] ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [290165] trunk/LayoutTests
Title: [290165] trunk/LayoutTests Revision 290165 Author jon...@apple.com Date 2022-02-18 13:29:52 -0800 (Fri, 18 Feb 2022) Log Message REGRESSION (r289990): [iOS] fast/backgrounds/gradient-background-shadow.html is consistently failing https://bugs.webkit.org/show_bug.cgi?id=236854 Unreviewed. Expanding fuzzy range. * fast/backgrounds/gradient-background-shadow.html: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/fast/backgrounds/gradient-background-shadow.html Diff Modified: trunk/LayoutTests/ChangeLog (290164 => 290165) --- trunk/LayoutTests/ChangeLog 2022-02-18 21:21:28 UTC (rev 290164) +++ trunk/LayoutTests/ChangeLog 2022-02-18 21:29:52 UTC (rev 290165) @@ -1,3 +1,11 @@ +2022-02-18 Jon Lee + +REGRESSION (r289990): [iOS] fast/backgrounds/gradient-background-shadow.html is consistently failing +https://bugs.webkit.org/show_bug.cgi?id=236854 + +Unreviewed. Expanding fuzzy range. +* fast/backgrounds/gradient-background-shadow.html: + 2022-02-18 Tim Nguyen Re-import inert and WPT Modified: trunk/LayoutTests/fast/backgrounds/gradient-background-shadow.html (290164 => 290165) --- trunk/LayoutTests/fast/backgrounds/gradient-background-shadow.html 2022-02-18 21:21:28 UTC (rev 290164) +++ trunk/LayoutTests/fast/backgrounds/gradient-background-shadow.html 2022-02-18 21:29:52 UTC (rev 290165) @@ -1,7 +1,7 @@ - +
[webkit-changes] [290164] trunk/LayoutTests
Title: [290164] trunk/LayoutTests Revision 290164 Author n...@apple.com Date 2022-02-18 13:21:28 -0800 (Fri, 18 Feb 2022) Log Message Re-import inert and WPT https://bugs.webkit.org/show_bug.cgi?id=236808 Reviewed by Simon Fraser. Commit: https://github.com/web-platform-tests/wpt/commit/0d483a3bea340a2c60cb7a4add49eb63cbba2a64 LayoutTests/imported/w3c: * web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-focus-shadow-double-nested-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-focus-shadow-delegatesfocus-expected.txt. * web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-focus-shadow-double-nested.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-focus-shadow-delegatesfocus.html. * web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-focus-shadow-expected.txt: * web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-focus-shadow.html: * web-platform-tests/html/semantics/interactive-elements/the-dialog-element/inert-focus-in-frames-expected.txt: * web-platform-tests/html/semantics/interactive-elements/the-dialog-element/inert-focus-in-frames.html: * web-platform-tests/html/semantics/interactive-elements/the-dialog-element/inert-label-focus.html: * web-platform-tests/html/semantics/interactive-elements/the-dialog-element/inertness-with-modal-dialogs-and-iframes-expected.txt: * web-platform-tests/html/semantics/interactive-elements/the-dialog-element/inertness-with-modal-dialogs-and-iframes.html: * web-platform-tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-scroll-height.html: * web-platform-tests/html/semantics/interactive-elements/the-dialog-element/w3c-import.log: * web-platform-tests/inert/dynamic-inert-on-focused-element.tentative-expected.txt: Added. * web-platform-tests/inert/dynamic-inert-on-focused-element.tentative.html: Added. * web-platform-tests/inert/inert-canvas-fallback-content.tentative-expected.txt: Added. * web-platform-tests/inert/inert-canvas-fallback-content.tentative.html: Added. * web-platform-tests/inert/inert-iframe-hittest.tentative-expected.txt: Added. * web-platform-tests/inert/inert-iframe-hittest.tentative.html: Added. * web-platform-tests/inert/inert-iframe-tabbing.tentative-expected.txt: Added. * web-platform-tests/inert/inert-iframe-tabbing.tentative.html: Added. * web-platform-tests/inert/inert-node-is-uneditable.tentative.html: * web-platform-tests/inert/inert-with-modal-dialog-001.tentative-expected.txt: Added. * web-platform-tests/inert/inert-with-modal-dialog-001.tentative.html: Added. * web-platform-tests/inert/inert-with-modal-dialog-002.tentative-expected.txt: Added. * web-platform-tests/inert/inert-with-modal-dialog-002.tentative.html: Added. * web-platform-tests/inert/w3c-import.log: LayoutTests: * platform/ios-wk2/imported/w3c/web-platform-tests/inert/inert-iframe-hittest.tentative-expected.txt: Added. * platform/ios-wk2/imported/w3c/web-platform-tests/inert/inert-iframe-tabbing.tentative-expected.txt: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-focus-shadow-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-focus-shadow.html trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/inert-focus-in-frames-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/inert-focus-in-frames.html trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/inert-label-focus.html trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/inertness-with-modal-dialogs-and-iframes-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/inertness-with-modal-dialogs-and-iframes.html trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/modal-dialog-scroll-height.html trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/w3c-import.log trunk/LayoutTests/imported/w3c/web-platform-tests/inert/inert-node-is-uneditable.tentative.html trunk/LayoutTests/imported/w3c/web-platform-tests/inert/w3c-import.log Added Paths trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-focus-shadow-double-nested-expected.txt
[webkit-changes] [290163] branches/safari-613.1.17.0-branch/Source/WebCore
Title: [290163] branches/safari-613.1.17.0-branch/Source/WebCore Revision 290163 Author alanc...@apple.com Date 2022-02-18 13:20:53 -0800 (Fri, 18 Feb 2022) Log Message Cherry-pick r290152. rdar://problem/88327814 Keep promise in scope when calling DeferredPromise::reject https://bugs.webkit.org/show_bug.cgi?id=236454 Patch by Gabriel Nava Marino on 2022-02-18 Reviewed by Darin Adler. Keep promise in scope when calling DeferredPromise::reject, as createDOMException could go through a path that invokes GC on its owner and the promise. * Modules/fetch/FetchBodyConsumer.cpp: (WebCore::FetchBodyConsumer::resolveWithFormData): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@290152 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-613.1.17.0-branch/Source/WebCore/ChangeLog branches/safari-613.1.17.0-branch/Source/WebCore/Modules/fetch/FetchBodyConsumer.cpp Diff Modified: branches/safari-613.1.17.0-branch/Source/WebCore/ChangeLog (290162 => 290163) --- branches/safari-613.1.17.0-branch/Source/WebCore/ChangeLog 2022-02-18 21:20:49 UTC (rev 290162) +++ branches/safari-613.1.17.0-branch/Source/WebCore/ChangeLog 2022-02-18 21:20:53 UTC (rev 290163) @@ -1,5 +1,36 @@ 2022-02-18 Russell Epstein +Cherry-pick r290152. rdar://problem/88327814 + +Keep promise in scope when calling DeferredPromise::reject +https://bugs.webkit.org/show_bug.cgi?id=236454 + +Patch by Gabriel Nava Marino on 2022-02-18 +Reviewed by Darin Adler. + +Keep promise in scope when calling DeferredPromise::reject, as createDOMException +could go through a path that invokes GC on its owner and the promise. + +* Modules/fetch/FetchBodyConsumer.cpp: +(WebCore::FetchBodyConsumer::resolveWithFormData): + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@290152 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2022-02-18 Gabriel Nava Marino + +Keep promise in scope when calling DeferredPromise::reject +https://bugs.webkit.org/show_bug.cgi?id=236454 + +Reviewed by Darin Adler. + +Keep promise in scope when calling DeferredPromise::reject, as createDOMException +could go through a path that invokes GC on its owner and the promise. + +* Modules/fetch/FetchBodyConsumer.cpp: +(WebCore::FetchBodyConsumer::resolveWithFormData): + +2022-02-18 Russell Epstein + Cherry-pick r290156. rdar://problem/89154452 ServiceWorkerGlobalScope+PushAPI requires PushAPIEnabled Modified: branches/safari-613.1.17.0-branch/Source/WebCore/Modules/fetch/FetchBodyConsumer.cpp (290162 => 290163) --- branches/safari-613.1.17.0-branch/Source/WebCore/Modules/fetch/FetchBodyConsumer.cpp 2022-02-18 21:20:49 UTC (rev 290162) +++ branches/safari-613.1.17.0-branch/Source/WebCore/Modules/fetch/FetchBodyConsumer.cpp 2022-02-18 21:20:53 UTC (rev 290163) @@ -268,8 +268,9 @@ if (!context) return; -m_formDataConsumer = makeUnique(formData, *context, [this, promise = WTFMove(promise), contentType, builder = SharedBufferBuilder { }](auto&& result) mutable { +m_formDataConsumer = makeUnique(formData, *context, [this, capturedPromise = WTFMove(promise), contentType, builder = SharedBufferBuilder { }](auto&& result) mutable { if (result.hasException()) { +auto promise = WTFMove(capturedPromise); promise->reject(result.releaseException()); return; } @@ -277,7 +278,7 @@ auto& value = result.returnValue(); if (value.empty()) { auto buffer = builder.takeAsContiguous(); -resolveWithData(WTFMove(promise), contentType, buffer->data(), buffer->size()); +resolveWithData(WTFMove(capturedPromise), contentType, buffer->data(), buffer->size()); return; } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [290162] branches/safari-613.1.17.0-branch
Title: [290162] branches/safari-613.1.17.0-branch Revision 290162 Author alanc...@apple.com Date 2022-02-18 13:20:49 -0800 (Fri, 18 Feb 2022) Log Message Cherry-pick r290156. rdar://problem/89154452 ServiceWorkerGlobalScope+PushAPI requires PushAPIEnabled https://bugs.webkit.org/show_bug.cgi?id=236846 Patch by Sam Sneddon on 2022-02-18 Reviewed by Chris Dumez. Source/WebCore: Tests: http/wpt/push-api/onpush-disabled.html http/wpt/push-api/onpush-enabled.html * Modules/push-api/ServiceWorkerGlobalScope+PushAPI.idl: LayoutTests: * http/wpt/push-api/onpush-disabled-expected.txt: Added. * http/wpt/push-api/onpush-disabled.html: Added. * http/wpt/push-api/onpush-disabled.js: Added. (test): * http/wpt/push-api/onpush-enabled-expected.txt: Added. * http/wpt/push-api/onpush-enabled.html: Added. * http/wpt/push-api/onpush-enabled.js: Added. (test): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@290156 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-613.1.17.0-branch/LayoutTests/ChangeLog branches/safari-613.1.17.0-branch/Source/WebCore/ChangeLog branches/safari-613.1.17.0-branch/Source/WebCore/Modules/push-api/ServiceWorkerGlobalScope+PushAPI.idl Added Paths branches/safari-613.1.17.0-branch/LayoutTests/http/wpt/push-api/onpush-disabled-expected.txt branches/safari-613.1.17.0-branch/LayoutTests/http/wpt/push-api/onpush-disabled.html branches/safari-613.1.17.0-branch/LayoutTests/http/wpt/push-api/onpush-disabled.js branches/safari-613.1.17.0-branch/LayoutTests/http/wpt/push-api/onpush-enabled-expected.txt branches/safari-613.1.17.0-branch/LayoutTests/http/wpt/push-api/onpush-enabled.html branches/safari-613.1.17.0-branch/LayoutTests/http/wpt/push-api/onpush-enabled.js Diff Modified: branches/safari-613.1.17.0-branch/LayoutTests/ChangeLog (290161 => 290162) --- branches/safari-613.1.17.0-branch/LayoutTests/ChangeLog 2022-02-18 21:18:08 UTC (rev 290161) +++ branches/safari-613.1.17.0-branch/LayoutTests/ChangeLog 2022-02-18 21:20:49 UTC (rev 290162) @@ -1,5 +1,51 @@ 2022-02-18 Russell Epstein +Cherry-pick r290156. rdar://problem/89154452 + +ServiceWorkerGlobalScope+PushAPI requires PushAPIEnabled +https://bugs.webkit.org/show_bug.cgi?id=236846 + +Patch by Sam Sneddon on 2022-02-18 +Reviewed by Chris Dumez. + +Source/WebCore: + +Tests: http/wpt/push-api/onpush-disabled.html + http/wpt/push-api/onpush-enabled.html + +* Modules/push-api/ServiceWorkerGlobalScope+PushAPI.idl: + +LayoutTests: + +* http/wpt/push-api/onpush-disabled-expected.txt: Added. +* http/wpt/push-api/onpush-disabled.html: Added. +* http/wpt/push-api/onpush-disabled.js: Added. +(test): +* http/wpt/push-api/onpush-enabled-expected.txt: Added. +* http/wpt/push-api/onpush-enabled.html: Added. +* http/wpt/push-api/onpush-enabled.js: Added. +(test): + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@290156 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2022-02-18 Sam Sneddon + +ServiceWorkerGlobalScope+PushAPI requires PushAPIEnabled +https://bugs.webkit.org/show_bug.cgi?id=236846 + +Reviewed by Chris Dumez. + +* http/wpt/push-api/onpush-disabled-expected.txt: Added. +* http/wpt/push-api/onpush-disabled.html: Added. +* http/wpt/push-api/onpush-disabled.js: Added. +(test): +* http/wpt/push-api/onpush-enabled-expected.txt: Added. +* http/wpt/push-api/onpush-enabled.html: Added. +* http/wpt/push-api/onpush-enabled.js: Added. +(test): + +2022-02-18 Russell Epstein + Cherry-pick r290087. rdar://problem/88713302 Source/ThirdParty/ANGLE: Added: branches/safari-613.1.17.0-branch/LayoutTests/http/wpt/push-api/onpush-disabled-expected.txt (0 => 290162) --- branches/safari-613.1.17.0-branch/LayoutTests/http/wpt/push-api/onpush-disabled-expected.txt (rev 0) +++ branches/safari-613.1.17.0-branch/LayoutTests/http/wpt/push-api/onpush-disabled-expected.txt 2022-02-18 21:20:49 UTC (rev 290162) @@ -0,0 +1,4 @@ + +PASS onpush should not be exposed on ServiceWorkerGlobalScope +PASS onpushsubscriptionchange should not be exposed on ServiceWorkerGlobalScope + Added: branches/safari-613.1.17.0-branch/LayoutTests/http/wpt/push-api/onpush-disabled.html (0 => 290162) --- branches/safari-613.1.17.0-branch/LayoutTests/http/wpt/push-api/onpush-disabled.html (rev 0) +++ branches/safari-613.1.17.0-branch/LayoutTests/http/wpt/push-api/onpush-disabled.html 2022-02-18 21:20:49 UTC (rev 290162) @@ -0,0 +1,16 @@ + + + + +