[webkit-changes] [239326] trunk/JSTests
Title: [239326] trunk/JSTests Revision 239326 Author mark@apple.com Date 2018-12-17 23:51:24 -0800 (Mon, 17 Dec 2018) Log Message Skip the stress/materialize-regexp-cyclic-regexp.js test on 32-bit. https://bugs.webkit.org/show_bug.cgi?id=191373 Reviewed by Yusuke Suzuki. The test is already slow running with a JIT on 64-bit. It will always timeout on 32-bit without a JIT. * stress/materialize-regexp-cyclic-regexp.js: Modified Paths trunk/JSTests/ChangeLog trunk/JSTests/stress/materialize-regexp-cyclic-regexp.js Diff Modified: trunk/JSTests/ChangeLog (239325 => 239326) --- trunk/JSTests/ChangeLog 2018-12-18 06:56:51 UTC (rev 239325) +++ trunk/JSTests/ChangeLog 2018-12-18 07:51:24 UTC (rev 239326) @@ -1,5 +1,18 @@ 2018-12-17 Mark Lam +Skip the stress/materialize-regexp-cyclic-regexp.js test on 32-bit. +https://bugs.webkit.org/show_bug.cgi?id=191373 + + +Reviewed by Yusuke Suzuki. + +The test is already slow running with a JIT on 64-bit. It will always timeout +on 32-bit without a JIT. + +* stress/materialize-regexp-cyclic-regexp.js: + +2018-12-17 Mark Lam + Array unshift/shift should not race against the AI in the compiler thread. https://bugs.webkit.org/show_bug.cgi?id=192795 Modified: trunk/JSTests/stress/materialize-regexp-cyclic-regexp.js (239325 => 239326) --- trunk/JSTests/stress/materialize-regexp-cyclic-regexp.js 2018-12-18 06:56:51 UTC (rev 239325) +++ trunk/JSTests/stress/materialize-regexp-cyclic-regexp.js 2018-12-18 07:51:24 UTC (rev 239326) @@ -1,3 +1,5 @@ +//@ skip if $architecture != "arm64" and $architecture != "x86-64" + function shouldBe(actual, expected) { if (actual !== expected) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [239325] trunk
Title: [239325] trunk Revision 239325 Author mark@apple.com Date 2018-12-17 22:56:51 -0800 (Mon, 17 Dec 2018) Log Message Array unshift/shift should not race against the AI in the compiler thread. https://bugs.webkit.org/show_bug.cgi?id=192795 Reviewed by Saam Barati. JSTests: * stress/array-unshift-should-not-race-against-compiler-thread.js: Added. Source/_javascript_Core: The Array unshift and shift operations for ArrayStorage type arrays are protected using the cellLock. The AbstractInterpreter's foldGetByValOnConstantProperty() function does grab the cellLock before reading a value from the array's ArrayStorage, but does not get the array butterfly under the protection of the cellLock. This is insufficient and racy. For ArrayStorage type arrays, the fetching of the butterfly also needs to be protected by the cellLock. The unshift / shift operations can move values around in the butterfly. Hence, the fact that AI has fetched a butterfly pointer (while ensuring no structure change) is insufficient to guarantee that the values in the butterfly haven't shifted. Having AI hold the cellLock the whole time (from before fetching the butterfly till after reading the value from it) eliminates this race. Note: we only need to do this for ArrayStorage type arrays. Note also that though AI is holding the cellLock in this case, we still need to ensure that the array structure hasn't changed around the fetching of the butterfly. This is because operations other than unshift and shift are guarded by this protocol, and not the cellLock. * dfg/DFGAbstractInterpreterInlines.h: (JSC::DFG::AbstractInterpreter::executeEffects): * runtime/JSArray.cpp: (JSC::JSArray::unshiftCountSlowCase): Modified Paths trunk/JSTests/ChangeLog trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/dfg/DFGAbstractInterpreterInlines.h trunk/Source/_javascript_Core/runtime/JSArray.cpp Added Paths trunk/JSTests/stress/array-unshift-should-not-race-against-compiler-thread.js Diff Modified: trunk/JSTests/ChangeLog (239324 => 239325) --- trunk/JSTests/ChangeLog 2018-12-18 06:54:49 UTC (rev 239324) +++ trunk/JSTests/ChangeLog 2018-12-18 06:56:51 UTC (rev 239325) @@ -1,3 +1,13 @@ +2018-12-17 Mark Lam + +Array unshift/shift should not race against the AI in the compiler thread. +https://bugs.webkit.org/show_bug.cgi?id=192795 + + +Reviewed by Saam Barati. + +* stress/array-unshift-should-not-race-against-compiler-thread.js: Added. + 2018-12-16 Yusuke Suzuki [JSC] Optimize Object.keys by caching own keys results in StructureRareData Added: trunk/JSTests/stress/array-unshift-should-not-race-against-compiler-thread.js (0 => 239325) --- trunk/JSTests/stress/array-unshift-should-not-race-against-compiler-thread.js (rev 0) +++ trunk/JSTests/stress/array-unshift-should-not-race-against-compiler-thread.js 2018-12-18 06:56:51 UTC (rev 239325) @@ -0,0 +1,7 @@ +let x = []; +for (let i = 0; i < 30; ++i) { +for (let j = 0; j < 2; ++j) { +x[0] +x.unshift(undefined); +} +} Modified: trunk/Source/_javascript_Core/ChangeLog (239324 => 239325) --- trunk/Source/_javascript_Core/ChangeLog 2018-12-18 06:54:49 UTC (rev 239324) +++ trunk/Source/_javascript_Core/ChangeLog 2018-12-18 06:56:51 UTC (rev 239325) @@ -1,3 +1,36 @@ +2018-12-17 Mark Lam + +Array unshift/shift should not race against the AI in the compiler thread. +https://bugs.webkit.org/show_bug.cgi?id=192795 + + +Reviewed by Saam Barati. + +The Array unshift and shift operations for ArrayStorage type arrays are protected +using the cellLock. The AbstractInterpreter's foldGetByValOnConstantProperty() +function does grab the cellLock before reading a value from the array's ArrayStorage, +but does not get the array butterfly under the protection of the cellLock. + +This is insufficient and racy. For ArrayStorage type arrays, the fetching of the +butterfly also needs to be protected by the cellLock. The unshift / shift +operations can move values around in the butterfly. Hence, the fact that AI has +fetched a butterfly pointer (while ensuring no structure change) is insufficient +to guarantee that the values in the butterfly haven't shifted. + +Having AI hold the cellLock the whole time (from before fetching the butterfly +till after reading the value from it) eliminates this race. Note: we only need +to do this for ArrayStorage type arrays. + +Note also that though AI is holding the cellLock in this case, we still need to +ensure that the array structure hasn't changed around the fetching of the butterfly. +This is because operations other than unshift and shift are guarded by this +protocol, and not the cellLock. + +* dfg/DFGAbstractInterpreterInlines.h: +
[webkit-changes] [239324] trunk
Title: [239324] trunk Revision 239324 Author yusukesuz...@slowstart.org Date 2018-12-17 22:54:49 -0800 (Mon, 17 Dec 2018) Log Message [JSC] Optimize Object.keys by caching own keys results in StructureRareData https://bugs.webkit.org/show_bug.cgi?id=190047 Reviewed by Saam Barati. JSTests: * stress/object-keys-cached-zero.js: Added. (shouldBe): (test): * stress/object-keys-changed-attribute.js: Added. (shouldBe): (test): * stress/object-keys-changed-index.js: Added. (shouldBe): (test): * stress/object-keys-changed.js: Added. (shouldBe): (test): * stress/object-keys-indexed-non-cache.js: Added. (shouldBe): (test): * stress/object-keys-overrides-get-property-names.js: Added. (shouldBe): (test): (noInline): Source/_javascript_Core: Object.keys is one of the most frequently used function in web-tooling-benchmarks (WTB). Object.keys is dominant in lebab of WTB, and frequently called in babel and others. Since our Structure knows the shape of JSObject, we can cache the result of Object.keys in Structure (StructureRareData) as we cache JSPropertyNameEnumerator in StructureRareData. This patch caches the result of Object.keys in StructureRareData. The cached array is created as JSImmutableButterfly. And Object.keys creates CoW from this data. Currently, the lifetime strategy of this JSImmutableButterfly is the same to cached JSPropertyNameEnumerator. It is referenced from Structure, and collected when Structure is collected. This improves several benchmarks in SixSpeed. baseline patched object-assign.es5 350.1710+-3.6303 ^226.0368+-4.7558^ definitely 1.5492x faster for-of-object.es6 269.1941+-3.3430 ^127.9317+-2.3875^ definitely 2.1042x faster And it improves WTB lebab by 11.8%. Before: lebab: 6.10 runs/s After: lebab: 6.82 runs/s * dfg/DFGAbstractInterpreterInlines.h: (JSC::DFG::AbstractInterpreter::executeEffects): * dfg/DFGByteCodeParser.cpp: (JSC::DFG::ByteCodeParser::handleIntrinsicCall): * dfg/DFGClobberize.h: (JSC::DFG::clobberize): * dfg/DFGConstantFoldingPhase.cpp: (JSC::DFG::ConstantFoldingPhase::foldConstants): * dfg/DFGDoesGC.cpp: (JSC::DFG::doesGC): * dfg/DFGFixupPhase.cpp: (JSC::DFG::FixupPhase::fixupNode): * dfg/DFGNode.cpp: (JSC::DFG::Node::convertToNewArrayBuffer): * dfg/DFGNode.h: * dfg/DFGNodeType.h: * dfg/DFGOperations.cpp: * dfg/DFGOperations.h: * dfg/DFGPredictionPropagationPhase.cpp: * dfg/DFGSafeToExecute.h: (JSC::DFG::safeToExecute): * dfg/DFGSpeculativeJIT.cpp: (JSC::DFG::SpeculativeJIT::compileObjectKeys): * dfg/DFGSpeculativeJIT.h: * dfg/DFGSpeculativeJIT32_64.cpp: (JSC::DFG::SpeculativeJIT::compile): * dfg/DFGSpeculativeJIT64.cpp: (JSC::DFG::SpeculativeJIT::compile): * ftl/FTLAbstractHeapRepository.h: * ftl/FTLCapabilities.cpp: (JSC::FTL::canCompile): * ftl/FTLLowerDFGToB3.cpp: (JSC::FTL::DFG::LowerDFGToB3::compileNode): (JSC::FTL::DFG::LowerDFGToB3::compileObjectKeys): * runtime/Butterfly.h: (JSC::ContiguousData::Data::setStartingValue): * runtime/Intrinsic.cpp: (JSC::intrinsicName): * runtime/Intrinsic.h: * runtime/JSImmutableButterfly.h: (JSC::JSImmutableButterfly::JSImmutableButterfly): We set JSEmpty to the underlying butterfly storage if indexing type is Contiguous. Otherwise, JSImmutableButterfly is half-baked one until all the storage is filled with some meaningful values, it leads to crash if half-baked JSImmutableButterfly is exposed to GC. * runtime/ObjectConstructor.cpp: (JSC::ownPropertyKeys): * runtime/Structure.cpp: (JSC::Structure::canCachePropertyNameEnumerator const): * runtime/Structure.h: * runtime/StructureInlines.h: (JSC::Structure::setCachedOwnKeys): (JSC::Structure::cachedOwnKeys const): (JSC::Structure::cachedOwnKeysIgnoringSentinel const): (JSC::Structure::canCacheOwnKeys const): * runtime/StructureRareData.cpp: (JSC::StructureRareData::visitChildren): (JSC::StructureRareData::cachedPropertyNameEnumerator const): Deleted. (JSC::StructureRareData::setCachedPropertyNameEnumerator): Deleted. * runtime/StructureRareData.h: * runtime/StructureRareDataInlines.h: (JSC::StructureRareData::cachedPropertyNameEnumerator const): (JSC::StructureRareData::setCachedPropertyNameEnumerator): (JSC::StructureRareData::cachedOwnKeys const): (JSC::StructureRareData::cachedOwnKeysIgnoringSentinel const): (JSC::StructureRareData::cachedOwnKeysConcurrently const): (JSC::StructureRareData::setCachedOwnKeys): (JSC::StructureRareData::previousID const): Deleted. * runtime/VM.cpp: (JSC::VM::VM): Modified Paths trunk/JSTests/ChangeLog trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/dfg/DFGAbstractInterpreterInlines.h trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp trunk/Source/_javascript_Core/dfg/DFGClobberize.h trunk/Source/_javascript_Core/dfg/DFGConstantFoldingPhase.cpp trunk/Source/_javascript_Core/dfg/DFGDoesGC.cpp trunk/Source/_javascript_Core/dfg/DFGFixupPhase.cpp trunk/Source/_javascript_Core/dfg/DFGNode.cpp
[webkit-changes] [239323] trunk
Title: [239323] trunk Revision 239323 Author jiewen_...@apple.com Date 2018-12-17 22:37:28 -0800 (Mon, 17 Dec 2018) Log Message [Mac] Layout Test http/wpt/webauthn/public-key-credential-create-success-hid.https.html and http/wpt/webauthn/public-key-credential-get-success-hid.https.html are flaky https://bugs.webkit.org/show_bug.cgi?id=192061 Reviewed by Dewei Zhu. Source/WebKit: Part 3. Add some additional temporary logging info to determine if the timer is working as expected. Once the bug is determined and fixed, we should remove all logging added in this patch. * UIProcess/WebAuthentication/AuthenticatorManager.cpp: (WebKit::AuthenticatorManager::respondReceived): (WebKit::AuthenticatorManager::initTimeOutTimer): (WebKit::AuthenticatorManager::timeOutTimerFired): * UIProcess/WebAuthentication/Mock/MockAuthenticatorManager.cpp: (WebKit::MockAuthenticatorManager::respondReceivedInternal): LayoutTests: Add a time out value. * http/wpt/webauthn/public-key-credential-create-success-hid.https.html: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/wpt/webauthn/public-key-credential-create-success-hid.https.html trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.cpp trunk/Source/WebKit/UIProcess/WebAuthentication/Mock/MockAuthenticatorManager.cpp Diff Modified: trunk/LayoutTests/ChangeLog (239322 => 239323) --- trunk/LayoutTests/ChangeLog 2018-12-18 06:33:58 UTC (rev 239322) +++ trunk/LayoutTests/ChangeLog 2018-12-18 06:37:28 UTC (rev 239323) @@ -1,3 +1,14 @@ +2018-12-17 Jiewen Tan + +[Mac] Layout Test http/wpt/webauthn/public-key-credential-create-success-hid.https.html and http/wpt/webauthn/public-key-credential-get-success-hid.https.html are flaky +https://bugs.webkit.org/show_bug.cgi?id=192061 + +Reviewed by Dewei Zhu. + +Add a time out value. + +* http/wpt/webauthn/public-key-credential-create-success-hid.https.html: + 2018-12-17 Eric Carlson [MediaStream] A stream's first video frame should be rendered Modified: trunk/LayoutTests/http/wpt/webauthn/public-key-credential-create-success-hid.https.html (239322 => 239323) --- trunk/LayoutTests/http/wpt/webauthn/public-key-credential-create-success-hid.https.html 2018-12-18 06:33:58 UTC (rev 239322) +++ trunk/LayoutTests/http/wpt/webauthn/public-key-credential-create-success-hid.https.html 2018-12-18 06:37:28 UTC (rev 239323) @@ -69,7 +69,8 @@ }, challenge: Base64URL.parse("MTIzNDU2"), pubKeyCredParams: [{ type: "public-key", alg: -7 }], -authenticatorSelection: { authenticatorAttachment: "cross-platform" } +authenticatorSelection: { authenticatorAttachment: "cross-platform" }, +timeout: 10 } }; Modified: trunk/Source/WebKit/ChangeLog (239322 => 239323) --- trunk/Source/WebKit/ChangeLog 2018-12-18 06:33:58 UTC (rev 239322) +++ trunk/Source/WebKit/ChangeLog 2018-12-18 06:37:28 UTC (rev 239323) @@ -1,3 +1,22 @@ +2018-12-17 Jiewen Tan + +[Mac] Layout Test http/wpt/webauthn/public-key-credential-create-success-hid.https.html and http/wpt/webauthn/public-key-credential-get-success-hid.https.html are flaky +https://bugs.webkit.org/show_bug.cgi?id=192061 + +Reviewed by Dewei Zhu. + +Part 3. + +Add some additional temporary logging info to determine if the timer is working as expected. +Once the bug is determined and fixed, we should remove all logging added in this patch. + +* UIProcess/WebAuthentication/AuthenticatorManager.cpp: +(WebKit::AuthenticatorManager::respondReceived): +(WebKit::AuthenticatorManager::initTimeOutTimer): +(WebKit::AuthenticatorManager::timeOutTimerFired): +* UIProcess/WebAuthentication/Mock/MockAuthenticatorManager.cpp: +(WebKit::MockAuthenticatorManager::respondReceivedInternal): + 2018-12-17 Saam barati Enable HTTP and HTTPS proxies on iOS and make it a property of the NSURLSession Modified: trunk/Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.cpp (239322 => 239323) --- trunk/Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.cpp 2018-12-18 06:33:58 UTC (rev 239322) +++ trunk/Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.cpp 2018-12-18 06:37:28 UTC (rev 239323) @@ -191,6 +191,8 @@ if (WTF::holds_alternative(respond)) { m_pendingCompletionHandler(WTFMove(respond)); clearStateAsync(); +// FIXME(192061) +LOG_ERROR("Stop timer."); m_requestTimeOutTimer.stop(); return; } @@ -223,11 +225,16 @@ using namespace AuthenticatorManagerInternal; unsigned timeOutInMsValue = std::min(maxTimeOutValue, timeOutInMs.value_or(maxTimeOutValue)); +// FIXME(192061) +LOG_ERROR("Start timer.");
[webkit-changes] [239322] trunk/Source
Title: [239322] trunk/Source Revision 239322 Author sbar...@apple.com Date 2018-12-17 22:33:58 -0800 (Mon, 17 Dec 2018) Log Message Enable HTTP and HTTPS proxies on iOS and make it a property of the NSURLSession https://bugs.webkit.org/show_bug.cgi?id=192374 Reviewed by Alex Christensen. Source/WebCore/PAL: * pal/spi/cf/CFNetworkSPI.h: Remove the now-unused SPI declaration. Source/WebKit: This patch makes it so that we can use HTTP/HTTPS proxies on iOS as well. To enable on iOS, you can do something like: $ defaults write -g WebKit2HTTPProxy -string "http://localhost:8080" $ defaults write -g WebKit2HTTPSProxy -string "http://localhost:8080" This patch also changes the Proxy to be enabled on a per NSURLSession basis instead of a per process basis. * NetworkProcess/NetworkProcess.cpp: (WebKit::NetworkProcess::initializeNetworkProcess): * NetworkProcess/NetworkSessionCreationParameters.cpp: (WebKit::NetworkSessionCreationParameters::privateSessionParameters): (WebKit::NetworkSessionCreationParameters::encode const): (WebKit::NetworkSessionCreationParameters::decode): * NetworkProcess/NetworkSessionCreationParameters.h: * NetworkProcess/cocoa/NetworkSessionCocoa.mm: (WebKit::proxyDictionary): (WebKit::NetworkSessionCocoa::NetworkSessionCocoa): * NetworkProcess/mac/NetworkProcessMac.mm: (WebKit::NetworkProcess::platformInitializeNetworkProcess): (WebKit::overrideSystemProxies): Deleted. * UIProcess/API/Cocoa/WKWebsiteDataStore.mm: (-[WKWebsiteDataStore _initWithConfiguration:]): * UIProcess/API/Cocoa/_WKWebsiteDataStoreConfiguration.h: * UIProcess/API/Cocoa/_WKWebsiteDataStoreConfiguration.mm: (-[_WKWebsiteDataStoreConfiguration httpProxy]): (-[_WKWebsiteDataStoreConfiguration setHTTPProxy:]): (-[_WKWebsiteDataStoreConfiguration httpsProxy]): (-[_WKWebsiteDataStoreConfiguration setHTTPSProxy:]): * UIProcess/Cocoa/WebProcessPoolCocoa.mm: (WebKit::WebProcessPool::platformInitializeNetworkProcess): * UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm: (WebKit::WebsiteDataStore::parameters): * UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp: (WebKit::WebsiteDataStoreConfiguration::copy): * UIProcess/WebsiteData/WebsiteDataStoreConfiguration.h: (WebKit::WebsiteDataStoreConfiguration::httpProxy const): (WebKit::WebsiteDataStoreConfiguration::setHTTPProxy): (WebKit::WebsiteDataStoreConfiguration::httpsProxy const): (WebKit::WebsiteDataStoreConfiguration::setHTTPSProxy): Modified Paths trunk/Source/WebCore/PAL/ChangeLog trunk/Source/WebCore/PAL/pal/spi/cf/CFNetworkSPI.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp trunk/Source/WebKit/NetworkProcess/NetworkSessionCreationParameters.cpp trunk/Source/WebKit/NetworkProcess/NetworkSessionCreationParameters.h trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm trunk/Source/WebKit/NetworkProcess/mac/NetworkProcessMac.mm trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebsiteDataStore.mm trunk/Source/WebKit/UIProcess/API/Cocoa/_WKWebsiteDataStoreConfiguration.h trunk/Source/WebKit/UIProcess/API/Cocoa/_WKWebsiteDataStoreConfiguration.mm trunk/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm trunk/Source/WebKit/UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStoreConfiguration.h Diff Modified: trunk/Source/WebCore/PAL/ChangeLog (239321 => 239322) --- trunk/Source/WebCore/PAL/ChangeLog 2018-12-18 06:30:34 UTC (rev 239321) +++ trunk/Source/WebCore/PAL/ChangeLog 2018-12-18 06:33:58 UTC (rev 239322) @@ -1,3 +1,14 @@ +2018-12-17 Saam barati + +Enable HTTP and HTTPS proxies on iOS and make it a property of the NSURLSession +https://bugs.webkit.org/show_bug.cgi?id=192374 + + +Reviewed by Alex Christensen. + +* pal/spi/cf/CFNetworkSPI.h: +Remove the now-unused SPI declaration. + 2018-12-17 Simon Fraser Don't use more expensive layer backing store formats when subpixel text antialiasing is not enabled Modified: trunk/Source/WebCore/PAL/pal/spi/cf/CFNetworkSPI.h (239321 => 239322) --- trunk/Source/WebCore/PAL/pal/spi/cf/CFNetworkSPI.h 2018-12-18 06:30:34 UTC (rev 239321) +++ trunk/Source/WebCore/PAL/pal/spi/cf/CFNetworkSPI.h 2018-12-18 06:33:58 UTC (rev 239322) @@ -33,6 +33,7 @@ #if PLATFORM(WIN) || USE(APPLE_INTERNAL_SDK) #include +#include #include #include #include @@ -265,7 +266,6 @@ void CFHTTPCookieStorageAddObserver(CFHTTPCookieStorageRef, CFRunLoopRef, CFStringRef, CFHTTPCookieStorageChangedProcPtr, void*); void CFHTTPCookieStorageRemoveObserver(CFHTTPCookieStorageRef, CFRunLoopRef, CFStringRef, CFHTTPCookieStorageChangedProcPtr, void*); -void _CFNetworkSetOverrideSystemProxySettings(CFDictionaryRef); CFURLCredentialStorageRef CFURLCredentialStorageCreate(CFAllocatorRef); CFURLCredentialRef CFURLCredentialStorageCopyDefaultCredentialForProtectionSpace(CFURLCredentialStorageRef,
[webkit-changes] [239321] trunk/Source/WebKit
Title: [239321] trunk/Source/WebKit Revision 239321 Author wenson_hs...@apple.com Date 2018-12-17 22:30:34 -0800 (Mon, 17 Dec 2018) Log Message Tap highlights should not be shown on iOSMac https://bugs.webkit.org/show_bug.cgi?id=192797 Reviewed by Tim Horton. WKWebViews in iOSMac should avoid painting tap highlights, since tap highlights are not present in the rest of the macOS platform. Simply disable this functionality by bailing in `-[WKContentView _showTapHighlight]`. * UIProcess/ios/WKContentViewInteraction.mm: (-[WKContentView _showTapHighlight]): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm Diff Modified: trunk/Source/WebKit/ChangeLog (239320 => 239321) --- trunk/Source/WebKit/ChangeLog 2018-12-18 05:49:32 UTC (rev 239320) +++ trunk/Source/WebKit/ChangeLog 2018-12-18 06:30:34 UTC (rev 239321) @@ -1,5 +1,19 @@ 2018-12-17 Wenson Hsieh +Tap highlights should not be shown on iOSMac +https://bugs.webkit.org/show_bug.cgi?id=192797 + + +Reviewed by Tim Horton. + +WKWebViews in iOSMac should avoid painting tap highlights, since tap highlights are not present in the rest of +the macOS platform. Simply disable this functionality by bailing in `-[WKContentView _showTapHighlight]`. + +* UIProcess/ios/WKContentViewInteraction.mm: +(-[WKContentView _showTapHighlight]): + +2018-12-17 Wenson Hsieh + Unreviewed, fix the iOSMac engineering build again After r239311, `WebProcessProxy::fullKeyboardAccessEnabled` in `WebProcessProxyIOS.mm` attempts to use Modified: trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm (239320 => 239321) --- trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm 2018-12-18 05:49:32 UTC (rev 239320) +++ trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm 2018-12-18 06:30:34 UTC (rev 239321) @@ -1256,6 +1256,10 @@ - (void)_showTapHighlight { auto shouldPaintTapHighlight = [&](const WebCore::FloatRect& rect) { +#if PLATFORM(IOSMAC) +UNUSED_PARAM(rect); +return NO; +#else static const float highlightPaintThreshold = 0.3; // 30% float highlightArea = 0; for (auto highlightQuad : _tapHighlightInformation.quads) { @@ -1265,6 +1269,7 @@ return false; } return highlightArea < rect.area() * highlightPaintThreshold; +#endif }; if (!shouldPaintTapHighlight(_page->unobscuredContentRect()) && !_showDebugTapHighlightsForFastClicking) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [239320] trunk/Source/WebCore
Title: [239320] trunk/Source/WebCore Revision 239320 Author hironori.fu...@sony.com Date 2018-12-17 21:49:32 -0800 (Mon, 17 Dec 2018) Log Message [Win][Clang] Fix compilation warnings WebCore/platform/graphics directory https://bugs.webkit.org/show_bug.cgi?id=192752 Reviewed by Don Olmstead. No new tests, no behavior changes. * platform/graphics/win/DIBPixelData.cpp: Enclosed bitmapType and bitmapPixelsPerMeter with #ifndef NDEBUG. * platform/graphics/win/FontPlatformDataWin.cpp: (WebCore::FontPlatformData::openTypeTable const): Use ASSERT_UNUSED instead of ASSERT. * platform/graphics/win/GraphicsContextWin.cpp: Removed unused variable 'deg2rad'. * platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp: Removed unused soft links MFCreateSampleGrabberSinkActivate, MFCreateMemoryBuffer and MFCreateSample. (WebCore::MediaPlayerPrivateMediaFoundation::MediaPlayerPrivateMediaFoundation): Reorder the initializer list. (WebCore::MediaPlayerPrivateMediaFoundation::seek): Use ASSERT_UNUSED instead of ASSERT. (WebCore::MediaPlayerPrivateMediaFoundation::setAllChannelVolumes): Ditto. (WebCore::MediaPlayerPrivateMediaFoundation::createSession): Ditto. (WebCore::MediaPlayerPrivateMediaFoundation::endSession): Ditto. (WebCore::MediaPlayerPrivateMediaFoundation::onCreatedMediaSource): Ditto. (WebCore::MediaPlayerPrivateMediaFoundation::Direct3DPresenter::paintCurrentFrame): Added default case. * platform/graphics/win/SimpleFontDataCairoWin.cpp: (WebCore::Font::platformBoundsForGlyph const): Use inner braces to initialize subobjects of MAT2. * platform/graphics/win/SimpleFontDataWin.cpp: Removed unused 'cSmallCapsFontSizeMultiplier'. (WebCore::Font::initGDIFont): Use inner braces to initialize subobjects of MAT2. (WebCore::Font::boundsForGDIGlyph const): Ditto. (WebCore::Font::widthForGDIGlyph const): Ditto. * platform/graphics/win/UniscribeController.cpp: (WebCore::UniscribeController::UniscribeController): Reorder the initializer list. (WebCore::UniscribeController::offsetForPosition): Use parentheses to combine && and ||. (WebCore::UniscribeController::shapeAndPlaceItem): Removed unused 'glyphCount'. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/win/DIBPixelData.cpp trunk/Source/WebCore/platform/graphics/win/FontPlatformDataWin.cpp trunk/Source/WebCore/platform/graphics/win/GraphicsContextWin.cpp trunk/Source/WebCore/platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp trunk/Source/WebCore/platform/graphics/win/SimpleFontDataCairoWin.cpp trunk/Source/WebCore/platform/graphics/win/SimpleFontDataWin.cpp trunk/Source/WebCore/platform/graphics/win/UniscribeController.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (239319 => 239320) --- trunk/Source/WebCore/ChangeLog 2018-12-18 05:31:22 UTC (rev 239319) +++ trunk/Source/WebCore/ChangeLog 2018-12-18 05:49:32 UTC (rev 239320) @@ -1,3 +1,39 @@ +2018-12-17 Fujii Hironori + +[Win][Clang] Fix compilation warnings WebCore/platform/graphics directory +https://bugs.webkit.org/show_bug.cgi?id=192752 + +Reviewed by Don Olmstead. + +No new tests, no behavior changes. + +* platform/graphics/win/DIBPixelData.cpp: +Enclosed bitmapType and bitmapPixelsPerMeter with #ifndef NDEBUG. +* platform/graphics/win/FontPlatformDataWin.cpp: +(WebCore::FontPlatformData::openTypeTable const): Use ASSERT_UNUSED instead of ASSERT. +* platform/graphics/win/GraphicsContextWin.cpp: Removed unused variable 'deg2rad'. +* platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp: +Removed unused soft links MFCreateSampleGrabberSinkActivate, MFCreateMemoryBuffer and MFCreateSample. +(WebCore::MediaPlayerPrivateMediaFoundation::MediaPlayerPrivateMediaFoundation): +Reorder the initializer list. +(WebCore::MediaPlayerPrivateMediaFoundation::seek): Use ASSERT_UNUSED instead of ASSERT. +(WebCore::MediaPlayerPrivateMediaFoundation::setAllChannelVolumes): Ditto. +(WebCore::MediaPlayerPrivateMediaFoundation::createSession): Ditto. +(WebCore::MediaPlayerPrivateMediaFoundation::endSession): Ditto. +(WebCore::MediaPlayerPrivateMediaFoundation::onCreatedMediaSource): Ditto. +(WebCore::MediaPlayerPrivateMediaFoundation::Direct3DPresenter::paintCurrentFrame): Added default case. +* platform/graphics/win/SimpleFontDataCairoWin.cpp: +(WebCore::Font::platformBoundsForGlyph const): Use inner braces to initialize subobjects of MAT2. +* platform/graphics/win/SimpleFontDataWin.cpp: Removed unused 'cSmallCapsFontSizeMultiplier'. +(WebCore::Font::initGDIFont): Use inner braces to initialize subobjects of MAT2. +(WebCore::Font::boundsForGDIGlyph const): Ditto. +(WebCore::Font::widthForGDIGlyph const): Ditto. +* platform/graphics/win/UniscribeController.cpp: +(WebCore::UniscribeController::UniscribeController): +Reorder the initializer
[webkit-changes] [239319] trunk
Title: [239319] trunk Revision 239319 Author eric.carl...@apple.com Date 2018-12-17 21:31:22 -0800 (Mon, 17 Dec 2018) Log Message [MediaStream] A stream's first video frame should be rendered https://bugs.webkit.org/show_bug.cgi?id=192629 Reviewed by Youenn Fablet. Source/WebCore: Test: fast/mediastream/media-stream-renders-first-frame.html * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h: * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm: (WebCore::MediaPlayerPrivateMediaStreamAVFObjC::enqueueVideoSample): (WebCore::MediaPlayerPrivateMediaStreamAVFObjC::ensureLayers): (WebCore::MediaPlayerPrivateMediaStreamAVFObjC::currentDisplayMode const): (WebCore::MediaPlayerPrivateMediaStreamAVFObjC::updateDisplayMode): (WebCore::MediaPlayerPrivateMediaStreamAVFObjC::play): (WebCore::MediaPlayerPrivateMediaStreamAVFObjC::currentReadyState): (WebCore::MediaPlayerPrivateMediaStreamAVFObjC::characteristicsChanged): (WebCore::MediaPlayerPrivateMediaStreamAVFObjC::checkSelectedVideoTrack): (WebCore::MediaPlayerPrivateMediaStreamAVFObjC::paintCurrentFrameInContext): * platform/mediastream/RealtimeMediaSource.cpp: (WebCore::RealtimeMediaSource::size const): * platform/mediastream/mac/AVVideoCaptureSource.mm: (WebCore::AVVideoCaptureSource::processNewFrame): * platform/mediastream/mac/RealtimeIncomingVideoSourceCocoa.mm: (WebCore::RealtimeIncomingVideoSourceCocoa::processNewSample): LayoutTests: * fast/mediastream/MediaStream-video-element-displays-buffer.html: Updated. * fast/mediastream/MediaStream-video-element-video-tracks-disabled-then-enabled-expected.txt: Ditto. * fast/mediastream/MediaStream-video-element-video-tracks-disabled-then-enabled.html: Ditto. * fast/mediastream/media-stream-renders-first-frame-expected.txt: Added. * fast/mediastream/media-stream-renders-first-frame.html: Added. * http/tests/media/media-stream/getusermedia-with-canvas-expected.txt: Removed. * http/tests/media/media-stream/getusermedia-with-canvas.html: Removed. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/fast/mediastream/MediaStream-video-element-displays-buffer.html trunk/LayoutTests/fast/mediastream/MediaStream-video-element-video-tracks-disabled-then-enabled-expected.txt trunk/LayoutTests/fast/mediastream/MediaStream-video-element-video-tracks-disabled-then-enabled.html trunk/LayoutTests/platform/gtk/TestExpectations trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp trunk/Source/WebCore/platform/mediastream/mac/AVVideoCaptureSource.h trunk/Source/WebCore/platform/mediastream/mac/AVVideoCaptureSource.mm trunk/Source/WebCore/platform/mediastream/mac/RealtimeIncomingVideoSourceCocoa.mm Added Paths trunk/LayoutTests/fast/mediastream/media-stream-renders-first-frame-expected.txt trunk/LayoutTests/fast/mediastream/media-stream-renders-first-frame.html Removed Paths trunk/LayoutTests/http/tests/media/media-stream/getusermedia-with-canvas-expected.txt trunk/LayoutTests/http/tests/media/media-stream/getusermedia-with-canvas.html Diff Modified: trunk/LayoutTests/ChangeLog (239318 => 239319) --- trunk/LayoutTests/ChangeLog 2018-12-18 05:23:10 UTC (rev 239318) +++ trunk/LayoutTests/ChangeLog 2018-12-18 05:31:22 UTC (rev 239319) @@ -1,3 +1,19 @@ +2018-12-17 Eric Carlson + +[MediaStream] A stream's first video frame should be rendered +https://bugs.webkit.org/show_bug.cgi?id=192629 + + +Reviewed by Youenn Fablet. + +* fast/mediastream/MediaStream-video-element-displays-buffer.html: Updated. +* fast/mediastream/MediaStream-video-element-video-tracks-disabled-then-enabled-expected.txt: Ditto. +* fast/mediastream/MediaStream-video-element-video-tracks-disabled-then-enabled.html: Ditto. +* fast/mediastream/media-stream-renders-first-frame-expected.txt: Added. +* fast/mediastream/media-stream-renders-first-frame.html: Added. +* http/tests/media/media-stream/getusermedia-with-canvas-expected.txt: Removed. +* http/tests/media/media-stream/getusermedia-with-canvas.html: Removed. + 2018-12-17 Wenson Hsieh [iOS] Focusing a large editable element always scrolls to the top of the element Modified: trunk/LayoutTests/fast/mediastream/MediaStream-video-element-displays-buffer.html (239318 => 239319) --- trunk/LayoutTests/fast/mediastream/MediaStream-video-element-displays-buffer.html 2018-12-18 05:23:10 UTC (rev 239318) +++ trunk/LayoutTests/fast/mediastream/MediaStream-video-element-displays-buffer.html 2018-12-18 05:31:22 UTC (rev 239319) @@ -2,7 +2,6 @@-