[webkit-changes] [233070] trunk/Source/JavaScriptCore
Title: [233070] trunk/Source/_javascript_Core Revision 233070 Author mark@apple.com Date 2018-06-21 20:01:52 -0700 (Thu, 21 Jun 2018) Log Message WebKit (_javascript_Core) compilation error with Clang ≥ 6. https://bugs.webkit.org/show_bug.cgi?id=185947 Reviewed by Saam Barati. Newer Clang versions (due to C++17 support) is not happy with how I implemented conversions between CodeLocation types. We'll fix this by adding a conversion operator for converting between CodeLocation types. * assembler/CodeLocation.h: (JSC::CodeLocationCommon::operator T): Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/assembler/CodeLocation.h Diff Modified: trunk/Source/_javascript_Core/ChangeLog (233069 => 233070) --- trunk/Source/_javascript_Core/ChangeLog 2018-06-22 00:21:11 UTC (rev 233069) +++ trunk/Source/_javascript_Core/ChangeLog 2018-06-22 03:01:52 UTC (rev 233070) @@ -1,3 +1,18 @@ +2018-06-21 Mark Lam + +WebKit (_javascript_Core) compilation error with Clang ≥ 6. +https://bugs.webkit.org/show_bug.cgi?id=185947 + + +Reviewed by Saam Barati. + +Newer Clang versions (due to C++17 support) is not happy with how I implemented +conversions between CodeLocation types. We'll fix this by adding a conversion +operator for converting between CodeLocation types. + +* assembler/CodeLocation.h: +(JSC::CodeLocationCommon::operator T): + 2018-06-21 Saam Barati Do some CoW cleanup Modified: trunk/Source/_javascript_Core/assembler/CodeLocation.h (233069 => 233070) --- trunk/Source/_javascript_Core/assembler/CodeLocation.h 2018-06-22 00:21:11 UTC (rev 233069) +++ trunk/Source/_javascript_Core/assembler/CodeLocation.h 2018-06-22 03:01:52 UTC (rev 233070) @@ -71,6 +71,12 @@ template T dataLocation() const { return Base::template dataLocation(); } +template, T>::value>> +operator T() +{ +return T(MacroAssemblerCodePtr::createFromExecutableAddress(this->executableAddress())); +} + protected: CodeLocationCommon() { ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [233069] trunk/LayoutTests
Title: [233069] trunk/LayoutTests Revision 233069 Author david_fen...@apple.com Date 2018-06-21 17:21:11 -0700 (Thu, 21 Jun 2018) Log Message Skip imported/w3c/web-platform-tests/css/css-display/display-contents-first-letter-002.html. https://bugs.webkit.org/show_bug.cgi?id=186901 Unreviewed test gardening. * TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (233068 => 233069) --- trunk/LayoutTests/ChangeLog 2018-06-21 23:30:22 UTC (rev 233068) +++ trunk/LayoutTests/ChangeLog 2018-06-22 00:21:11 UTC (rev 233069) @@ -1,3 +1,12 @@ +2018-06-21 David Fenton + +Skip imported/w3c/web-platform-tests/css/css-display/display-contents-first-letter-002.html. +https://bugs.webkit.org/show_bug.cgi?id=186901 + +Unreviewed test gardening. + +* TestExpectations: + 2018-06-15 Jer Noble Address fullscreen api CSS env feedback Modified: trunk/LayoutTests/TestExpectations (233068 => 233069) --- trunk/LayoutTests/TestExpectations 2018-06-21 23:30:22 UTC (rev 233068) +++ trunk/LayoutTests/TestExpectations 2018-06-22 00:21:11 UTC (rev 233069) @@ -198,6 +198,8 @@ imported/w3c/web-platform-tests/service-workers/service-worker/websocket.https.html [ Pass Failure ] +webkit.org/b/186901 imported/w3c/web-platform-tests/css/css-display/display-contents-first-letter-002.html [ Skip ] + # Console log lines may appear in a different order so we silence them. imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/location-protocol-setter-non-broken.html [ DumpJSConsoleLogInStdErr ] imported/w3c/web-platform-tests/html/browsers/history/the-location-interface/location-protocol-setter-non-broken-weird.html [ DumpJSConsoleLogInStdErr ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [233068] trunk/Source/WebKit
Title: [233068] trunk/Source/WebKit Revision 233068 Author cdu...@apple.com Date 2018-06-21 16:30:22 -0700 (Thu, 21 Jun 2018) Log Message Unreviewed, rolling out r232995. Seems to have caused flakiness Reverted changeset: "Implement IPC throttling to keep the main thread responsive when a process misbehaves" https://bugs.webkit.org/show_bug.cgi?id=186607 https://trac.webkit.org/changeset/232995 Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Platform/IPC/Connection.cpp trunk/Source/WebKit/Platform/IPC/Connection.h trunk/Source/WebKit/Platform/IPC/mac/ConnectionMac.mm Diff Modified: trunk/Source/WebKit/ChangeLog (233067 => 233068) --- trunk/Source/WebKit/ChangeLog 2018-06-21 23:30:21 UTC (rev 233067) +++ trunk/Source/WebKit/ChangeLog 2018-06-21 23:30:22 UTC (rev 233068) @@ -1,3 +1,16 @@ +2018-06-21 Chris Dumez + +Unreviewed, rolling out r232995. + +Seems to have caused flakiness + +Reverted changeset: + +"Implement IPC throttling to keep the main thread responsive +when a process misbehaves" +https://bugs.webkit.org/show_bug.cgi?id=186607 +https://trac.webkit.org/changeset/232995 + 2018-06-15 Jer Noble Address fullscreen api CSS env feedback Modified: trunk/Source/WebKit/Platform/IPC/Connection.cpp (233067 => 233068) --- trunk/Source/WebKit/Platform/IPC/Connection.cpp 2018-06-21 23:30:21 UTC (rev 233067) +++ trunk/Source/WebKit/Platform/IPC/Connection.cpp 2018-06-21 23:30:22 UTC (rev 233068) @@ -44,11 +44,6 @@ namespace IPC { -#if PLATFORM(COCOA) -// The IPC connection gets killed if the incoming message queue reaches 5 messages before the main thread has a chance to dispatch them. -const size_t maxPendingIncomingMessagesKillingThreshold { 5 }; -#endif - struct Connection::ReplyHandler { RefPtr dispatcher; Function)> handler; @@ -244,7 +239,6 @@ , m_inDispatchMessageCount(0) , m_inDispatchMessageMarkedDispatchWhenWaitingForSyncReplyCount(0) , m_didReceiveInvalidMessage(false) -, m_incomingMessagesThrottler(*this, ::dispatchIncomingMessages) , m_waitingForMessage(nullptr) , m_shouldWaitForSyncReplies(true) { @@ -899,28 +893,11 @@ { { std::lock_guard lock(m_incomingMessagesMutex); - -#if PLATFORM(COCOA) -if (m_wasKilled) -return; - -if (m_incomingMessages.size() >= maxPendingIncomingMessagesKillingThreshold) { -if (kill()) { -RELEASE_LOG_ERROR(IPC, "%p - Connection::enqueueIncomingMessage: Over %lu incoming messages have been queued without the main thread processing them, killing the connection as the remote process seems to be misbehaving", this, maxPendingIncomingMessagesKillingThreshold); -m_incomingMessages.clear(); -} -return; -} -#endif - m_incomingMessages.append(WTFMove(incomingMessage)); - -if (m_incomingMessages.size() != 1) -return; } RunLoop::main().dispatch([protectedThis = makeRef(*this)]() mutable { -protectedThis->dispatchIncomingMessages(); +protectedThis->dispatchOneMessage(); }); } @@ -972,52 +949,10 @@ m_didReceiveInvalidMessage = oldDidReceiveInvalidMessage; } -Connection::MessagesThrottler::MessagesThrottler(Connection& connection, DispatchMessagesFunction dispatchMessages) -: m_dispatchMessagesTimer(RunLoop::main(), , dispatchMessages) -, m_connection(connection) -, m_dispatchMessages(dispatchMessages) +void Connection::dispatchOneMessage() { -ASSERT(RunLoop::isMain()); -} - -void Connection::MessagesThrottler::scheduleMessagesDispatch() -{ -ASSERT(RunLoop::isMain()); - -if (m_throttlingLevel) { -m_dispatchMessagesTimer.startOneShot(0_s); -return; -} -RunLoop::main().dispatch([this, protectedConnection = makeRefPtr(_connection)]() mutable { -(protectedConnection.get()->*m_dispatchMessages)(); -}); -} - -size_t Connection::MessagesThrottler::numberOfMessagesToProcess(size_t totalMessages) -{ -ASSERT(RunLoop::isMain()); - -// Never dispatch more than 600 messages without returning to the run loop, we can go as low as 60 with maximum throttling level. -static const size_t maxIncomingMessagesDispatchingBatchSize { 600 }; -static const unsigned maxThrottlingLevel = 9; - -size_t batchSize = maxIncomingMessagesDispatchingBatchSize / (m_throttlingLevel + 1); - -if (totalMessages > maxIncomingMessagesDispatchingBatchSize) -m_throttlingLevel = std::min(m_throttlingLevel + 1, maxThrottlingLevel); -else if (m_throttlingLevel) ---m_throttlingLevel; - -return std::min(totalMessages, batchSize); -} - -void Connection::dispatchIncomingMessages() -{ -ASSERT(RunLoop::isMain()); - std::unique_ptr message; -size_t messagesToProcess = 0; { std::lock_guard lock(m_incomingMessagesMutex); if
[webkit-changes] [233067] trunk/Source/WebCore/PAL
Title: [233067] trunk/Source/WebCore/PAL Revision 233067 Author ryanhad...@apple.com Date 2018-06-21 16:30:21 -0700 (Thu, 21 Jun 2018) Log Message Unreviewed attempt to fix the build after r233052. * pal/spi/cocoa/AVKitSPI.h: Modified Paths trunk/Source/WebCore/PAL/ChangeLog trunk/Source/WebCore/PAL/pal/spi/cocoa/AVKitSPI.h Diff Modified: trunk/Source/WebCore/PAL/ChangeLog (233066 => 233067) --- trunk/Source/WebCore/PAL/ChangeLog 2018-06-21 23:13:17 UTC (rev 233066) +++ trunk/Source/WebCore/PAL/ChangeLog 2018-06-21 23:30:21 UTC (rev 233067) @@ -1,3 +1,9 @@ +2018-06-21 Ryan Haddad + +Unreviewed attempt to fix the build after r233052. + +* pal/spi/cocoa/AVKitSPI.h: + 2018-06-21 Jer Noble [Fullscreen] Use secondary glyph style for fullscreen controls Modified: trunk/Source/WebCore/PAL/pal/spi/cocoa/AVKitSPI.h (233066 => 233067) --- trunk/Source/WebCore/PAL/pal/spi/cocoa/AVKitSPI.h 2018-06-21 23:13:17 UTC (rev 233066) +++ trunk/Source/WebCore/PAL/pal/spi/cocoa/AVKitSPI.h 2018-06-21 23:30:21 UTC (rev 233067) @@ -33,7 +33,10 @@ #if USE(APPLE_INTERNAL_SDK) +#if !PLATFORM(WATCHOS) && __IPHONE_OS_VERSION_MIN_REQUIRED >= 12 #import +#endif + #import #pragma clang diagnostic push #pragma clang diagnostic ignored "-Wobjc-property-no-attribute" ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [233066] trunk
Title: [233066] trunk Revision 233066 Author jer.no...@apple.com Date 2018-06-21 16:13:17 -0700 (Thu, 21 Jun 2018) Log Message Address fullscreen api CSS env feedback https://bugs.webkit.org/show_bug.cgi?id=186684 Reviewed by Simon Fraser. Source/WebCore: Test: fullscreen/fullscreen-env.html + Update the phishing alert text to be more explicit about the specific threats phishing sites represent. + Make the top inset static, rather than dynamic. + Add bottom, left, and right insets for completeness. + Set the fullscreen animation duration as well as delay. + Notify the page when the controls show and hide. * English.lproj/Localizable.strings: * css/CSSSelector.cpp: (WebCore::CSSSelector::selectorText const): * css/CSSSelector.h: * css/SelectorChecker.cpp: (WebCore::SelectorChecker::checkOne const): * css/SelectorCheckerTestFunctions.h: (WebCore::matchesFullScreenControlsHiddenPseudoClass): * css/SelectorPseudoClassAndCompatibilityElementMap.in: * cssjit/SelectorCompiler.cpp: (WebCore::SelectorCompiler::addPseudoClassType): * dom/ConstantPropertyMap.cpp: (WebCore::ConstantPropertyMap::nameForProperty const): (WebCore::ConstantPropertyMap::updateConstantsForFullscreenInsets): (WebCore::ConstantPropertyMap::didChangeFullscreenInsets): (WebCore::ConstantPropertyMap::setFullscreenAutoHideDuration): (WebCore::ConstantPropertyMap::setFullscreenInsetTop): Deleted. * dom/ConstantPropertyMap.h: * dom/Document.cpp: (WebCore::Document::areFullscreenControlsHidden const): (WebCore::Document::setFullscreenControlsHidden): * dom/Document.h: * page/Page.cpp: (WebCore::Page::setFullscreenInsets): (WebCore::Page::setFullscreenAutoHideDuration): (WebCore::Page::setFullscreenControlsHidden): (WebCore::Page::setFullscreenInsetTop): Deleted. * page/Page.h: (WebCore::Page::fullscreenInsets const): * testing/Internals.cpp: (WebCore::Internals::resetToConsistentState): (WebCore::Internals::setFullscreenInsets): (WebCore::Internals::setFullscreenAutoHideDuration): (WebCore::Internals::setFullscreenControlsHidden): (WebCore::Internals::setFullscreenInsetTop): Deleted. * testing/Internals.h: * testing/Internals.idl: Source/WebKit: + Update the phishing alert text to be more explicit about the specific threats phishing sites represent. + Make the top inset static, rather than dynamic. + Add bottom, left, and right insets for completeness. + Set the fullscreen animation duration as well as delay. + Notify the page when the controls show and hide. * UIProcess/WebFullScreenManagerProxy.cpp: (WebKit::WebFullScreenManagerProxy::setFullscreenInsets): (WebKit::WebFullScreenManagerProxy::setFullscreenAutoHideTiming): (WebKit::WebFullScreenManagerProxy::setFullscreenControlsHidden): (WebKit::WebFullScreenManagerProxy::setFullscreenInsetTop): Deleted. (WebKit::WebFullScreenManagerProxy::setFullscreenAutoHideDelay): Deleted. * UIProcess/WebFullScreenManagerProxy.h: * UIProcess/ios/fullscreen/WKFullScreenViewController.mm: (-[WKFullScreenViewController showUI]): (-[WKFullScreenViewController hideUI]): (-[WKFullScreenViewController viewWillAppear:]): (-[WKFullScreenViewController _effectiveFullscreenInsets]): (-[WKFullScreenViewController _updateWebViewFullscreenInsets]): (-[WKFullScreenViewController _showPhishingAlert]): (-[WKFullScreenViewController _effectiveFullscreenInsetTop]): Deleted. * WebProcess/FullScreen/WebFullScreenManager.cpp: (WebKit::WebFullScreenManager::didExitFullScreen): (WebKit::WebFullScreenManager::setFullscreenInsets): (WebKit::WebFullScreenManager::setFullscreenAutoHideTiming): (WebKit::WebFullScreenManager::setFullscreenControlsHidden): (WebKit::WebFullScreenManager::setFullscreenInsetTop): Deleted. (WebKit::WebFullScreenManager::setFullscreenAutoHideDelay): Deleted. * WebProcess/FullScreen/WebFullScreenManager.h: * WebProcess/FullScreen/WebFullScreenManager.messages.in: LayoutTests: * fullscreen/fullscreen-env-expected.txt: Added. * fullscreen/fullscreen-env.html: Added. * fullscreen/fullscreen-inset-top-expected.txt: Removed. * fullscreen/fullscreen-inset-top.html: Removed. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/English.lproj/Localizable.strings trunk/Source/WebCore/css/CSSSelector.cpp trunk/Source/WebCore/css/CSSSelector.h trunk/Source/WebCore/css/SelectorChecker.cpp trunk/Source/WebCore/css/SelectorCheckerTestFunctions.h trunk/Source/WebCore/css/SelectorPseudoClassAndCompatibilityElementMap.in trunk/Source/WebCore/cssjit/SelectorCompiler.cpp trunk/Source/WebCore/dom/ConstantPropertyMap.cpp trunk/Source/WebCore/dom/ConstantPropertyMap.h trunk/Source/WebCore/dom/Document.cpp trunk/Source/WebCore/dom/Document.h trunk/Source/WebCore/page/Page.cpp trunk/Source/WebCore/page/Page.h trunk/Source/WebCore/testing/Internals.cpp trunk/Source/WebCore/testing/Internals.h trunk/Source/WebCore/testing/Internals.idl trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/WebFullScreenManagerProxy.cpp
[webkit-changes] [233065] trunk/Source/JavaScriptCore
Title: [233065] trunk/Source/_javascript_Core Revision 233065 Author sbar...@apple.com Date 2018-06-21 15:57:09 -0700 (Thu, 21 Jun 2018) Log Message Do some CoW cleanup https://bugs.webkit.org/show_bug.cgi?id=186896 Reviewed by Mark Lam. * bytecode/UnlinkedCodeBlock.h: (JSC::UnlinkedCodeBlock::decompressArrayAllocationProfile): We don't need to WTFMove() ints * dfg/DFGByteCodeParser.cpp: (JSC::DFG::ByteCodeParser::parseBlock): remove a TODO. * runtime/JSObject.cpp: (JSC::JSObject::putByIndex): We were checking for isCopyOnWrite even after we converted away from CoW in above code. (JSC::JSObject::ensureWritableInt32Slow): Model this in the same way the other ensureWritableXSlow are modeled. Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/bytecode/UnlinkedCodeBlock.h trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp trunk/Source/_javascript_Core/runtime/JSObject.cpp Diff Modified: trunk/Source/_javascript_Core/ChangeLog (233064 => 233065) --- trunk/Source/_javascript_Core/ChangeLog 2018-06-21 22:51:00 UTC (rev 233064) +++ trunk/Source/_javascript_Core/ChangeLog 2018-06-21 22:57:09 UTC (rev 233065) @@ -1,3 +1,25 @@ +2018-06-21 Saam Barati + +Do some CoW cleanup +https://bugs.webkit.org/show_bug.cgi?id=186896 + +Reviewed by Mark Lam. + +* bytecode/UnlinkedCodeBlock.h: +(JSC::UnlinkedCodeBlock::decompressArrayAllocationProfile): +We don't need to WTFMove() ints + +* dfg/DFGByteCodeParser.cpp: +(JSC::DFG::ByteCodeParser::parseBlock): +remove a TODO. + +* runtime/JSObject.cpp: +(JSC::JSObject::putByIndex): +We were checking for isCopyOnWrite even after we converted away +from CoW in above code. +(JSC::JSObject::ensureWritableInt32Slow): +Model this in the same way the other ensureWritableXSlow are modeled. + 2018-06-20 Keith Miller flattenDictionaryStruture needs to zero inline storage. Modified: trunk/Source/_javascript_Core/bytecode/UnlinkedCodeBlock.h (233064 => 233065) --- trunk/Source/_javascript_Core/bytecode/UnlinkedCodeBlock.h 2018-06-21 22:51:00 UTC (rev 233064) +++ trunk/Source/_javascript_Core/bytecode/UnlinkedCodeBlock.h 2018-06-21 22:57:09 UTC (rev 233065) @@ -309,7 +309,7 @@ { unsigned profile = "" << 8) >> 8; IndexingType recommendedIndexingType = compressedProfile >> 24; -return std::make_tuple(WTFMove(profile), WTFMove(recommendedIndexingType)); +return { profile, recommendedIndexingType }; } unsigned numberOfObjectAllocationProfiles() { return m_objectAllocationProfileCount; } Modified: trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp (233064 => 233065) --- trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp 2018-06-21 22:51:00 UTC (rev 233064) +++ trunk/Source/_javascript_Core/dfg/DFGByteCodeParser.cpp 2018-06-21 22:57:09 UTC (rev 233065) @@ -4595,7 +4595,6 @@ JSImmutableButterfly* immutableButterfly = frozen->cast(); NewArrayBufferData data { }; data.indexingMode = immutableButterfly->indexingMode(); -// TODO: Do I need this? data.vectorLengthHint = immutableButterfly->toButterfly()->vectorLength(); set(VirtualRegister(bytecode.dst()), addToGraph(NewArrayBuffer, OpInfo(frozen), OpInfo(data.asQuadWord))); Modified: trunk/Source/_javascript_Core/runtime/JSObject.cpp (233064 => 233065) --- trunk/Source/_javascript_Core/runtime/JSObject.cpp 2018-06-21 22:51:00 UTC (rev 233064) +++ trunk/Source/_javascript_Core/runtime/JSObject.cpp 2018-06-21 22:57:09 UTC (rev 233065) @@ -851,7 +851,7 @@ } case ALL_INT32_INDEXING_TYPES: { -if (!value.isInt32() || isCopyOnWrite(thisObject->indexingMode())) { +if (!value.isInt32()) { thisObject->convertInt32ForValue(vm, value); return putByIndex(cell, exec, propertyName, value, shouldThrow); } @@ -1478,9 +1478,10 @@ { ASSERT(inherits(vm, info())); -if (isCopyOnWrite(indexingMode()) && hasInt32(indexingMode())) { +if (isCopyOnWrite(indexingMode())) { convertFromCopyOnWrite(vm); -return butterfly()->contiguousInt32(); +if (hasInt32(indexingMode())) +return butterfly()->contiguousInt32(); } if (structure(vm)->hijacksIndexingHeader()) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [233064] trunk/Tools
Title: [233064] trunk/Tools Revision 233064 Author dba...@webkit.org Date 2018-06-21 15:51:00 -0700 (Thu, 21 Jun 2018) Log Message EWS for security bugs https://bugs.webkit.org/show_bug.cgi?id=186291 Substitute webkit.status-api-key for webkit.status_api_key as Git configuration variables can only consist of alphanumeric characters and underscores (_) per the second paragraph of section Configuration File of : The variable names are case-insensitive, allow only alphanumeric characters and -, and must start with an alphabetic character. * Scripts/webkitpy/tool/main.py: (WebKitPatch._status_server_api_key_from_git): Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/webkitpy/tool/main.py Diff Modified: trunk/Tools/ChangeLog (233063 => 233064) --- trunk/Tools/ChangeLog 2018-06-21 22:32:12 UTC (rev 233063) +++ trunk/Tools/ChangeLog 2018-06-21 22:51:00 UTC (rev 233064) @@ -4,6 +4,22 @@ https://bugs.webkit.org/show_bug.cgi?id=186291 +Substitute webkit.status-api-key for webkit.status_api_key as Git configuration variables can +only consist of alphanumeric characters and underscores (_) per the second paragraph of section +Configuration File of : + + The variable names are case-insensitive, allow only alphanumeric characters and -, and must + start with an alphabetic character. + +* Scripts/webkitpy/tool/main.py: +(WebKitPatch._status_server_api_key_from_git): + +2018-06-21 Daniel Bates + +EWS for security bugs +https://bugs.webkit.org/show_bug.cgi?id=186291 + + In r232979, I inadvertently removed a line of code in _parse_authorized_api_keys() to define a local called api_keys. Add this code back. Modified: trunk/Tools/Scripts/webkitpy/tool/main.py (233063 => 233064) --- trunk/Tools/Scripts/webkitpy/tool/main.py 2018-06-21 22:32:12 UTC (rev 233063) +++ trunk/Tools/Scripts/webkitpy/tool/main.py 2018-06-21 22:51:00 UTC (rev 233064) @@ -98,7 +98,7 @@ try: if not Git.in_working_directory(os.getcwd()): return None -return Git.read_git_config('webkit.status_api_key') +return Git.read_git_config('webkit.status-api-key') except OSError as e: # Catch and ignore OSError exceptions such as "no such file # or directory" (OSError errno 2), which imply that the Git ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [233063] branches/safari-606.1.20.40-branch/Source
Title: [233063] branches/safari-606.1.20.40-branch/Source Revision 233063 Author bshaf...@apple.com Date 2018-06-21 15:32:12 -0700 (Thu, 21 Jun 2018) Log Message Versioning. Modified Paths branches/safari-606.1.20.40-branch/Source/_javascript_Core/Configurations/Version.xcconfig branches/safari-606.1.20.40-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig branches/safari-606.1.20.40-branch/Source/WebCore/Configurations/Version.xcconfig branches/safari-606.1.20.40-branch/Source/WebCore/PAL/Configurations/Version.xcconfig branches/safari-606.1.20.40-branch/Source/WebInspectorUI/Configurations/Version.xcconfig branches/safari-606.1.20.40-branch/Source/WebKit/Configurations/Version.xcconfig branches/safari-606.1.20.40-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig Diff Modified: branches/safari-606.1.20.40-branch/Source/_javascript_Core/Configurations/Version.xcconfig (233062 => 233063) --- branches/safari-606.1.20.40-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2018-06-21 22:30:24 UTC (rev 233062) +++ branches/safari-606.1.20.40-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2018-06-21 22:32:12 UTC (rev 233063) @@ -25,7 +25,7 @@ MINOR_VERSION = 1; TINY_VERSION = 20; MICRO_VERSION = 40; -NANO_VERSION = 3; +NANO_VERSION = 4; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. Modified: branches/safari-606.1.20.40-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig (233062 => 233063) --- branches/safari-606.1.20.40-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2018-06-21 22:30:24 UTC (rev 233062) +++ branches/safari-606.1.20.40-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2018-06-21 22:32:12 UTC (rev 233063) @@ -25,7 +25,7 @@ MINOR_VERSION = 1; TINY_VERSION = 20; MICRO_VERSION = 40; -NANO_VERSION = 3; +NANO_VERSION = 4; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. Modified: branches/safari-606.1.20.40-branch/Source/WebCore/Configurations/Version.xcconfig (233062 => 233063) --- branches/safari-606.1.20.40-branch/Source/WebCore/Configurations/Version.xcconfig 2018-06-21 22:30:24 UTC (rev 233062) +++ branches/safari-606.1.20.40-branch/Source/WebCore/Configurations/Version.xcconfig 2018-06-21 22:32:12 UTC (rev 233063) @@ -25,7 +25,7 @@ MINOR_VERSION = 1; TINY_VERSION = 20; MICRO_VERSION = 40; -NANO_VERSION = 3; +NANO_VERSION = 4; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. Modified: branches/safari-606.1.20.40-branch/Source/WebCore/PAL/Configurations/Version.xcconfig (233062 => 233063) --- branches/safari-606.1.20.40-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2018-06-21 22:30:24 UTC (rev 233062) +++ branches/safari-606.1.20.40-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2018-06-21 22:32:12 UTC (rev 233063) @@ -25,7 +25,7 @@ MINOR_VERSION = 1; TINY_VERSION = 20; MICRO_VERSION = 40; -NANO_VERSION = 3; +NANO_VERSION = 4; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration, see below. Modified: branches/safari-606.1.20.40-branch/Source/WebInspectorUI/Configurations/Version.xcconfig (233062 => 233063) --- branches/safari-606.1.20.40-branch/Source/WebInspectorUI/Configurations/Version.xcconfig 2018-06-21 22:30:24 UTC (rev 233062) +++ branches/safari-606.1.20.40-branch/Source/WebInspectorUI/Configurations/Version.xcconfig 2018-06-21 22:32:12 UTC (rev 233063) @@ -2,7 +2,7 @@ MINOR_VERSION = 1; TINY_VERSION = 20; MICRO_VERSION = 40; -NANO_VERSION = 3; +NANO_VERSION = 4; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The system version prefix is based on the current system version. Modified: branches/safari-606.1.20.40-branch/Source/WebKit/Configurations/Version.xcconfig (233062 => 233063) --- branches/safari-606.1.20.40-branch/Source/WebKit/Configurations/Version.xcconfig 2018-06-21 22:30:24 UTC (rev 233062) +++ branches/safari-606.1.20.40-branch/Source/WebKit/Configurations/Version.xcconfig 2018-06-21 22:32:12 UTC (rev 233063) @@ -25,7 +25,7 @@ MINOR_VERSION = 1; TINY_VERSION = 20; MICRO_VERSION = 40; -NANO_VERSION = 3; +NANO_VERSION = 4; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION); // The bundle version and short version string are set based on the current build configuration,
[webkit-changes] [233062] tags/Safari-606.1.20.40.3/
Title: [233062] tags/Safari-606.1.20.40.3/ Revision 233062 Author bshaf...@apple.com Date 2018-06-21 15:30:24 -0700 (Thu, 21 Jun 2018) Log Message Tag Safari-606.1.20.40.3. Added Paths tags/Safari-606.1.20.40.3/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [233061] trunk/Tools
Title: [233061] trunk/Tools Revision 233061 Author dba...@webkit.org Date 2018-06-21 15:14:01 -0700 (Thu, 21 Jun 2018) Log Message EWS for security bugs https://bugs.webkit.org/show_bug.cgi?id=186291 In r232979, I inadvertently removed a line of code in _parse_authorized_api_keys() to define a local called api_keys. Add this code back. * QueueStatusServer/config/authorization.py: (_parse_authorized_api_keys): Modified Paths trunk/Tools/ChangeLog trunk/Tools/QueueStatusServer/config/authorization.py Diff Modified: trunk/Tools/ChangeLog (233060 => 233061) --- trunk/Tools/ChangeLog 2018-06-21 21:42:59 UTC (rev 233060) +++ trunk/Tools/ChangeLog 2018-06-21 22:14:01 UTC (rev 233061) @@ -1,5 +1,17 @@ 2018-06-21 Daniel Bates +EWS for security bugs +https://bugs.webkit.org/show_bug.cgi?id=186291 + + +In r232979, I inadvertently removed a line of code in _parse_authorized_api_keys() to define a local called api_keys. +Add this code back. + +* QueueStatusServer/config/authorization.py: +(_parse_authorized_api_keys): + +2018-06-21 Daniel Bates + EWS should not try to post comments or upload result archives to security-sensitive bugs unless it has access https://bugs.webkit.org/show_bug.cgi?id=186831 Modified: trunk/Tools/QueueStatusServer/config/authorization.py (233060 => 233061) --- trunk/Tools/QueueStatusServer/config/authorization.py 2018-06-21 21:42:59 UTC (rev 233060) +++ trunk/Tools/QueueStatusServer/config/authorization.py 2018-06-21 22:14:01 UTC (rev 233061) @@ -31,6 +31,7 @@ def _parse_authorized_api_keys(file): +api_keys = set() for line in file: line = line.strip() if not line or line.startswith("#"): # Skip empty lines and comments ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [233060] trunk/Source/WebKit
Title: [233060] trunk/Source/WebKit Revision 233060 Author commit-qu...@webkit.org Date 2018-06-21 14:42:59 -0700 (Thu, 21 Jun 2018) Log Message Unreviewed, rolling out r232884. https://bugs.webkit.org/show_bug.cgi?id=186891 "Introduced assertion failure in ~DisplayRefreshMonitorMac()." (Requested by perarne on #webkit). Reverted changeset: "DisplayRefreshMonitorMac should hold a weak pointer to WebPage." https://bugs.webkit.org/show_bug.cgi?id=186683 https://trac.webkit.org/changeset/232884 Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/WebProcess/WebPage/WebPage.h trunk/Source/WebKit/WebProcess/WebPage/mac/DrawingAreaMac.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (233059 => 233060) --- trunk/Source/WebKit/ChangeLog 2018-06-21 21:23:12 UTC (rev 233059) +++ trunk/Source/WebKit/ChangeLog 2018-06-21 21:42:59 UTC (rev 233060) @@ -1,3 +1,18 @@ +2018-06-21 Commit Queue + +Unreviewed, rolling out r232884. +https://bugs.webkit.org/show_bug.cgi?id=186891 + +"Introduced assertion failure in ~DisplayRefreshMonitorMac()." +(Requested by perarne on #webkit). + +Reverted changeset: + +"DisplayRefreshMonitorMac should hold a weak pointer to +WebPage." +https://bugs.webkit.org/show_bug.cgi?id=186683 +https://trac.webkit.org/changeset/232884 + 2018-06-21 Jer Noble [Fullscreen] Page sometimes ends up with an incorrect zoom level after entering fullscreen Modified: trunk/Source/WebKit/WebProcess/WebPage/WebPage.h (233059 => 233060) --- trunk/Source/WebKit/WebProcess/WebPage/WebPage.h 2018-06-21 21:23:12 UTC (rev 233059) +++ trunk/Source/WebKit/WebProcess/WebPage/WebPage.h 2018-06-21 21:42:59 UTC (rev 233060) @@ -246,7 +246,7 @@ using SnapshotOptions = uint32_t; using WKEventModifiers = uint32_t; -class WebPage : public API::ObjectImpl, public IPC::MessageReceiver, public IPC::MessageSender, public CanMakeWeakPtr { +class WebPage : public API::ObjectImpl, public IPC::MessageReceiver, public IPC::MessageSender { public: static Ref create(uint64_t pageID, WebPageCreationParameters&&); virtual ~WebPage(); Modified: trunk/Source/WebKit/WebProcess/WebPage/mac/DrawingAreaMac.cpp (233059 => 233060) --- trunk/Source/WebKit/WebProcess/WebPage/mac/DrawingAreaMac.cpp 2018-06-21 21:23:12 UTC (rev 233059) +++ trunk/Source/WebKit/WebProcess/WebPage/mac/DrawingAreaMac.cpp 2018-06-21 21:42:59 UTC (rev 233060) @@ -57,7 +57,7 @@ bool hasRequestedRefreshCallback() const override { return m_hasSentMessage; } -WeakPtr m_webPage; +Ref m_webPage; bool m_hasSentMessage { false }; unsigned m_observerID; static unsigned m_counterID; @@ -69,7 +69,7 @@ DisplayRefreshMonitorMac::DisplayRefreshMonitorMac(PlatformDisplayID displayID, WebPage& webPage) : DisplayRefreshMonitor(displayID) -, m_webPage(makeWeakPtr(webPage)) +, m_webPage(webPage) , m_observerID(++m_counterID) { } @@ -76,19 +76,11 @@ DisplayRefreshMonitorMac::~DisplayRefreshMonitorMac() { -ASSERT(m_webPage); -if (!m_webPage) -return; - m_webPage->send(Messages::WebPageProxy::StopDisplayLink(m_observerID)); } bool DisplayRefreshMonitorMac::requestRefreshCallback() { -ASSERT(m_webPage); -if (!m_webPage) -return false; - if (!isActive()) return false; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [233059] trunk/Source
Title: [233059] trunk/Source Revision 233059 Author jer.no...@apple.com Date 2018-06-21 14:23:12 -0700 (Thu, 21 Jun 2018) Log Message [Fullscreen] Page sometimes ends up with an incorrect zoom level after entering fullscreen https://bugs.webkit.org/show_bug.cgi?id=186822 Reviewed by Simon Fraser. Source/WebCore: * dom/Document.cpp: (WebCore::Document::setOverrideViewportArguments): (WebCore::Document::updateViewportArguments): * dom/Document.h: Source/WebKit: Set the minimum zoom, maximum zoom, zoom bouncing, and user scalability settings of the WKWebView's UIScrollView upon entering fullscreen, and restore those same settings upon exit. Override the viewport arguments upon entering fullscreen, restore them upon exit. * Platform/IPC/ArgumentCoder.h: * Shared/WebCoreArgumentCoders.cpp: (IPC::ArgumentCoder::decode): * Shared/WebCoreArgumentCoders.h: * UIProcess/WebPageProxy.h: (WebKit::WebPageProxy::forceAlwaysUserScalable const): * UIProcess/ios/WebPageProxyIOS.mm: (WebKit::WebPageProxy::setOverrideViewportArguments): * UIProcess/ios/fullscreen/WKFullScreenWindowControllerIOS.mm: (WebKit::WKWebViewState::applyTo): (WebKit::WKWebViewState::store): (-[WKFullScreenWindowController enterFullScreen]): (-[WKFullScreenWindowController beganExitFullScreenWithInitialFrame:finalFrame:]): * WebProcess/WebPage/WebPage.h: (WebKit::WebPage::forceAlwaysUserScalable const): * WebProcess/WebPage/WebPage.messages.in: * WebProcess/WebPage/ios/WebPageIOS.mm: (WebKit::WebPage::setOverrideViewportArguments): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/Document.cpp trunk/Source/WebCore/dom/Document.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Platform/IPC/ArgumentCoder.h trunk/Source/WebKit/Shared/WebCoreArgumentCoders.cpp trunk/Source/WebKit/Shared/WebCoreArgumentCoders.h trunk/Source/WebKit/UIProcess/WebPageProxy.h trunk/Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm trunk/Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenWindowControllerIOS.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/WebCore/ChangeLog (233058 => 233059) --- trunk/Source/WebCore/ChangeLog 2018-06-21 21:11:28 UTC (rev 233058) +++ trunk/Source/WebCore/ChangeLog 2018-06-21 21:23:12 UTC (rev 233059) @@ -1,3 +1,15 @@ +2018-06-21 Jer Noble + +[Fullscreen] Page sometimes ends up with an incorrect zoom level after entering fullscreen +https://bugs.webkit.org/show_bug.cgi?id=186822 + +Reviewed by Simon Fraser. + +* dom/Document.cpp: +(WebCore::Document::setOverrideViewportArguments): +(WebCore::Document::updateViewportArguments): +* dom/Document.h: + 2018-06-20 Said Abou-Hallawa RenderSVGInline has to be inline always regardless of its css display value Modified: trunk/Source/WebCore/dom/Document.cpp (233058 => 233059) --- trunk/Source/WebCore/dom/Document.cpp 2018-06-21 21:11:28 UTC (rev 233058) +++ trunk/Source/WebCore/dom/Document.cpp 2018-06-21 21:23:12 UTC (rev 233059) @@ -3425,6 +3425,15 @@ page()->chrome().dispatchDisabledAdaptationsDidChange(m_disabledAdaptations); } +void Document::setOverrideViewportArguments(const std::optional& viewportArguments) +{ +if (viewportArguments == m_overrideViewportArguments) +return; + +m_overrideViewportArguments = viewportArguments; +updateViewportArguments(); +} + void Document::processViewport(const String& features, ViewportArguments::Type origin) { ASSERT(!features.isNull()); @@ -3451,7 +3460,7 @@ #ifndef NDEBUG m_didDispatchViewportPropertiesChanged = true; #endif -page()->chrome().dispatchViewportPropertiesDidChange(m_viewportArguments); +page()->chrome().dispatchViewportPropertiesDidChange(m_overrideViewportArguments ? m_overrideViewportArguments.value() : m_viewportArguments); page()->chrome().didReceiveDocType(*frame()); } } Modified: trunk/Source/WebCore/dom/Document.h (233058 => 233059) --- trunk/Source/WebCore/dom/Document.h 2018-06-21 21:11:28 UTC (rev 233058) +++ trunk/Source/WebCore/dom/Document.h 2018-06-21 21:23:12 UTC (rev 233059) @@ -391,6 +391,9 @@ void setViewportArguments(const ViewportArguments& viewportArguments) { m_viewportArguments = viewportArguments; } ViewportArguments viewportArguments() const { return m_viewportArguments; } + +WEBCORE_EXPORT void setOverrideViewportArguments(const std::optional&); + OptionSet disabledAdaptations() const { return m_disabledAdaptations; } #ifndef NDEBUG bool didDispatchViewportPropertiesChanged() const { return m_didDispatchViewportPropertiesChanged; } @@ -1715,6 +1718,7 @@ Timer m_loadEventDelayTimer; ViewportArguments m_viewportArguments; +std::optional m_overrideViewportArguments; OptionSet m_disabledAdaptations; DocumentTiming m_documentTiming;
[webkit-changes] [233058] trunk/Tools
Title: [233058] trunk/Tools Revision 233058 Author dba...@webkit.org Date 2018-06-21 14:11:28 -0700 (Thu, 21 Jun 2018) Log Message EWS should not try to post comments or upload result archives to security-sensitive bugs unless it has access https://bugs.webkit.org/show_bug.cgi?id=186831 Reviewed by Lucas Forschler. Following r232979 security-sensitive patches are uploaded to the status server so that they can be retrieved and processed by EWS bots without the need for Bugzilla security bug access. Although the EWS machinery is robust against unexpected exceptions, including exceptions raised when interacting with Bugzilla bugs/attachments with insufficient credentials, we should not depend on such defenses as they cause webkit- patch to log a message for the "unexpected" exception. We should reserve such logging for truly unexpected exceptions that indicate a programming mistake that we need to fix. * Scripts/webkitpy/tool/commands/earlywarningsystem.py: (AbstractEarlyWarningSystem._post_reject_message_on_bug): Bail out early if we cannot access the bug. * Scripts/webkitpy/tool/commands/queues.py: (PatchProcessingQueue._can_access_bug): Added. (PatchProcessingQueue._upload_results_archive_for_patch): Only add an attachment if we can access the bug. (CommitQueue.process_work_item): Only post a rejection comment (i.e. call CommitterValidatorreject_patch_from_commit_queue()) if we can access the bug. Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/webkitpy/tool/commands/earlywarningsystem.py trunk/Tools/Scripts/webkitpy/tool/commands/queues.py Diff Modified: trunk/Tools/ChangeLog (233057 => 233058) --- trunk/Tools/ChangeLog 2018-06-21 20:58:52 UTC (rev 233057) +++ trunk/Tools/ChangeLog 2018-06-21 21:11:28 UTC (rev 233058) @@ -1,3 +1,29 @@ +2018-06-21 Daniel Bates + +EWS should not try to post comments or upload result archives to security-sensitive +bugs unless it has access +https://bugs.webkit.org/show_bug.cgi?id=186831 + +Reviewed by Lucas Forschler. + +Following r232979 security-sensitive patches are uploaded to the status server so +that they can be retrieved and processed by EWS bots without the need for Bugzilla +security bug access. Although the EWS machinery is robust against unexpected exceptions, +including exceptions raised when interacting with Bugzilla bugs/attachments with +insufficient credentials, we should not depend on such defenses as they cause webkit- +patch to log a message for the "unexpected" exception. We should reserve such logging +for truly unexpected exceptions that indicate a programming mistake that we need to fix. + +* Scripts/webkitpy/tool/commands/earlywarningsystem.py: +(AbstractEarlyWarningSystem._post_reject_message_on_bug): Bail out early if we cannot +access the bug. +* Scripts/webkitpy/tool/commands/queues.py: +(PatchProcessingQueue._can_access_bug): Added. +(PatchProcessingQueue._upload_results_archive_for_patch): Only add an attachment if we +can access the bug. +(CommitQueue.process_work_item): Only post a rejection comment (i.e. call CommitterValidatorreject_patch_from_commit_queue()) +if we can access the bug. + 2018-06-21 Lucas Forschler bisect-builds --list not showing all builds Modified: trunk/Tools/Scripts/webkitpy/tool/commands/earlywarningsystem.py (233057 => 233058) --- trunk/Tools/Scripts/webkitpy/tool/commands/earlywarningsystem.py 2018-06-21 20:58:52 UTC (rev 233057) +++ trunk/Tools/Scripts/webkitpy/tool/commands/earlywarningsystem.py 2018-06-21 21:11:28 UTC (rev 233058) @@ -89,6 +89,8 @@ message += "\n\n%s" % extra_message_text # FIXME: We might want to add some text about rejecting from the commit-queue in # the case where patch.commit_queue() isn't already set to '-'. +if not self._can_access_bug(patch.bug_id()): +return if self.watchers: tool.bugs.add_cc_to_bug(patch.bug_id(), self.watchers) tool.bugs.set_flag_on_attachment(patch.id(), "commit-queue", "-", message) Modified: trunk/Tools/Scripts/webkitpy/tool/commands/queues.py (233057 => 233058) --- trunk/Tools/Scripts/webkitpy/tool/commands/queues.py 2018-06-21 20:58:52 UTC (rev 233057) +++ trunk/Tools/Scripts/webkitpy/tool/commands/queues.py 2018-06-21 21:11:28 UTC (rev 233058) @@ -299,6 +299,13 @@ self._create_port() +# FIXME: Bugzilla member functions should perform this check as they can do it as part of the same +# network request. This would also avoid bugs where the access of the Bugzilla bug changes between +# the time-of-check (calling this function) and time-of-use (when we ask Bugzilla to perform the +# actual operation). +def _can_access_bug(self, bug_id): +return bool(self._tool.bugs.fetch_bug(bug_id)) + def _upload_results_archive_for_patch(self,
[webkit-changes] [233057] trunk/Tools
Title: [233057] trunk/Tools Revision 233057 Author lforsch...@apple.com Date 2018-06-21 13:58:52 -0700 (Thu, 21 Jun 2018) Log Message Fix for https://bugs.webkit.org/show_bug.cgi?id=185790 Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/bisect-builds Diff Modified: trunk/Tools/ChangeLog (233056 => 233057) --- trunk/Tools/ChangeLog 2018-06-21 20:54:32 UTC (rev 233056) +++ trunk/Tools/ChangeLog 2018-06-21 20:58:52 UTC (rev 233057) @@ -1,3 +1,22 @@ +2018-06-21 Lucas Forschler + +bisect-builds --list not showing all builds +https://bugs.webkit.org/show_bug.cgi?id=185790 + +The AWS Gateway API call into dynamoDB is limited to returning 1MB of query data. Our archive set has overgrown this limit, +causing us to retrieve a truncated list of results. Fortunately, when this limit is reached, dynamoDB returns a +"LastEvaluatedKey", which can be used to continue the query in another request. + +This patch teaches bisect-build to pass along this key when needed. The backend api was updated from v2 to v2_1 to support +this new querystring option. Any existing code using v2 will not be affected. + +Reviewed by Aakash Jain. + +* Scripts/bisect-builds: +(get_api_url): added optional LastEvaluatedKey argument, which will append the query string to the base api url. +(fetch_revision_list): Added to allow a recursive call which will query until we retrieve every item requested. +(main): teach how to use fetch_revision_list. + 2018-06-21 Keith Rollin check-webkit-style should warn about exported inline functions Modified: trunk/Tools/Scripts/bisect-builds (233056 => 233057) --- trunk/Tools/Scripts/bisect-builds 2018-06-21 20:54:32 UTC (rev 233056) +++ trunk/Tools/Scripts/bisect-builds 2018-06-21 20:58:52 UTC (rev 233057) @@ -38,7 +38,7 @@ import urllib2 import urlparse -REST_API_URL = 'https://q1tzqfy48e.execute-api.us-west-2.amazonaws.com/v2/' +REST_API_URL = 'https://q1tzqfy48e.execute-api.us-west-2.amazonaws.com/v2_1/' REST_API_ENDPOINT = 'archives/' REST_API_MINIFIED_ENDPOINT = 'minified-archives/' @@ -93,7 +93,7 @@ # end bisect helpers -def get_api_url(options): +def get_api_url(options, LastEvaluatedKey=None): if options.full: base_url = urlparse.urljoin(REST_API_URL, REST_API_ENDPOINT) else: @@ -100,6 +100,10 @@ base_url = urlparse.urljoin(REST_API_URL, REST_API_MINIFIED_ENDPOINT) api_url = urlparse.urljoin(base_url, '-'.join([options.platform, options.architecture, options.configuration])) +if LastEvaluatedKey: +querystring = urllib2.quote(json.dumps(LastEvaluatedKey)) +api_url += '?ExclusiveStartKey=' + querystring + return api_url @@ -223,15 +227,22 @@ print(revision_list) exit(0) -def main(options): -validate_options(options) - -url = "" +def fetch_revision_list(options, LastEvaluatedKey=None): +url = "" LastEvaluatedKey) r = urllib2.urlopen(url) data = "" - revision_list = get_sorted_revisions(data) +if 'LastEvaluatedKey' in data['revisions']: +LastEvaluatedKey = data['revisions']['LastEvaluatedKey'] +revision_list += fetch_revision_list(options, LastEvaluatedKey) + +return revision_list + +def main(options): +validate_options(options) +revision_list = fetch_revision_list(options) + if options.list: print_list_and_exit(revision_list, options) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [233056] trunk
Title: [233056] trunk Revision 233056 Author s...@apple.com Date 2018-06-21 13:54:32 -0700 (Thu, 21 Jun 2018) Log Message RenderSVGInline has to be inline always regardless of its css display value https://bugs.webkit.org/show_bug.cgi?id=186656 Reviewed by Zalan Bujtas. Source/WebCore: According to https://www.w3.org/TR/SVG2/text.html#TextLayout, the element has to be laid out as if it were a block element and any , , and descendants were inline elements. If a css rule, which contains the property "display: block;", is applied to any of children of a element, this property has to be ignored. We currently ignore this property in RenderSVGInline::updateFromStyle() by forcing setInline(true). But we do not do the same thing in RenderTreeBuilder::normalizeTreeAfterStyleChange(). In fact we allow making the children of the element to be non-inline. This puts the render tree in weired state and causes many assertions to fire while laying out RenderSVGText. Test: svg/dom/svg-inline-text-display-block-crash.html * rendering/updating/RenderTreeBuilder.cpp: (WebCore::RenderTreeBuilder::normalizeTreeAfterStyleChange): LayoutTests: * svg/dom/svg-inline-text-display-block-crash-expected.txt: Added. * svg/dom/svg-inline-text-display-block-crash.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/rendering/updating/RenderTreeBuilder.cpp Added Paths trunk/LayoutTests/svg/dom/svg-inline-text-display-block-crash-expected.txt trunk/LayoutTests/svg/dom/svg-inline-text-display-block-crash.html Diff Modified: trunk/LayoutTests/ChangeLog (233055 => 233056) --- trunk/LayoutTests/ChangeLog 2018-06-21 20:34:14 UTC (rev 233055) +++ trunk/LayoutTests/ChangeLog 2018-06-21 20:54:32 UTC (rev 233056) @@ -1,3 +1,13 @@ +2018-06-20 Said Abou-Hallawa + +RenderSVGInline has to be inline always regardless of its css display value +https://bugs.webkit.org/show_bug.cgi?id=186656 + +Reviewed by Zalan Bujtas. + +* svg/dom/svg-inline-text-display-block-crash-expected.txt: Added. +* svg/dom/svg-inline-text-display-block-crash.html: Added. + 2018-06-20 Zalan Bujtas Do not reuse generated inline renderer for the first letter. Added: trunk/LayoutTests/svg/dom/svg-inline-text-display-block-crash-expected.txt (0 => 233056) --- trunk/LayoutTests/svg/dom/svg-inline-text-display-block-crash-expected.txt (rev 0) +++ trunk/LayoutTests/svg/dom/svg-inline-text-display-block-crash-expected.txt 2018-06-21 20:54:32 UTC (rev 233056) @@ -0,0 +1,4 @@ +This test passes if it doesn't crash. + + + Added: trunk/LayoutTests/svg/dom/svg-inline-text-display-block-crash.html (0 => 233056) --- trunk/LayoutTests/svg/dom/svg-inline-text-display-block-crash.html (rev 0) +++ trunk/LayoutTests/svg/dom/svg-inline-text-display-block-crash.html 2018-06-21 20:54:32 UTC (rev 233056) @@ -0,0 +1,21 @@ + + tspan { +float: right; +display: block; +} + + +This test passes if it doesn't crash. + + + + + + + +if (window.testRunner) +testRunner.dumpAsText(); +input.setSelectionRange(0, 1); +tspan.style.float = "none"; + + Modified: trunk/Source/WebCore/ChangeLog (233055 => 233056) --- trunk/Source/WebCore/ChangeLog 2018-06-21 20:34:14 UTC (rev 233055) +++ trunk/Source/WebCore/ChangeLog 2018-06-21 20:54:32 UTC (rev 233056) @@ -1,3 +1,29 @@ +2018-06-20 Said Abou-Hallawa + +RenderSVGInline has to be inline always regardless of its css display value +https://bugs.webkit.org/show_bug.cgi?id=186656 + +Reviewed by Zalan Bujtas. + +According to https://www.w3.org/TR/SVG2/text.html#TextLayout, the +element has to be laid out as if it were a block element and any , +, and descendants were inline elements. + +If a css rule, which contains the property "display: block;", is applied +to any of children of a element, this property has to be ignored. + +We currently ignore this property in RenderSVGInline::updateFromStyle() +by forcing setInline(true). But we do not do the same thing in +RenderTreeBuilder::normalizeTreeAfterStyleChange(). In fact we allow +making the children of the element to be non-inline. This puts +the render tree in weired state and causes many assertions to fire while +laying out RenderSVGText. + +Test: svg/dom/svg-inline-text-display-block-crash.html + +* rendering/updating/RenderTreeBuilder.cpp: +(WebCore::RenderTreeBuilder::normalizeTreeAfterStyleChange): + 2018-06-20 Zalan Bujtas Do not reuse generated inline renderer for the first letter. Modified: trunk/Source/WebCore/rendering/updating/RenderTreeBuilder.cpp (233055 => 233056) --- trunk/Source/WebCore/rendering/updating/RenderTreeBuilder.cpp 2018-06-21
[webkit-changes] [233055] trunk
Title: [233055] trunk Revision 233055 Author za...@apple.com Date 2018-06-21 13:34:14 -0700 (Thu, 21 Jun 2018) Log Message Do not reuse generated inline renderer for the first letter. https://bugs.webkit.org/show_bug.cgi?id=186657 Reviewed by Simon Fraser. Source/WebCore: When the first letter pseudo element is present, we construct a dedicated subtree for its content like this: foobar -> with ::first-letter on the DIV RenderBlock SPAN RenderInline RenderInline (generated wrapper for the first letter content) RenderText (fist letter content) RenderText (remaining text content) "display: contents" on the forces us not to construct a RenderInline for the (or just come up with a wrapper at best). FirstLetter::createRenderers logic needs to check for such cases and pick the correct parent for the first letter subtree accordingly. Test: fast/text/first-letter-with-display-contents-crash.html imported/w3c/web-platform-tests/css/css-display/display-contents-first-letter-002.html is not crashing anymore either. * rendering/updating/RenderTreeBuilderFirstLetter.cpp: (WebCore::RenderTreeBuilder::FirstLetter::createRenderers): LayoutTests: * fast/text/first-letter-with-display-contents-crash-expected.txt: Added. * fast/text/first-letter-with-display-contents-crash.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/rendering/updating/RenderTreeBuilderFirstLetter.cpp Added Paths trunk/LayoutTests/fast/text/first-letter-with-display-contents-crash-expected.txt trunk/LayoutTests/fast/text/first-letter-with-display-contents-crash.html Diff Modified: trunk/LayoutTests/ChangeLog (233054 => 233055) --- trunk/LayoutTests/ChangeLog 2018-06-21 20:10:15 UTC (rev 233054) +++ trunk/LayoutTests/ChangeLog 2018-06-21 20:34:14 UTC (rev 233055) @@ -1,3 +1,14 @@ +2018-06-20 Zalan Bujtas + +Do not reuse generated inline renderer for the first letter. +https://bugs.webkit.org/show_bug.cgi?id=186657 + + +Reviewed by Simon Fraser. + +* fast/text/first-letter-with-display-contents-crash-expected.txt: Added. +* fast/text/first-letter-with-display-contents-crash.html: Added. + 2018-06-21 Chris Dumez JSPerformanceObserverCallback creates a GC strongly-referenced Function that is never cleaned up Added: trunk/LayoutTests/fast/text/first-letter-with-display-contents-crash-expected.txt (0 => 233055) --- trunk/LayoutTests/fast/text/first-letter-with-display-contents-crash-expected.txt (rev 0) +++ trunk/LayoutTests/fast/text/first-letter-with-display-contents-crash-expected.txt 2018-06-21 20:34:14 UTC (rev 233055) @@ -0,0 +1 @@ +Pass if no crash Added: trunk/LayoutTests/fast/text/first-letter-with-display-contents-crash.html (0 => 233055) --- trunk/LayoutTests/fast/text/first-letter-with-display-contents-crash.html (rev 0) +++ trunk/LayoutTests/fast/text/first-letter-with-display-contents-crash.html 2018-06-21 20:34:14 UTC (rev 233055) @@ -0,0 +1,22 @@ + + + +This tests that we don't crash on first letter with display contents. + +body::first-letter { +opacity: 0.2; +} +span { + display: contents; + color: red; +} + + + +Pass if no crash + +if (window.testRunner) +testRunner.dumpAsText(); + + + \ No newline at end of file Modified: trunk/Source/WebCore/ChangeLog (233054 => 233055) --- trunk/Source/WebCore/ChangeLog 2018-06-21 20:10:15 UTC (rev 233054) +++ trunk/Source/WebCore/ChangeLog 2018-06-21 20:34:14 UTC (rev 233055) @@ -1,3 +1,29 @@ +2018-06-20 Zalan Bujtas + +Do not reuse generated inline renderer for the first letter. +https://bugs.webkit.org/show_bug.cgi?id=186657 + + +Reviewed by Simon Fraser. + +When the first letter pseudo element is present, we construct a dedicated subtree for its content like this: + +foobar -> with ::first-letter on the +DIV RenderBlock +SPAN RenderInline +RenderInline (generated wrapper for the first letter content) +RenderText (fist letter content) +RenderText (remaining text content) + +"display: contents" on the forces us not to construct a RenderInline for the (or just come up with a wrapper at best). +FirstLetter::createRenderers logic needs to check for such cases and pick the correct parent for the first letter subtree accordingly. + +Test: fast/text/first-letter-with-display-contents-crash.html + imported/w3c/web-platform-tests/css/css-display/display-contents-first-letter-002.html is not crashing anymore either. + +* rendering/updating/RenderTreeBuilderFirstLetter.cpp: +(WebCore::RenderTreeBuilder::FirstLetter::createRenderers): + 2018-06-21 Chris Dumez JSPerformanceObserverCallback creates a GC strongly-referenced Function that is never cleaned up
[webkit-changes] [233054] trunk/Tools
Title: [233054] trunk/Tools Revision 233054 Author krol...@apple.com Date 2018-06-21 13:10:15 -0700 (Thu, 21 Jun 2018) Log Message check-webkit-style should warn about exported inline functions https://bugs.webkit.org/show_bug.cgi?id=186861 Reviewed by Brent Fulgham. When checking binaries compiled with LTO enabled, WebKit's check-for-weak-vtables-and-externals script can complain about exported inline functions. For instance, in Source/WebCore/page/scrolling/ScrollingTree.h, the following: WEBCORE_EXPORT virtual void reportSynchronousScrollingReasonsChanged(MonotonicTime, SynchronousScrollingReasons) { } WEBCORE_EXPORT virtual void reportExposedUnfilledArea(MonotonicTime, unsigned /* unfilledArea */) { } Can result in the following error messages: ERROR: WebCore has a weak external symbol in it (.../OpenSource/WebKitBuild/Release/WebCore.framework/Versions/A/WebCore) ERROR: A weak external symbol is generated when a symbol is defined in multiple compilation units and is also marked as being exported from the library. ERROR: A common cause of weak external symbols is when an inline function is listed in the linker export file. ERROR: symbol __ZN7WebCore13ScrollingTree25reportExposedUnfilledAreaEN3WTF13MonotonicTimeEj ERROR: symbol __ZN7WebCore13ScrollingTree40reportSynchronousScrollingReasonsChangedEN3WTF13MonotonicTimeEj Unfortunately, these errors are only emitted when LTO is enabled, meaning that a developer could check-in a file that will fail an LTO build if they don't build with that option locally. Therefore, try to head this off by updating check-webkit-style to identify and warn about these cases (which includes when an export macro is applied directly to an inline method as well as when an inline method is part of an exported class). * Scripts/webkitpy/style/checkers/cpp.py: (_FunctionState.begin): (_FunctionState.export_macro): (_ClassInfo.__init__): (check_for_non_standard_constructs): (check_function_definition): (process_line): (CppChecker): * Scripts/webkitpy/style/checkers/cpp_unittest.py: (FunctionDetectionTest.perform_function_detection): (FunctionDetectionTest.test_webcore_export): Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/webkitpy/style/checkers/cpp.py trunk/Tools/Scripts/webkitpy/style/checkers/cpp_unittest.py Diff Modified: trunk/Tools/ChangeLog (233053 => 233054) --- trunk/Tools/ChangeLog 2018-06-21 19:04:02 UTC (rev 233053) +++ trunk/Tools/ChangeLog 2018-06-21 20:10:15 UTC (rev 233054) @@ -1,3 +1,47 @@ +2018-06-21 Keith Rollin + +check-webkit-style should warn about exported inline functions +https://bugs.webkit.org/show_bug.cgi?id=186861 + + +Reviewed by Brent Fulgham. + +When checking binaries compiled with LTO enabled, WebKit's +check-for-weak-vtables-and-externals script can complain about +exported inline functions. For instance, in +Source/WebCore/page/scrolling/ScrollingTree.h, the following: + +WEBCORE_EXPORT virtual void reportSynchronousScrollingReasonsChanged(MonotonicTime, SynchronousScrollingReasons) { } +WEBCORE_EXPORT virtual void reportExposedUnfilledArea(MonotonicTime, unsigned /* unfilledArea */) { } + +Can result in the following error messages: + +ERROR: WebCore has a weak external symbol in it (.../OpenSource/WebKitBuild/Release/WebCore.framework/Versions/A/WebCore) +ERROR: A weak external symbol is generated when a symbol is defined in multiple compilation units and is also marked as being exported from the library. +ERROR: A common cause of weak external symbols is when an inline function is listed in the linker export file. +ERROR: symbol __ZN7WebCore13ScrollingTree25reportExposedUnfilledAreaEN3WTF13MonotonicTimeEj +ERROR: symbol __ZN7WebCore13ScrollingTree40reportSynchronousScrollingReasonsChangedEN3WTF13MonotonicTimeEj + +Unfortunately, these errors are only emitted when LTO is enabled, +meaning that a developer could check-in a file that will fail an LTO +build if they don't build with that option locally. Therefore, try to +head this off by updating check-webkit-style to identify and warn +about these cases (which includes when an export macro is applied +directly to an inline method as well as when an inline method is part +of an exported class). + +* Scripts/webkitpy/style/checkers/cpp.py: +(_FunctionState.begin): +(_FunctionState.export_macro): +(_ClassInfo.__init__): +(check_for_non_standard_constructs): +(check_function_definition): +(process_line): +(CppChecker): +* Scripts/webkitpy/style/checkers/cpp_unittest.py: +(FunctionDetectionTest.perform_function_detection): +(FunctionDetectionTest.test_webcore_export): + 2018-06-21 Aakash Jain [ews-build] unit-tests fail when run from another directory Modified:
[webkit-changes] [233053] trunk
Title: [233053] trunk Revision 233053 Author cdu...@apple.com Date 2018-06-21 12:04:02 -0700 (Thu, 21 Jun 2018) Log Message JSPerformanceObserverCallback creates a GC strongly-referenced Function that is never cleaned up https://bugs.webkit.org/show_bug.cgi?id=186873 Reviewed by Simon Fraser. Source/WebCore: Add [IsWeakCallback] to PerformanceObserverCallback interface so that the generated JSPerformanceObserverCallback uses a JSC::Weak instead of a JSC::Strong to store the js function. To keep the function alive, add [JSCustomMarkFunction] to PerformanceObserver interface and have its visitAdditionalChildren() visit the callback's js function. Finally, because we want the callback to still be called even if the JS does not keep the PerformanceObserver wrapper alive, add [CustomIsReachable] to PerformanceObserver interface and have its isReachableFromOpaqueRoots() return true if the observer is registered (i.e. it may need to call the callback in the future). I have confirmed locally, that the Performance / PerformanceObserver / Document objects properly get destroyed if I navigate away from a page that had a performance observer and trigger a memory pressure warning. Also, `notifyutil -p com.apple.WebKit.showAllDocuments` no longer shows the old document. Tests: performance-api/performance-observer-callback-after-gc.html performance-api/performance-observer-no-document-leak.html * Sources.txt: * WebCore.xcodeproj/project.pbxproj: * bindings/js/JSPerformanceObserverCustom.cpp: Added. (WebCore::JSPerformanceObserver::visitAdditionalChildren): (WebCore::JSPerformanceObserverOwner::isReachableFromOpaqueRoots): * bindings/js/ScriptController.cpp: * page/PerformanceObserver.cpp: (WebCore::PerformanceObserver::disassociate): * page/PerformanceObserver.h: (WebCore::PerformanceObserver::isRegistered const): (WebCore::PerformanceObserver::callback): * page/PerformanceObserver.idl: * page/PerformanceObserverCallback.h: * page/PerformanceObserverCallback.idl: LayoutTests: * performance-api/performance-observer-callback-after-gc-expected.txt: Added. * performance-api/performance-observer-callback-after-gc.html: Added. Add layout test to make sure that a performance observer's callback still gets called, even if the JS does not keep the performance observer alive. * performance-api/performance-observer-no-document-leak-expected.txt: Added. * performance-api/performance-observer-no-document-leak.html: Added. * performance-api/resources/performance-observer-no-document-leak-frame.html: Added. Add layout test coverage to make sure the document does not leak if PerformanceObserver was used. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Sources.txt trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj trunk/Source/WebCore/bindings/js/ScriptController.cpp trunk/Source/WebCore/page/PerformanceObserver.cpp trunk/Source/WebCore/page/PerformanceObserver.h trunk/Source/WebCore/page/PerformanceObserver.idl trunk/Source/WebCore/page/PerformanceObserverCallback.h trunk/Source/WebCore/page/PerformanceObserverCallback.idl Added Paths trunk/LayoutTests/performance-api/performance-observer-callback-after-gc-expected.txt trunk/LayoutTests/performance-api/performance-observer-callback-after-gc.html trunk/LayoutTests/performance-api/performance-observer-no-document-leak-expected.txt trunk/LayoutTests/performance-api/performance-observer-no-document-leak.html trunk/LayoutTests/performance-api/resources/performance-observer-no-document-leak-frame.html trunk/Source/WebCore/bindings/js/JSPerformanceObserverCustom.cpp Diff Modified: trunk/LayoutTests/ChangeLog (233052 => 233053) --- trunk/LayoutTests/ChangeLog 2018-06-21 18:59:12 UTC (rev 233052) +++ trunk/LayoutTests/ChangeLog 2018-06-21 19:04:02 UTC (rev 233053) @@ -1,3 +1,22 @@ +2018-06-21 Chris Dumez + +JSPerformanceObserverCallback creates a GC strongly-referenced Function that is never cleaned up +https://bugs.webkit.org/show_bug.cgi?id=186873 + + +Reviewed by Simon Fraser. + +* performance-api/performance-observer-callback-after-gc-expected.txt: Added. +* performance-api/performance-observer-callback-after-gc.html: Added. +Add layout test to make sure that a performance observer's callback still gets called, even if +the JS does not keep the performance observer alive. + +* performance-api/performance-observer-no-document-leak-expected.txt: Added. +* performance-api/performance-observer-no-document-leak.html: Added. +* performance-api/resources/performance-observer-no-document-leak-frame.html: Added. +Add layout test coverage to make sure the document does not leak if PerformanceObserver was +used. + 2018-06-20 Antoine Quint [Web Animations] Make imported/mozilla/css-animations/test_animation-ready.html pass reliably Added:
[webkit-changes] [233052] trunk/Source
Title: [233052] trunk/Source Revision 233052 Author jer.no...@apple.com Date 2018-06-21 11:59:12 -0700 (Thu, 21 Jun 2018) Log Message [Fullscreen] Use secondary glyph style for fullscreen controls https://bugs.webkit.org/show_bug.cgi?id=186862 Reviewed by Tim Horton. Source/WebCore/PAL: * pal/spi/cocoa/AVKitSPI.h: Source/WebKit: Adopt AVBackgroundView, and use its predefined enums to set the material and tint styles for the fullscreen controls. * UIProcess/ios/fullscreen/WKFullScreenViewController.mm: (-[WKFullScreenViewController loadView]): * UIProcess/ios/fullscreen/WKFullscreenStackView.h: * UIProcess/ios/fullscreen/WKFullscreenStackView.mm: (-[WKFullscreenStackView init]): (-[WKFullscreenStackView dealloc]): (-[WKFullscreenStackView addArrangedSubview:applyingMaterialStyle:tintEffectStyle:]): (-[WKFullscreenStackView layoutSubviews]): (+[WKFullscreenStackView baseEffects]): Deleted. (+[WKFullscreenStackView configureView:forTintEffectWithColor:filterType:]): Deleted. (+[WKFullscreenStackView configureView:withBackgroundFillOfColor:opacity:filter:]): Deleted. (+[WKFullscreenStackView secondaryMaterialOverlayView]): Deleted. (+[WKFullscreenStackView applyPrimaryGlyphTintToView:]): Deleted. (+[WKFullscreenStackView applySecondaryGlyphTintToView:]): Deleted. (-[WKFullscreenStackView initWithArrangedSubviews:axis:]): Deleted. (-[WKFullscreenStackView setTargetViewForSecondaryMaterialOverlay:]): Deleted. (-[WKFullscreenStackView contentView]): Deleted. (-[WKFullscreenStackView _setArrangedSubviews:axis:]): Deleted. (-[WKFullscreenStackView setBounds:]): Deleted. (-[WKFullscreenStackView updateConstraints]): Deleted. Modified Paths trunk/Source/WebCore/PAL/ChangeLog trunk/Source/WebCore/PAL/pal/spi/cocoa/AVKitSPI.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenViewController.mm trunk/Source/WebKit/UIProcess/ios/fullscreen/WKFullscreenStackView.h trunk/Source/WebKit/UIProcess/ios/fullscreen/WKFullscreenStackView.mm Diff Modified: trunk/Source/WebCore/PAL/ChangeLog (233051 => 233052) --- trunk/Source/WebCore/PAL/ChangeLog 2018-06-21 18:54:45 UTC (rev 233051) +++ trunk/Source/WebCore/PAL/ChangeLog 2018-06-21 18:59:12 UTC (rev 233052) @@ -1,3 +1,13 @@ +2018-06-21 Jer Noble + +[Fullscreen] Use secondary glyph style for fullscreen controls +https://bugs.webkit.org/show_bug.cgi?id=186862 + + +Reviewed by Tim Horton. + +* pal/spi/cocoa/AVKitSPI.h: + 2018-06-15 Jonathan Bedard Complex text handling should opt out of bounded text layout (follow-up fix) Modified: trunk/Source/WebCore/PAL/pal/spi/cocoa/AVKitSPI.h (233051 => 233052) --- trunk/Source/WebCore/PAL/pal/spi/cocoa/AVKitSPI.h 2018-06-21 18:54:45 UTC (rev 233051) +++ trunk/Source/WebCore/PAL/pal/spi/cocoa/AVKitSPI.h 2018-06-21 18:59:12 UTC (rev 233052) @@ -33,6 +33,7 @@ #if USE(APPLE_INTERNAL_SDK) +#import #import #pragma clang diagnostic push #pragma clang diagnostic ignored "-Wobjc-property-no-attribute" @@ -90,6 +91,21 @@ #else +NS_ASSUME_NONNULL_BEGIN + +@interface AVBackgroundView : UIView +@property (nonatomic) BOOL automaticallyDrawsRoundedCorners; +typedef NS_ENUM(NSInteger, AVBackgroundViewMaterialStyle) { +AVBackgroundViewMaterialStylePrimary, +AVBackgroundViewMaterialStyleSecondary +}; +typedef NS_ENUM(NSInteger, AVBackgroundViewTintEffectStyle) { +AVBackgroundViewTintEffectStylePrimary, +AVBackgroundViewTintEffectStyleSecondary +}; +- (void)addSubview:(UIView *)subview applyingMaterialStyle:(AVBackgroundViewMaterialStyle)materialStyle tintEffectStyle:(AVBackgroundViewTintEffectStyle)tintEffectStyle; +@end + @interface AVPlayerController : UIResponder @end @@ -108,8 +124,6 @@ @property (NS_NONATOMIC_IOSONLY, readonly) AVPlayerControllerStatus status; @end -NS_ASSUME_NONNULL_BEGIN - @class AVPlayerLayer; @interface AVPictureInPicturePlayerLayerView : UIView Modified: trunk/Source/WebKit/ChangeLog (233051 => 233052) --- trunk/Source/WebKit/ChangeLog 2018-06-21 18:54:45 UTC (rev 233051) +++ trunk/Source/WebKit/ChangeLog 2018-06-21 18:59:12 UTC (rev 233052) @@ -1,5 +1,37 @@ 2018-06-21 Jer Noble +[Fullscreen] Use secondary glyph style for fullscreen controls +https://bugs.webkit.org/show_bug.cgi?id=186862 + + +Reviewed by Tim Horton. + +Adopt AVBackgroundView, and use its predefined enums to set the material and tint styles for +the fullscreen controls. + +* UIProcess/ios/fullscreen/WKFullScreenViewController.mm: +(-[WKFullScreenViewController loadView]): +* UIProcess/ios/fullscreen/WKFullscreenStackView.h: +* UIProcess/ios/fullscreen/WKFullscreenStackView.mm: +(-[WKFullscreenStackView init]): +(-[WKFullscreenStackView dealloc]): +(-[WKFullscreenStackView addArrangedSubview:applyingMaterialStyle:tintEffectStyle:]): +(-[WKFullscreenStackView layoutSubviews]): +
[webkit-changes] [233051] trunk
Title: [233051] trunk Revision 233051 Author grao...@webkit.org Date 2018-06-21 11:54:45 -0700 (Thu, 21 Jun 2018) Log Message [Web Animations] Make imported/mozilla/css-animations/test_animation-ready.html pass reliably https://bugs.webkit.org/show_bug.cgi?id=183830 Reviewed by Dean Jackson. LayoutTests/imported/mozilla: Mark progressions in the Mozilla CSS Animations tests. * css-animations/test_animation-ready-expected.txt: Source/WebCore: The CSS Animations Level 2 spec explains how the Web Animations API and CSS Animations interact and requires pending styles changes on the target element of a CSS Animation to be flushed when using a Web Animations API on it in order to ensure that any animation- CSS property is accounted for. * animation/CSSAnimation.cpp: (WebCore::CSSAnimation::bindingsStartTime const): (WebCore::CSSAnimation::setBindingsStartTime): (WebCore::CSSAnimation::bindingsCurrentTime const): (WebCore::CSSAnimation::setBindingsCurrentTime): (WebCore::CSSAnimation::bindingsPlayState const): (WebCore::CSSAnimation::bindingsPending const): (WebCore::CSSAnimation::bindingsReady): (WebCore::CSSAnimation::bindingsFinished): (WebCore::CSSAnimation::bindingsPlay): (WebCore::CSSAnimation::bindingsPause): (WebCore::CSSAnimation::flushPendingStyleChanges const): * animation/CSSAnimation.h: * animation/WebAnimation.h: (WebCore::WebAnimation::bindingsPlayState const): (WebCore::WebAnimation::bindingsPending const): (WebCore::WebAnimation::bindingsReady): (WebCore::WebAnimation::bindingsFinished): (WebCore::WebAnimation::bindingsPlay): (WebCore::WebAnimation::bindingsPause): * animation/WebAnimation.idl: LayoutTests: This test now passes reliably. * TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/TestExpectations trunk/LayoutTests/imported/mozilla/ChangeLog trunk/LayoutTests/imported/mozilla/css-animations/test_animation-ready-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/animation/CSSAnimation.cpp trunk/Source/WebCore/animation/CSSAnimation.h trunk/Source/WebCore/animation/WebAnimation.h trunk/Source/WebCore/animation/WebAnimation.idl Diff Modified: trunk/LayoutTests/ChangeLog (233050 => 233051) --- trunk/LayoutTests/ChangeLog 2018-06-21 18:51:35 UTC (rev 233050) +++ trunk/LayoutTests/ChangeLog 2018-06-21 18:54:45 UTC (rev 233051) @@ -1,3 +1,15 @@ +2018-06-20 Antoine Quint + +[Web Animations] Make imported/mozilla/css-animations/test_animation-ready.html pass reliably +https://bugs.webkit.org/show_bug.cgi?id=183830 + + +Reviewed by Dean Jackson. + +This test now passes reliably. + +* TestExpectations: + 2018-06-21 Ryan Haddad Update TestExpectations for http/wpt/service-workers/third-party-registration.html. Modified: trunk/LayoutTests/TestExpectations (233050 => 233051) --- trunk/LayoutTests/TestExpectations 2018-06-21 18:51:35 UTC (rev 233050) +++ trunk/LayoutTests/TestExpectations 2018-06-21 18:54:45 UTC (rev 233051) @@ -1927,7 +1927,6 @@ webkit.org/b/181888 imported/w3c/web-platform-tests/web-animations/timing-model/animation-effects/current-iteration.html [ Pass Failure ] webkit.org/b/183826 imported/mozilla/css-animations/test_animation-pausing.html [ Pass Failure Timeout ] -webkit.org/b/183830 imported/mozilla/css-animations/test_animation-ready.html [ Pass Failure Timeout ] webkit.org/b/183834 imported/mozilla/css-animations/test_animation-starttime.html [ Pass Failure Timeout ] webkit.org/b/183836 imported/mozilla/css-animations/test_animations-dynamic-changes.html [ Pass Failure Timeout ] webkit.org/b/183837 imported/mozilla/css-transitions/test_document-get-animations.html [ Pass Failure Timeout ] Modified: trunk/LayoutTests/imported/mozilla/ChangeLog (233050 => 233051) --- trunk/LayoutTests/imported/mozilla/ChangeLog 2018-06-21 18:51:35 UTC (rev 233050) +++ trunk/LayoutTests/imported/mozilla/ChangeLog 2018-06-21 18:54:45 UTC (rev 233051) @@ -1,5 +1,17 @@ 2018-06-20 Antoine Quint +[Web Animations] Make imported/mozilla/css-animations/test_animation-ready.html pass reliably +https://bugs.webkit.org/show_bug.cgi?id=183830 + + +Reviewed by Dean Jackson. + +Mark progressions in the Mozilla CSS Animations tests. + +* css-animations/test_animation-ready-expected.txt: + +2018-06-20 Antoine Quint + [Web Animations] Make imported/mozilla/css-transitions/test_element-get-animations.html pass reliably https://bugs.webkit.org/show_bug.cgi?id=183841 Modified: trunk/LayoutTests/imported/mozilla/css-animations/test_animation-ready-expected.txt (233050 => 233051) --- trunk/LayoutTests/imported/mozilla/css-animations/test_animation-ready-expected.txt 2018-06-21 18:51:35 UTC (rev 233050) +++ trunk/LayoutTests/imported/mozilla/css-animations/test_animation-ready-expected.txt 2018-06-21 18:54:45 UTC (rev 233051) @@ -1,9 +1,9 @@ -FAIL A new ready promise is created when
[webkit-changes] [233050] trunk/Tools
Title: [233050] trunk/Tools Revision 233050 Author aakash_j...@apple.com Date 2018-06-21 11:51:35 -0700 (Thu, 21 Jun 2018) Log Message [ews-build] unit-tests fail when run from another directory https://bugs.webkit.org/show_bug.cgi?id=186872 Reviewed by Lucas Forschler. * BuildSlaveSupport/ews-build/loadConfig.py: (loadBuilderConfig): Add support for passing master_prefix_path. * BuildSlaveSupport/ews-build/loadConfig_unittest.py: (ConfigDotJSONTest.test_configuration): Set master_prefix_path as current directory. Modified Paths trunk/Tools/BuildSlaveSupport/ews-build/loadConfig.py trunk/Tools/BuildSlaveSupport/ews-build/loadConfig_unittest.py trunk/Tools/ChangeLog Diff Modified: trunk/Tools/BuildSlaveSupport/ews-build/loadConfig.py (233049 => 233050) --- trunk/Tools/BuildSlaveSupport/ews-build/loadConfig.py 2018-06-21 18:47:46 UTC (rev 233049) +++ trunk/Tools/BuildSlaveSupport/ews-build/loadConfig.py 2018-06-21 18:51:35 UTC (rev 233050) @@ -22,6 +22,7 @@ import json +import os import re from buildbot.scheduler import AnyBranchScheduler, Periodic, Dependent, Triggerable, Nightly @@ -35,9 +36,9 @@ STEP_NAME_LENGTH_LIMIT = 50 -def loadBuilderConfig(c, use_localhost_worker=False): -config = json.load(open('config.json')) -passwords = json.load(open('passwords.json')) +def loadBuilderConfig(c, use_localhost_worker=False, master_prefix_path='./'): +config = json.load(open(os.path.join(master_prefix_path, 'config.json'))) +passwords = json.load(open(os.path.join(master_prefix_path, 'passwords.json'))) checkWorkersAndBuildersForConsistency(config['workers'], config['builders']) c['workers'] = [Worker(worker['name'], passwords.get(worker['name'], 'password')) for worker in config['workers']] Modified: trunk/Tools/BuildSlaveSupport/ews-build/loadConfig_unittest.py (233049 => 233050) --- trunk/Tools/BuildSlaveSupport/ews-build/loadConfig_unittest.py 2018-06-21 18:47:46 UTC (rev 233049) +++ trunk/Tools/BuildSlaveSupport/ews-build/loadConfig_unittest.py 2018-06-21 18:51:35 UTC (rev 233050) @@ -23,6 +23,7 @@ # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +import os import unittest import loadConfig @@ -30,7 +31,8 @@ class ConfigDotJSONTest(unittest.TestCase): def test_configuration(self): -loadConfig.loadBuilderConfig({}) +cwd = os.path.dirname(os.path.abspath(__file__)) +loadConfig.loadBuilderConfig({}, master_prefix_path=cwd) class TagsForBuilderTeest(unittest.TestCase): Modified: trunk/Tools/ChangeLog (233049 => 233050) --- trunk/Tools/ChangeLog 2018-06-21 18:47:46 UTC (rev 233049) +++ trunk/Tools/ChangeLog 2018-06-21 18:51:35 UTC (rev 233050) @@ -1,5 +1,17 @@ 2018-06-21 Aakash Jain +[ews-build] unit-tests fail when run from another directory +https://bugs.webkit.org/show_bug.cgi?id=186872 + +Reviewed by Lucas Forschler. + +* BuildSlaveSupport/ews-build/loadConfig.py: +(loadBuilderConfig): Add support for passing master_prefix_path. +* BuildSlaveSupport/ews-build/loadConfig_unittest.py: +(ConfigDotJSONTest.test_configuration): Set master_prefix_path as current directory. + +2018-06-21 Aakash Jain + Add support for using localhost worker in OpenSource EWS Buildbot https://bugs.webkit.org/show_bug.cgi?id=186871 ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [233049] trunk/Source
Title: [233049] trunk/Source Revision 233049 Author jer.no...@apple.com Date 2018-06-21 11:47:46 -0700 (Thu, 21 Jun 2018) Log Message [Fullscreen] Suspend page (and pause video) while phishing warning is presented https://bugs.webkit.org/show_bug.cgi?id=186856 Reviewed by Tim Horton. Source/WebCore: Pause the media element when the page is suspended, and unpause when the page resumes. * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::HTMLMediaElement): (WebCore::HTMLMediaElement::suspend): (WebCore::HTMLMediaElement::resume): * html/HTMLMediaElement.h: Source/WebKit: * UIProcess/ios/fullscreen/WKFullScreenViewController.mm: (-[WKFullScreenViewController _showPhishingAlert]): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/HTMLMediaElement.cpp trunk/Source/WebCore/html/HTMLMediaElement.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenViewController.mm Diff Modified: trunk/Source/WebCore/ChangeLog (233048 => 233049) --- trunk/Source/WebCore/ChangeLog 2018-06-21 18:44:02 UTC (rev 233048) +++ trunk/Source/WebCore/ChangeLog 2018-06-21 18:47:46 UTC (rev 233049) @@ -1,3 +1,19 @@ +2018-06-21 Jer Noble + +[Fullscreen] Suspend page (and pause video) while phishing warning is presented +https://bugs.webkit.org/show_bug.cgi?id=186856 + + +Reviewed by Tim Horton. + +Pause the media element when the page is suspended, and unpause when the page resumes. + +* html/HTMLMediaElement.cpp: +(WebCore::HTMLMediaElement::HTMLMediaElement): +(WebCore::HTMLMediaElement::suspend): +(WebCore::HTMLMediaElement::resume): +* html/HTMLMediaElement.h: + 2018-06-21 Michael Catanzaro Bad optional access in WebCore::ContentSecurityPolicySource::portMatches Modified: trunk/Source/WebCore/html/HTMLMediaElement.cpp (233048 => 233049) --- trunk/Source/WebCore/html/HTMLMediaElement.cpp 2018-06-21 18:44:02 UTC (rev 233048) +++ trunk/Source/WebCore/html/HTMLMediaElement.cpp 2018-06-21 18:47:46 UTC (rev 233049) @@ -490,6 +490,7 @@ , m_haveSetUpCaptionContainer(false) #endif , m_isScrubbingRemotely(false) +, m_shouldUnpauseInternalOnResume(false) #if ENABLE(VIDEO_TRACK) , m_tracksAreReady(true) , m_haveVisibleTextTrack(false) @@ -5596,8 +5597,13 @@ setShouldBufferData(false); m_mediaSession->addBehaviorRestriction(MediaElementSession::RequirePageConsentToResumeMedia); break; +case PageWillBeSuspended: +if (!m_pausedInternal) { +m_shouldUnpauseInternalOnResume = true; +setPausedInternal(true); +} +break; case _javascript_DebuggerPaused: -case PageWillBeSuspended: case WillDeferLoading: // Do nothing, we don't pause media playback in these cases. break; @@ -5612,6 +5618,11 @@ m_asyncEventQueue.resume(); +if (m_shouldUnpauseInternalOnResume) { +m_shouldUnpauseInternalOnResume = false; +setPausedInternal(false); +} + setShouldBufferData(true); if (!m_mediaSession->pageAllowsPlaybackAfterResuming()) Modified: trunk/Source/WebCore/html/HTMLMediaElement.h (233048 => 233049) --- trunk/Source/WebCore/html/HTMLMediaElement.h 2018-06-21 18:44:02 UTC (rev 233048) +++ trunk/Source/WebCore/html/HTMLMediaElement.h 2018-06-21 18:47:46 UTC (rev 233049) @@ -1083,6 +1083,7 @@ bool m_isScrubbingRemotely : 1; bool m_waitingToEnterFullscreen : 1; +bool m_shouldUnpauseInternalOnResume : 1; #if ENABLE(VIDEO_TRACK) bool m_tracksAreReady : 1; Modified: trunk/Source/WebKit/ChangeLog (233048 => 233049) --- trunk/Source/WebKit/ChangeLog 2018-06-21 18:44:02 UTC (rev 233048) +++ trunk/Source/WebKit/ChangeLog 2018-06-21 18:47:46 UTC (rev 233049) @@ -1,3 +1,14 @@ +2018-06-21 Jer Noble + +[Fullscreen] Suspend page (and pause video) while phishing warning is presented +https://bugs.webkit.org/show_bug.cgi?id=186856 + + +Reviewed by Tim Horton. + +* UIProcess/ios/fullscreen/WKFullScreenViewController.mm: +(-[WKFullScreenViewController _showPhishingAlert]): + 2018-06-21 David Fenton Unreviewed, rolling out r232989. Modified: trunk/Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenViewController.mm (233048 => 233049) --- trunk/Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenViewController.mm 2018-06-21 18:44:02 UTC (rev 233048) +++ trunk/Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenViewController.mm 2018-06-21 18:47:46 UTC (rev 233049) @@ -428,11 +428,18 @@ NSString *alertMessage = [NSString stringWithFormat:WEB_UI_STRING("The website \"%@\" may be a deceptive website. Would you like to exit fullscreen?", "Fullscreen Deceptive Website Warning Sheet Content Text") , (NSString *)self.location]; UIAlertController* alert = [UIAlertController
[webkit-changes] [233048] trunk
Title: [233048] trunk Revision 233048 Author keith_mil...@apple.com Date 2018-06-21 11:44:02 -0700 (Thu, 21 Jun 2018) Log Message flattenDictionaryStruture needs to zero inline storage. https://bugs.webkit.org/show_bug.cgi?id=186869 Reviewed by Saam Barati. JSTests: * stress/flatten-object-zero-unused-inline-properties.js: Added. Source/_javascript_Core: This patch also adds the assetion that unused property storage is zero or JSValue() to putDirectInternal. Additionally, functions have been added to $vm that flatten dictionary objects and return the inline capacity of an object. * runtime/JSObjectInlines.h: (JSC::JSObject::putDirectInternal): * runtime/Structure.cpp: (JSC::Structure::flattenDictionaryStructure): * tools/JSDollarVM.cpp: (JSC::functionInlineCapacity): (JSC::functionFlattenDictionaryObject): (JSC::JSDollarVM::finishCreation): Modified Paths trunk/JSTests/ChangeLog trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/runtime/JSObjectInlines.h trunk/Source/_javascript_Core/runtime/Structure.cpp trunk/Source/_javascript_Core/tools/JSDollarVM.cpp Added Paths trunk/JSTests/stress/flatten-object-zero-unused-inline-properties.js Diff Modified: trunk/JSTests/ChangeLog (233047 => 233048) --- trunk/JSTests/ChangeLog 2018-06-21 18:42:28 UTC (rev 233047) +++ trunk/JSTests/ChangeLog 2018-06-21 18:44:02 UTC (rev 233048) @@ -1,3 +1,12 @@ +2018-06-20 Keith Miller + +flattenDictionaryStruture needs to zero inline storage. +https://bugs.webkit.org/show_bug.cgi?id=186869 + +Reviewed by Saam Barati. + +* stress/flatten-object-zero-unused-inline-properties.js: Added. + 2018-06-19 Saam Barati DirectArguments::create needs to initialize to undefined instead of the empty value Added: trunk/JSTests/stress/flatten-object-zero-unused-inline-properties.js (0 => 233048) --- trunk/JSTests/stress/flatten-object-zero-unused-inline-properties.js (rev 0) +++ trunk/JSTests/stress/flatten-object-zero-unused-inline-properties.js 2018-06-21 18:44:02 UTC (rev 233048) @@ -0,0 +1,7 @@ +let o = { foo: 1, bar: 2, baz: 3 }; +if ($vm.inlineCapacity(o) <= 3) +throw new Error("There should be inline capacity"); + +delete o.foo; +$vm.flattenDictionaryObject(o); +o.foo = 1; Modified: trunk/Source/_javascript_Core/ChangeLog (233047 => 233048) --- trunk/Source/_javascript_Core/ChangeLog 2018-06-21 18:42:28 UTC (rev 233047) +++ trunk/Source/_javascript_Core/ChangeLog 2018-06-21 18:44:02 UTC (rev 233048) @@ -1,3 +1,24 @@ +2018-06-20 Keith Miller + +flattenDictionaryStruture needs to zero inline storage. +https://bugs.webkit.org/show_bug.cgi?id=186869 + +Reviewed by Saam Barati. + +This patch also adds the assetion that unused property storage is +zero or JSValue() to putDirectInternal. Additionally, functions +have been added to $vm that flatten dictionary objects and return +the inline capacity of an object. + +* runtime/JSObjectInlines.h: +(JSC::JSObject::putDirectInternal): +* runtime/Structure.cpp: +(JSC::Structure::flattenDictionaryStructure): +* tools/JSDollarVM.cpp: +(JSC::functionInlineCapacity): +(JSC::functionFlattenDictionaryObject): +(JSC::JSDollarVM::finishCreation): + 2018-06-21 Mark Lam Use IsoCellSets to track Executables with clearable code. Modified: trunk/Source/_javascript_Core/runtime/JSObjectInlines.h (233047 => 233048) --- trunk/Source/_javascript_Core/runtime/JSObjectInlines.h 2018-06-21 18:42:28 UTC (rev 233047) +++ trunk/Source/_javascript_Core/runtime/JSObjectInlines.h 2018-06-21 18:44:02 UTC (rev 233048) @@ -381,6 +381,10 @@ Butterfly* newButterfly = allocateMoreOutOfLineStorage(vm, oldCapacity, newCapacity); nukeStructureAndSetButterfly(vm, structureID, newButterfly); } + +// This assertion verifies that the concurrent GC won't read garbage if the concurrentGC +// is running at the same time we put without transitioning. +ASSERT(!getDirect(offset) || !JSValue::encode(getDirect(offset))); putDirect(vm, offset, value); setStructure(vm, newStructure); slot.setNewProperty(this, offset); Modified: trunk/Source/_javascript_Core/runtime/Structure.cpp (233047 => 233048) --- trunk/Source/_javascript_Core/runtime/Structure.cpp 2018-06-21 18:42:28 UTC (rev 233047) +++ trunk/Source/_javascript_Core/runtime/Structure.cpp 2018-06-21 18:44:02 UTC (rev 233048) @@ -782,6 +782,11 @@ // We need to zero our unused property space; otherwise the GC might see a // stale pointer when we add properties in the future. +memset( +object->inlineStorageUnsafe() + inlineSize(), +0, +(inlineCapacity() - inlineSize()) * sizeof(EncodedJSValue)); + Butterfly* butterfly = object->butterfly(); memset(
[webkit-changes] [233047] trunk/Tools
Title: [233047] trunk/Tools Revision 233047 Author aakash_j...@apple.com Date 2018-06-21 11:42:28 -0700 (Thu, 21 Jun 2018) Log Message Add support for using localhost worker in OpenSource EWS Buildbot https://bugs.webkit.org/show_bug.cgi?id=186871 Reviewed by Lucas Forschler. * BuildSlaveSupport/ews-build/loadConfig.py: (loadBuilderConfig): Added a worker named 'local-worker' if use_localhost_worker option is used. * BuildSlaveSupport/ews-build/master.cfg: Check BUILDBOT_TESTING environment variable and use_localhost_worker if so. Modified Paths trunk/Tools/BuildSlaveSupport/ews-build/loadConfig.py trunk/Tools/BuildSlaveSupport/ews-build/master.cfg trunk/Tools/ChangeLog Diff Modified: trunk/Tools/BuildSlaveSupport/ews-build/loadConfig.py (233046 => 233047) --- trunk/Tools/BuildSlaveSupport/ews-build/loadConfig.py 2018-06-21 18:35:40 UTC (rev 233046) +++ trunk/Tools/BuildSlaveSupport/ews-build/loadConfig.py 2018-06-21 18:42:28 UTC (rev 233047) @@ -35,12 +35,15 @@ STEP_NAME_LENGTH_LIMIT = 50 -def loadBuilderConfig(c): +def loadBuilderConfig(c, use_localhost_worker=False): config = json.load(open('config.json')) passwords = json.load(open('passwords.json')) checkWorkersAndBuildersForConsistency(config['workers'], config['builders']) c['workers'] = [Worker(worker['name'], passwords.get(worker['name'], 'password')) for worker in config['workers']] +if use_localhost_worker: +c['workers'].append(Worker('local-worker', 'password', max_builds=2)) + c['builders'] = [] for builder in config['builders']: builder['tags'] = getTagsForBuilder(builder) @@ -49,6 +52,10 @@ del builder['platform'] if 'configuration' in builder: del builder['configuration'] + +if use_localhost_worker: +builder['workernames'].append("local-worker") + c['builders'].append(builder) c['schedulers'] = [] Modified: trunk/Tools/BuildSlaveSupport/ews-build/master.cfg (233046 => 233047) --- trunk/Tools/BuildSlaveSupport/ews-build/master.cfg 2018-06-21 18:35:40 UTC (rev 233046) +++ trunk/Tools/BuildSlaveSupport/ews-build/master.cfg 2018-06-21 18:42:28 UTC (rev 233047) @@ -1,6 +1,10 @@ +import os + import loadConfig +is_test_mode_enabled = os.getenv('BUILDBOT_TESTING') is not None + c = BuildmasterConfig = {} c['www'] = dict(port=8010, @@ -20,4 +24,4 @@ c['buildbotNetUsageData'] = None -loadConfig.loadBuilderConfig(c) +loadConfig.loadBuilderConfig(c, use_localhost_worker=is_test_mode_enabled) Modified: trunk/Tools/ChangeLog (233046 => 233047) --- trunk/Tools/ChangeLog 2018-06-21 18:35:40 UTC (rev 233046) +++ trunk/Tools/ChangeLog 2018-06-21 18:42:28 UTC (rev 233047) @@ -1,5 +1,16 @@ 2018-06-21 Aakash Jain +Add support for using localhost worker in OpenSource EWS Buildbot +https://bugs.webkit.org/show_bug.cgi?id=186871 + +Reviewed by Lucas Forschler. + +* BuildSlaveSupport/ews-build/loadConfig.py: +(loadBuilderConfig): Added a worker named 'local-worker' if use_localhost_worker option is used. +* BuildSlaveSupport/ews-build/master.cfg: Check BUILDBOT_TESTING environment variable and use_localhost_worker if so. + +2018-06-21 Aakash Jain + Add force schedulers to OpenSource EWS Buildbot https://bugs.webkit.org/show_bug.cgi?id=186876 ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [233046] tags/Safari-606.1.22/Source/JavaScriptCore
Title: [233046] tags/Safari-606.1.22/Source/_javascript_Core Revision 233046 Author kocsen_ch...@apple.com Date 2018-06-21 11:35:40 -0700 (Thu, 21 Jun 2018) Log Message Cherry-pick r233039. rdar://problem/40910419 Use IsoCellSets to track Executables with clearable code. https://bugs.webkit.org/show_bug.cgi?id=186877 Reviewed by Filip Pizlo. Here’s an example of the results that this fix may yield: 1. The workload: load cnn.com, wait for it to fully load, scroll down and up. 2. Statistics on memory touched and memory freed by VM::deleteAllCode(): Visiting Executables: Old New Number of objects visited: 70897 14264 Number of objects with deletable code: 14264 (20.1%) 14264 (100%) Number of memory pages visited: 32241602 Number of memory pages with deletable code: 1602 (49.7%)1602 (100%) Visitng UnlinkedFunctionExecutables: Old New Number of objects visited: 105454 17231 Number of objects with deletable code: 42319 (20.1%) 17231 (100%) ** Number of memory pages visited: 47961349 Number of memory pages with deletable code: 4013 (83.7%)1349 (100%) ** The number of objects differ because the old code only visit unlinked executables indirectly via linked executables, whereas the new behavior visit all unlinked executables with deletable code directly. This means: a. we used to not visit unlinked executables that have not been linked yet i.e. deleteAllCode() may not delete all code (especially code that is not used). b. we had to visit all linked executables to check if they of type FunctionExecutable, before going on to visit their unlinked executable, and this includes the ones that do not have deletable code. This means that we would touch more memory in the process. Both of these these issues are now fixed with the new code. This code was tested with manually inserted instrumentation to track the above statistics. It is not feasible to write an automated test for this without leaving a lot of invasive instrumentation in the code. * bytecode/UnlinkedFunctionExecutable.cpp: (JSC::UnlinkedFunctionExecutable::unlinkedCodeBlockFor): * bytecode/UnlinkedFunctionExecutable.h: * heap/CodeBlockSetInlines.h: (JSC::CodeBlockSet::iterateViaSubspaces): * heap/Heap.cpp: (JSC::Heap::deleteAllCodeBlocks): (JSC::Heap::deleteAllUnlinkedCodeBlocks): (JSC::Heap::deleteUnmarkedCompiledCode): (JSC::Heap::clearUnmarkedExecutables): Deleted. (JSC::Heap::addExecutable): Deleted. * heap/Heap.h: * runtime/DirectEvalExecutable.h: * runtime/ExecutableBase.cpp: (JSC::ExecutableBase::hasClearableCode const): - this is written based on the implementation of ExecutableBase::clearCode(). * runtime/ExecutableBase.h: * runtime/FunctionExecutable.h: * runtime/IndirectEvalExecutable.h: * runtime/ModuleProgramExecutable.h: * runtime/ProgramExecutable.h: * runtime/ScriptExecutable.cpp: (JSC::ScriptExecutable::clearCode): (JSC::ScriptExecutable::installCode): * runtime/ScriptExecutable.h: (JSC::ScriptExecutable::finishCreation): * runtime/VM.cpp: (JSC::VM::VM): * runtime/VM.h: (JSC::VM::ScriptExecutableSpaceAndSet::ScriptExecutableSpaceAndSet): (JSC::VM::ScriptExecutableSpaceAndSet::clearableCodeSetFor): (JSC::VM::forEachScriptExecutableSpace): (JSC::VM::UnlinkedFunctionExecutableSpaceAndSet::UnlinkedFunctionExecutableSpaceAndSet): (JSC::VM::UnlinkedFunctionExecutableSpaceAndSet::clearableCodeSetFor): git-svn-id: https://svn.webkit.org/repository/webkit/trunk@233039 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths tags/Safari-606.1.22/Source/_javascript_Core/ChangeLog tags/Safari-606.1.22/Source/_javascript_Core/bytecode/UnlinkedFunctionExecutable.cpp tags/Safari-606.1.22/Source/_javascript_Core/bytecode/UnlinkedFunctionExecutable.h tags/Safari-606.1.22/Source/_javascript_Core/heap/CodeBlockSetInlines.h tags/Safari-606.1.22/Source/_javascript_Core/heap/Heap.cpp tags/Safari-606.1.22/Source/_javascript_Core/heap/Heap.h tags/Safari-606.1.22/Source/_javascript_Core/runtime/DirectEvalExecutable.h tags/Safari-606.1.22/Source/_javascript_Core/runtime/ExecutableBase.cpp tags/Safari-606.1.22/Source/_javascript_Core/runtime/ExecutableBase.h tags/Safari-606.1.22/Source/_javascript_Core/runtime/FunctionExecutable.h tags/Safari-606.1.22/Source/_javascript_Core/runtime/IndirectEvalExecutable.h tags/Safari-606.1.22/Source/_javascript_Core/runtime/ModuleProgramExecutable.h tags/Safari-606.1.22/Source/_javascript_Core/runtime/ProgramExecutable.h
[webkit-changes] [233045] trunk/Tools
Title: [233045] trunk/Tools Revision 233045 Author aakash_j...@apple.com Date 2018-06-21 11:35:37 -0700 (Thu, 21 Jun 2018) Log Message Add force schedulers to OpenSource EWS Buildbot https://bugs.webkit.org/show_bug.cgi?id=186876 Reviewed by Lucas Forschler. * BuildSlaveSupport/ews-build/loadConfig.py: (loadBuilderConfig): Added support for ForceScheduler. Modified Paths trunk/Tools/BuildSlaveSupport/ews-build/loadConfig.py trunk/Tools/ChangeLog Diff Modified: trunk/Tools/BuildSlaveSupport/ews-build/loadConfig.py (233044 => 233045) --- trunk/Tools/BuildSlaveSupport/ews-build/loadConfig.py 2018-06-21 18:24:23 UTC (rev 233044) +++ trunk/Tools/BuildSlaveSupport/ews-build/loadConfig.py 2018-06-21 18:35:37 UTC (rev 233045) @@ -25,6 +25,7 @@ import re from buildbot.scheduler import AnyBranchScheduler, Periodic, Dependent, Triggerable, Nightly +from buildbot.schedulers.forcesched import ForceScheduler, WorkerChoiceParameter from buildbot.worker import Worker from buildbot.util import identifiers as buildbot_identifiers @@ -59,7 +60,12 @@ scheduler = dict(map(lambda key_value_pair: (str(key_value_pair[0]), key_value_pair[1]), scheduler.items())) c['schedulers'].append(schedulerType(**scheduler)) +force_scheduler = ForceScheduler(name='force-{0}'.format(scheduler['name']), + builderNames=scheduler['builderNames'], + properties=[WorkerChoiceParameter()]) +c['schedulers'].append(force_scheduler) + def checkValidWorker(worker): if not worker: raise Exception('Worker is None or Empty.') Modified: trunk/Tools/ChangeLog (233044 => 233045) --- trunk/Tools/ChangeLog 2018-06-21 18:24:23 UTC (rev 233044) +++ trunk/Tools/ChangeLog 2018-06-21 18:35:37 UTC (rev 233045) @@ -1,3 +1,13 @@ +2018-06-21 Aakash Jain + +Add force schedulers to OpenSource EWS Buildbot +https://bugs.webkit.org/show_bug.cgi?id=186876 + +Reviewed by Lucas Forschler. + +* BuildSlaveSupport/ews-build/loadConfig.py: +(loadBuilderConfig): Added support for ForceScheduler. + 2018-06-21 Robin Morisset [WSL] Merge WSL_type.ott and WSL_exec.ott ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [233044] trunk/Source/WebKit
Title: [233044] trunk/Source/WebKit Revision 233044 Author david_fen...@apple.com Date 2018-06-21 11:24:23 -0700 (Thu, 21 Jun 2018) Log Message Unreviewed, rolling out r232989. Causes API regressions on macOS Reverted changeset: "REGRESSION (r231850): Cookie file cannot be read or written by network process" https://bugs.webkit.org/show_bug.cgi?id=186806 https://trac.webkit.org/changeset/232989 Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp trunk/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.cpp trunk/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.h trunk/Source/WebKit/NetworkProcess/mac/RemoteNetworkingContext.mm trunk/Source/WebKit/UIProcess/WebProcessPool.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (233043 => 233044) --- trunk/Source/WebKit/ChangeLog 2018-06-21 18:11:10 UTC (rev 233043) +++ trunk/Source/WebKit/ChangeLog 2018-06-21 18:24:23 UTC (rev 233044) @@ -1,3 +1,16 @@ +2018-06-21 David Fenton + +Unreviewed, rolling out r232989. + +Causes API regressions on macOS + +Reverted changeset: + +"REGRESSION (r231850): Cookie file cannot be read or written +by network process" +https://bugs.webkit.org/show_bug.cgi?id=186806 +https://trac.webkit.org/changeset/232989 + 2018-06-21 Zan Dobersek [GTK] WebDriver: allow applying host-specific TLS certificates for automated sessions Modified: trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp (233043 => 233044) --- trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp 2018-06-21 18:11:10 UTC (rev 233043) +++ trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp 2018-06-21 18:24:23 UTC (rev 233044) @@ -269,10 +269,6 @@ SessionTracker::setSession(PAL::SessionID::defaultSessionID(), NetworkSession::create(WTFMove(parameters.defaultSessionParameters))); -auto* defaultSession = SessionTracker::networkSession(PAL::SessionID::defaultSessionID()); -for (const auto& cookie : parameters.defaultSessionPendingCookies) -defaultSession->networkStorageSession().setCookie(cookie); - for (auto& supplement : m_supplements.values()) supplement->initialize(parameters); Modified: trunk/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.cpp (233043 => 233044) --- trunk/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.cpp 2018-06-21 18:11:10 UTC (rev 233043) +++ trunk/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.cpp 2018-06-21 18:24:23 UTC (rev 233044) @@ -55,7 +55,6 @@ #if PLATFORM(COCOA) encoder << uiProcessCookieStorageIdentifier; #endif -encoder << defaultSessionPendingCookies; #if PLATFORM(IOS) encoder << cookieStorageDirectoryExtensionHandle; encoder << containerCachesDirectoryExtensionHandle; @@ -148,8 +147,6 @@ if (!decoder.decode(result.uiProcessCookieStorageIdentifier)) return false; #endif -if (!decoder.decode(result.defaultSessionPendingCookies)) -return false; #if PLATFORM(IOS) std::optional cookieStorageDirectoryExtensionHandle; decoder >> cookieStorageDirectoryExtensionHandle; Modified: trunk/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.h (233043 => 233044) --- trunk/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.h 2018-06-21 18:11:10 UTC (rev 233043) +++ trunk/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.h 2018-06-21 18:24:23 UTC (rev 233044) @@ -28,7 +28,6 @@ #include "CacheModel.h" #include "NetworkSessionCreationParameters.h" #include "SandboxExtension.h" -#include #include #include #include @@ -66,7 +65,6 @@ #if PLATFORM(COCOA) Vector uiProcessCookieStorageIdentifier; #endif -Vector defaultSessionPendingCookies; #if PLATFORM(IOS) SandboxExtension::Handle cookieStorageDirectoryExtensionHandle; SandboxExtension::Handle containerCachesDirectoryExtensionHandle; Modified: trunk/Source/WebKit/NetworkProcess/mac/RemoteNetworkingContext.mm (233043 => 233044) --- trunk/Source/WebKit/NetworkProcess/mac/RemoteNetworkingContext.mm 2018-06-21 18:11:10 UTC (rev 233043) +++ trunk/Source/WebKit/NetworkProcess/mac/RemoteNetworkingContext.mm 2018-06-21 18:24:23 UTC (rev 233044) @@ -46,8 +46,12 @@ void RemoteNetworkingContext::ensureWebsiteDataStoreSession(WebsiteDataStoreParameters&& parameters) { auto sessionID = parameters.networkSessionParameters.sessionID; -if (NetworkStorageSession::storageSession(sessionID)) +if (auto* session = NetworkStorageSession::storageSession(sessionID)) { +ASSERT(parameters.pendingCookies.isEmpty() || sessionID == PAL::SessionID::defaultSessionID()); +for (const auto& cookie : parameters.pendingCookies) +session->setCookie(cookie); return; +} String base; if (SessionTracker::getIdentifierBase().isNull()) Modified: trunk/Source/WebKit/UIProcess/WebProcessPool.cpp (233043 =>
[webkit-changes] [233043] tags/Safari-606.1.22/
Title: [233043] tags/Safari-606.1.22/ Revision 233043 Author kocsen_ch...@apple.com Date 2018-06-21 11:11:10 -0700 (Thu, 21 Jun 2018) Log Message Tag Safari-606.1.22. Added Paths tags/Safari-606.1.22/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [233042] branches/safari-606.1.20.40-branch/Source/WebKit
Title: [233042] branches/safari-606.1.20.40-branch/Source/WebKit Revision 233042 Author bshaf...@apple.com Date 2018-06-21 10:59:36 -0700 (Thu, 21 Jun 2018) Log Message Cherry-pick r232848. rdar://problem/41120462 Plug-in Process crashing on Mojave (affects Flash, others) https://bugs.webkit.org/show_bug.cgi?id=186628 Reviewed by Eric Carlson. Add the missing “com.apple.security.cs.allow-unsigned-executable-memory” entitlement. Also alphabetize the entitlements file to make it easier to read. * Configurations/PluginService.entitlements: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@232848 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-606.1.20.40-branch/Source/WebKit/ChangeLog branches/safari-606.1.20.40-branch/Source/WebKit/Configurations/PluginService.entitlements Diff Modified: branches/safari-606.1.20.40-branch/Source/WebKit/ChangeLog (233041 => 233042) --- branches/safari-606.1.20.40-branch/Source/WebKit/ChangeLog 2018-06-21 16:44:07 UTC (rev 233041) +++ branches/safari-606.1.20.40-branch/Source/WebKit/ChangeLog 2018-06-21 17:59:36 UTC (rev 233042) @@ -1,3 +1,33 @@ +2018-06-21 Babak Shafiei + +Cherry-pick r232848. rdar://problem/41120462 + +Plug-in Process crashing on Mojave (affects Flash, others) +https://bugs.webkit.org/show_bug.cgi?id=186628 + + +Reviewed by Eric Carlson. + +Add the missing “com.apple.security.cs.allow-unsigned-executable-memory” entitlement. Also alphabetize +the entitlements file to make it easier to read. + +* Configurations/PluginService.entitlements: + +git-svn-id: https://svn.webkit.org/repository/webkit/trunk@232848 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2018-06-14 Brent Fulgham + +Plug-in Process crashing on Mojave (affects Flash, others) +https://bugs.webkit.org/show_bug.cgi?id=186628 + + +Reviewed by Eric Carlson. + +Add the missing “com.apple.security.cs.allow-unsigned-executable-memory” entitlement. Also alphabetize +the entitlements file to make it easier to read. + +* Configurations/PluginService.entitlements: + 2018-06-13 Kocsen Chung Revert r231850. rdar://problem/39111626 Modified: branches/safari-606.1.20.40-branch/Source/WebKit/Configurations/PluginService.entitlements (233041 => 233042) --- branches/safari-606.1.20.40-branch/Source/WebKit/Configurations/PluginService.entitlements 2018-06-21 16:44:07 UTC (rev 233041) +++ branches/safari-606.1.20.40-branch/Source/WebKit/Configurations/PluginService.entitlements 2018-06-21 17:59:36 UTC (rev 233042) @@ -4,11 +4,13 @@ com.apple.security.cs.allow-jit - com.apple.security.print +com.apple.security.cs.allow-unsigned-executable-memory + + com.apple.security.cs.disable-library-validation com.apple.security.files.user-selected.read-write - com.apple.security.cs.disable-library-validation + com.apple.security.print ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [233041] trunk/Tools
Title: [233041] trunk/Tools Revision 233041 Author rmoris...@apple.com Date 2018-06-21 09:44:07 -0700 (Thu, 21 Jun 2018) Log Message [WSL] Merge WSL_type.ott and WSL_exec.ott https://bugs.webkit.org/show_bug.cgi?id=186310 Rubberstamped by Filip Pizlo. I moved the execution rules into WSL_type.ott, that was renamed WSL.ott. I also changed the execution judgements: - they now emit memory events instead of having an explicit store (so they can be connected later to a memory model) - the environment is now unchangeable (except inside blocks, which are the only place that variable declarations can appear) - various rules were simplified. * WebGPUShadingLanguageRI/SpecWork/WSL.ott: Copied from Tools/WebGPUShadingLanguageRI/SpecWork/WSL_type.ott. * WebGPUShadingLanguageRI/SpecWork/WSL_exec.ott: Removed. * WebGPUShadingLanguageRI/SpecWork/WSL_type.ott: Removed. Modified Paths trunk/Tools/ChangeLog Added Paths trunk/Tools/WebGPUShadingLanguageRI/SpecWork/WSL.ott Removed Paths trunk/Tools/WebGPUShadingLanguageRI/SpecWork/WSL_exec.ott trunk/Tools/WebGPUShadingLanguageRI/SpecWork/WSL_type.ott Diff Modified: trunk/Tools/ChangeLog (233040 => 233041) --- trunk/Tools/ChangeLog 2018-06-21 15:48:42 UTC (rev 233040) +++ trunk/Tools/ChangeLog 2018-06-21 16:44:07 UTC (rev 233041) @@ -1,3 +1,20 @@ +2018-06-21 Robin Morisset + +[WSL] Merge WSL_type.ott and WSL_exec.ott +https://bugs.webkit.org/show_bug.cgi?id=186310 + +Rubberstamped by Filip Pizlo. + +I moved the execution rules into WSL_type.ott, that was renamed WSL.ott. +I also changed the execution judgements: +- they now emit memory events instead of having an explicit store (so they can be connected later to a memory model) +- the environment is now unchangeable (except inside blocks, which are the only place that variable declarations can appear) +- various rules were simplified. + +* WebGPUShadingLanguageRI/SpecWork/WSL.ott: Copied from Tools/WebGPUShadingLanguageRI/SpecWork/WSL_type.ott. +* WebGPUShadingLanguageRI/SpecWork/WSL_exec.ott: Removed. +* WebGPUShadingLanguageRI/SpecWork/WSL_type.ott: Removed. + 2018-06-21 Leo Balter [test262-runner] Improve failures output Copied: trunk/Tools/WebGPUShadingLanguageRI/SpecWork/WSL.ott (from rev 233040, trunk/Tools/WebGPUShadingLanguageRI/SpecWork/WSL_type.ott) (0 => 233041) --- trunk/Tools/WebGPUShadingLanguageRI/SpecWork/WSL.ott (rev 0) +++ trunk/Tools/WebGPUShadingLanguageRI/SpecWork/WSL.ott 2018-06-21 16:44:07 UTC (rev 233041) @@ -0,0 +1,776 @@ +metavar x, y, z, f ::= +indexvar i, j, k, n, m ::= + +grammar +td :: top_level_decl_ ::= {{com top-level declaration}} +| tx f <( tparam0 , .. , tparamk )> ( tx0 x0 , .. , txm xm ) { s0 .. sn } :: :: func_decl +| typedef x <( tparam0 , .. , tparamk )> = tx ; :: :: typedef + +tparam :: type_parameter_ ::= {{com type parameter}} +| tx x :: :: constexpr +| x : y0 + .. + yn :: :: type_variable + +s :: stmt_ ::= {{com statement}} +| if ( e ) s :: :: if_then {{com Desugared}} +| while ( e ) s :: :: while {{com Desugared}} +| for ( eOrVDecls ; eOrNothing ; eOrNothing' ) s :: :: for {{com Desugared}} +| tx vdecl0 , .. , vdecln ; :: :: multi_vdecls {{com partly desugared}} +| ; :: :: empty {{com Desugared}} +| if ( e ) s else s' :: :: if +| do s while ( e ) ; :: :: do_while +| switch ( e ) { sc0 : sblock0 .. scn : sblockn } :: :: switch +| break ; :: :: break +| continue ; :: :: continue +| fallthrough ; :: :: fallthrough +| return e ; :: :: return +| return ; :: :: return_void +| trap ; :: :: trap +| { blockAnnot s0 .. sn } :: :: block +| e ; :: :: effectful_expr +| x : sid ; :: :: resolved_vdecl {{com post-monomorphisation variable declaration}} +| Loop ( s , s' ) :: :: loop_construct {{com Special, only during execution}} +| Cases ( s0 , .. , sn ) :: :: cases_construct {{com Special, only during execution}} + +sc :: switch_case_ ::= +| case rval :: :: case +| default :: :: default + +sblock :: switch_block_ ::= +| s0 .. sn :: :: statements + +vdecl :: variable_declaration_ ::= +| x :: :: uninitialized +| x = e :: :: initialized + +eOrVDecls :: expr_or_vdecl_ ::= +| e :: :: expr +| tx vdecl0 , .. , vdecln :: :: vdecl +| :: :: nothing + +eOrNothing :: expr_or_nothing_ ::= +| e :: :: expr +| :: :: nothing + +blockAnnot :: block_annotation_ ::= +| R :: :: exec_env {{tex _{[[R]]} }} +| :: :: nothing + +e :: expr_ ::= {{com _expression_}} +| ( e ) :: :: parens +| e , e' :: :: comma +| e || e' :: :: or {{tex [[e]]\:{||}\:[[e']]}} +| e && e' :: :: and {{tex [[e]]\:{\&\&}\:[[e']]}} +| e0 ? e1 : e2 :: :: ternary {{tex [[e0]]\:{?}\:[[e1]]:[[e2]]}} +| ! e :: :: not {{tex \:![[e]]}} +| e == e' :: :: equals_operator +| e != e' :: :: not_equals_operator {{com Desugared}} {{tex
[webkit-changes] [233040] trunk/LayoutTests
Title: [233040] trunk/LayoutTests Revision 233040 Author ryanhad...@apple.com Date 2018-06-21 08:48:42 -0700 (Thu, 21 Jun 2018) Log Message Update TestExpectations for http/wpt/service-workers/third-party-registration.html. https://bugs.webkit.org/show_bug.cgi?id=183860 Unreviewed test gardening. * platform/ios-wk2/TestExpectations: Mark as a flaky timeout. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/ios-wk2/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (233039 => 233040) --- trunk/LayoutTests/ChangeLog 2018-06-21 15:09:40 UTC (rev 233039) +++ trunk/LayoutTests/ChangeLog 2018-06-21 15:48:42 UTC (rev 233040) @@ -1,3 +1,12 @@ +2018-06-21 Ryan Haddad + +Update TestExpectations for http/wpt/service-workers/third-party-registration.html. +https://bugs.webkit.org/show_bug.cgi?id=183860 + +Unreviewed test gardening. + +* platform/ios-wk2/TestExpectations: Mark as a flaky timeout. + 2018-06-21 Fujii Hironori [GStreamer] ASSERTION FAILED: end.isValid() in PlatformTimeRanges::add Modified: trunk/LayoutTests/platform/ios-wk2/TestExpectations (233039 => 233040) --- trunk/LayoutTests/platform/ios-wk2/TestExpectations 2018-06-21 15:09:40 UTC (rev 233039) +++ trunk/LayoutTests/platform/ios-wk2/TestExpectations 2018-06-21 15:48:42 UTC (rev 233040) @@ -1347,7 +1347,7 @@ # This is marked as Pass to see if additional logging can reveal the cause of the flakiness. webkit.org/b/183714 [ Debug ] http/tests/storageAccess/grant-storage-access-under-opener.html [ Pass ] -webkit.org/b/183860 [ Release ] http/wpt/service-workers/third-party-registration.html [ Pass Failure ] +webkit.org/b/183860 http/wpt/service-workers/third-party-registration.html [ Pass Timeout ] webkit.org/b/184245 http/tests/workers/service/service-worker-cache-api.https.html [ Pass Failure ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [233039] trunk/Source/JavaScriptCore
Title: [233039] trunk/Source/_javascript_Core Revision 233039 Author mark@apple.com Date 2018-06-21 08:09:40 -0700 (Thu, 21 Jun 2018) Log Message Use IsoCellSets to track Executables with clearable code. https://bugs.webkit.org/show_bug.cgi?id=186877 Reviewed by Filip Pizlo. Here’s an example of the results that this fix may yield: 1. The workload: load cnn.com, wait for it to fully load, scroll down and up. 2. Statistics on memory touched and memory freed by VM::deleteAllCode(): Visiting Executables: Old New Number of objects visited: 70897 14264 Number of objects with deletable code: 14264 (20.1%) 14264 (100%) Number of memory pages visited: 32241602 Number of memory pages with deletable code: 1602 (49.7%)1602 (100%) Visitng UnlinkedFunctionExecutables: Old New Number of objects visited: 105454 17231 Number of objects with deletable code: 42319 (20.1%) 17231 (100%) ** Number of memory pages visited: 47961349 Number of memory pages with deletable code: 4013 (83.7%)1349 (100%) ** The number of objects differ because the old code only visit unlinked executables indirectly via linked executables, whereas the new behavior visit all unlinked executables with deletable code directly. This means: a. we used to not visit unlinked executables that have not been linked yet i.e. deleteAllCode() may not delete all code (especially code that is not used). b. we had to visit all linked executables to check if they of type FunctionExecutable, before going on to visit their unlinked executable, and this includes the ones that do not have deletable code. This means that we would touch more memory in the process. Both of these these issues are now fixed with the new code. This code was tested with manually inserted instrumentation to track the above statistics. It is not feasible to write an automated test for this without leaving a lot of invasive instrumentation in the code. * bytecode/UnlinkedFunctionExecutable.cpp: (JSC::UnlinkedFunctionExecutable::unlinkedCodeBlockFor): * bytecode/UnlinkedFunctionExecutable.h: * heap/CodeBlockSetInlines.h: (JSC::CodeBlockSet::iterateViaSubspaces): * heap/Heap.cpp: (JSC::Heap::deleteAllCodeBlocks): (JSC::Heap::deleteAllUnlinkedCodeBlocks): (JSC::Heap::deleteUnmarkedCompiledCode): (JSC::Heap::clearUnmarkedExecutables): Deleted. (JSC::Heap::addExecutable): Deleted. * heap/Heap.h: * runtime/DirectEvalExecutable.h: * runtime/ExecutableBase.cpp: (JSC::ExecutableBase::hasClearableCode const): - this is written based on the implementation of ExecutableBase::clearCode(). * runtime/ExecutableBase.h: * runtime/FunctionExecutable.h: * runtime/IndirectEvalExecutable.h: * runtime/ModuleProgramExecutable.h: * runtime/ProgramExecutable.h: * runtime/ScriptExecutable.cpp: (JSC::ScriptExecutable::clearCode): (JSC::ScriptExecutable::installCode): * runtime/ScriptExecutable.h: (JSC::ScriptExecutable::finishCreation): * runtime/VM.cpp: (JSC::VM::VM): * runtime/VM.h: (JSC::VM::ScriptExecutableSpaceAndSet::ScriptExecutableSpaceAndSet): (JSC::VM::ScriptExecutableSpaceAndSet::clearableCodeSetFor): (JSC::VM::forEachScriptExecutableSpace): (JSC::VM::UnlinkedFunctionExecutableSpaceAndSet::UnlinkedFunctionExecutableSpaceAndSet): (JSC::VM::UnlinkedFunctionExecutableSpaceAndSet::clearableCodeSetFor): Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/bytecode/UnlinkedFunctionExecutable.cpp trunk/Source/_javascript_Core/bytecode/UnlinkedFunctionExecutable.h trunk/Source/_javascript_Core/heap/CodeBlockSetInlines.h trunk/Source/_javascript_Core/heap/Heap.cpp trunk/Source/_javascript_Core/heap/Heap.h trunk/Source/_javascript_Core/runtime/DirectEvalExecutable.h trunk/Source/_javascript_Core/runtime/ExecutableBase.cpp trunk/Source/_javascript_Core/runtime/ExecutableBase.h trunk/Source/_javascript_Core/runtime/FunctionExecutable.h trunk/Source/_javascript_Core/runtime/IndirectEvalExecutable.h trunk/Source/_javascript_Core/runtime/ModuleProgramExecutable.h trunk/Source/_javascript_Core/runtime/ProgramExecutable.h trunk/Source/_javascript_Core/runtime/ScriptExecutable.cpp trunk/Source/_javascript_Core/runtime/ScriptExecutable.h trunk/Source/_javascript_Core/runtime/VM.cpp trunk/Source/_javascript_Core/runtime/VM.h Diff Modified: trunk/Source/_javascript_Core/ChangeLog (233038 => 233039) --- trunk/Source/_javascript_Core/ChangeLog 2018-06-21 14:00:51 UTC (rev 233038) +++ trunk/Source/_javascript_Core/ChangeLog 2018-06-21 15:09:40 UTC (rev 233039) @@ -1,3 +1,83 @@ +2018-06-21 Mark Lam + +Use IsoCellSets to track Executables with clearable code. +https://bugs.webkit.org/show_bug.cgi?id=186877 + +Reviewed by
[webkit-changes] [233038] trunk/Tools
Title: [233038] trunk/Tools Revision 233038 Author commit-qu...@webkit.org Date 2018-06-21 07:00:51 -0700 (Thu, 21 Jun 2018) Log Message [test262-runner] Improve failures output https://bugs.webkit.org/show_bug.cgi?id=186858 Patch by Leo Balter on 2018-06-21 Reviewed by Michael Saboff. * Scripts/test262/Runner.pm: (main): (processResult): Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/test262/Runner.pm Diff Modified: trunk/Tools/ChangeLog (233037 => 233038) --- trunk/Tools/ChangeLog 2018-06-21 13:57:50 UTC (rev 233037) +++ trunk/Tools/ChangeLog 2018-06-21 14:00:51 UTC (rev 233038) @@ -1,3 +1,14 @@ +2018-06-21 Leo Balter + +[test262-runner] Improve failures output +https://bugs.webkit.org/show_bug.cgi?id=186858 + +Reviewed by Michael Saboff. + +* Scripts/test262/Runner.pm: +(main): +(processResult): + 2018-06-21 Caitlin Potter [Tools] add a --debug option to test262/Runner.pm for buildbots Modified: trunk/Tools/Scripts/test262/Runner.pm (233037 => 233038) --- trunk/Tools/Scripts/test262/Runner.pm 2018-06-21 13:57:50 UTC (rev 233037) +++ trunk/Tools/Scripts/test262/Runner.pm 2018-06-21 14:00:51 UTC (rev 233038) @@ -459,8 +459,11 @@ if ($verbose) { my $path = $test->{path}; my $mode = $test->{mode}; -my $err = $test->{error}; -$newfailurereport .= "FAIL $path ($mode)\n$err\n\n"; +# Print full output from JSC +my $err = $test->{output}; +$newfailurereport .= "FAIL $path ($mode)\n" +. "Full Output:\n" +. "$err\n\n"; } } @@ -820,18 +823,17 @@ my $failMsg = ''; $failMsg = "FAIL $file ($scenario)\n"; -my $suffixMsg = ''; +my $featuresList = ''; -if ($verbose) { -my $featuresList = ''; -$featuresList = "\nFeatures: " . join(', ', @{ $data->{features} }) if $data->{features}; -$suffixMsg = "$result$featuresList\n"; +if ($verbose && $data->{features}) { +$featuresList = 'Features: ' . join(', ', @{ $data->{features} }) . "\n"; } -print "$newFail$failMsg$suffixMsg" if ($printFailure || $verbose); +print "$newFail$failMsg$featuresList$result\n\n" if ($printFailure || $verbose); $resultdata{result} = 'FAIL'; $resultdata{error} = $currentfailure; +$resultdata{output} = $result; } elsif ($scenario ne 'skip' && !$currentfailure) { if ($expectedfailure) { print "NEW PASS $file ($scenario)\n"; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [233037] trunk/Tools
Title: [233037] trunk/Tools Revision 233037 Author ca...@igalia.com Date 2018-06-21 06:57:50 -0700 (Thu, 21 Jun 2018) Log Message [Tools] add a --debug option to test262/Runner.pm for buildbots https://bugs.webkit.org/show_bug.cgi?id=186113 Reviewed by Michael Saboff. test262-runner runs Debug builds by default, but this allows us to be explicit about it in buildbots. * Scripts/test262/Runner.pm: (processCLI): Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/test262/Runner.pm Diff Modified: trunk/Tools/ChangeLog (233036 => 233037) --- trunk/Tools/ChangeLog 2018-06-21 13:37:05 UTC (rev 233036) +++ trunk/Tools/ChangeLog 2018-06-21 13:57:50 UTC (rev 233037) @@ -1,3 +1,16 @@ +2018-06-21 Caitlin Potter + +[Tools] add a --debug option to test262/Runner.pm for buildbots +https://bugs.webkit.org/show_bug.cgi?id=186113 + +Reviewed by Michael Saboff. + +test262-runner runs Debug builds by default, but this allows us to be +explicit about it in buildbots. + +* Scripts/test262/Runner.pm: +(processCLI): + 2018-06-21 Carlos Garcia Campos run-gtk-tests (glib/common.py) cannot determine build directory when webKitBranchBuild=true Modified: trunk/Tools/Scripts/test262/Runner.pm (233036 => 233037) --- trunk/Tools/Scripts/test262/Runner.pm 2018-06-21 13:37:05 UTC (rev 233036) +++ trunk/Tools/Scripts/test262/Runner.pm 2018-06-21 13:57:50 UTC (rev 233037) @@ -131,6 +131,7 @@ 'p|child-processes=i' => \$maxProcesses, 'h|help' => \$help, 'release' => \$release, +'debug' => sub { $release = 0; }, 'v|verbose' => \$verbose, 'f|features=s@' => \@features, 'c|config=s' => \$configFile, @@ -1229,6 +1230,10 @@ Use the Release build of JSC. Can only use if --jsc is not provided. The Debug build of JSC is used by default. +=item B<--debug> + +Use the Debug build of JSC. Can only use if --jsc is not provided. Negates the --release option. + =item B<--verbose, -v> Verbose output for test results. Includes error message for test. ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [233036] trunk/Source/WebCore
Title: [233036] trunk/Source/WebCore Revision 233036 Author mcatanz...@igalia.com Date 2018-06-21 06:37:05 -0700 (Thu, 21 Jun 2018) Log Message Bad optional access in WebCore::ContentSecurityPolicySource::portMatches https://bugs.webkit.org/show_bug.cgi?id=186535 Reviewed by Daniel Bates. Make sure the ports have explicit values before dereferencing them. This is hard to test. If the layout test script-src-parsing-implicit-and-explicit-port-number continues to pass for WebKitLegacy, then I have at least probably not broken anything. To reproduce the crash in a layout test that I can run, I think I would need to implement internals.registerDefaultPortForProtocol for modern WebKit, which is too much work for this crash. Otherwise, we'd need to run the test server on port 80, which would be unfriendly. * page/csp/ContentSecurityPolicySource.cpp: (WebCore::ContentSecurityPolicySource::portMatches const): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/csp/ContentSecurityPolicySource.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (233035 => 233036) --- trunk/Source/WebCore/ChangeLog 2018-06-21 11:03:58 UTC (rev 233035) +++ trunk/Source/WebCore/ChangeLog 2018-06-21 13:37:05 UTC (rev 233036) @@ -1,3 +1,21 @@ +2018-06-21 Michael Catanzaro + +Bad optional access in WebCore::ContentSecurityPolicySource::portMatches +https://bugs.webkit.org/show_bug.cgi?id=186535 + +Reviewed by Daniel Bates. + +Make sure the ports have explicit values before dereferencing them. + +This is hard to test. If the layout test script-src-parsing-implicit-and-explicit-port-number +continues to pass for WebKitLegacy, then I have at least probably not broken anything. To +reproduce the crash in a layout test that I can run, I think I would need to implement +internals.registerDefaultPortForProtocol for modern WebKit, which is too much work for this +crash. Otherwise, we'd need to run the test server on port 80, which would be unfriendly. + +* page/csp/ContentSecurityPolicySource.cpp: +(WebCore::ContentSecurityPolicySource::portMatches const): + 2018-06-21 Fujii Hironori [GStreamer] ASSERTION FAILED: end.isValid() in PlatformTimeRanges::add Modified: trunk/Source/WebCore/page/csp/ContentSecurityPolicySource.cpp (233035 => 233036) --- trunk/Source/WebCore/page/csp/ContentSecurityPolicySource.cpp 2018-06-21 11:03:58 UTC (rev 233035) +++ trunk/Source/WebCore/page/csp/ContentSecurityPolicySource.cpp 2018-06-21 13:37:05 UTC (rev 233036) @@ -100,7 +100,7 @@ if (port == m_port) return true; -if (isDefaultPortForProtocol(m_port.value(), "http") && ((!port && url.protocolIs("https")) || isDefaultPortForProtocol(port.value(), "https"))) +if ((m_port && isDefaultPortForProtocol(m_port.value(), "http")) && ((!port && url.protocolIs("https")) || (port && isDefaultPortForProtocol(port.value(), "https" return true; if (!port) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [233035] trunk/Source
Title: [233035] trunk/Source Revision 233035 Author zandober...@gmail.com Date 2018-06-21 04:03:58 -0700 (Thu, 21 Jun 2018) Log Message [GTK] WebDriver: allow applying host-specific TLS certificates for automated sessions https://bugs.webkit.org/show_bug.cgi?id=186884 Reviewed by Carlos Garcia Campos. Source/_javascript_Core: Add a tuple array input parameter to the StartAutomationSession DBus message, representing a list of host-and-certificate pairs that have to be allowed for a given session. This array is then unpacked and used to fill out the certificates Vector object in the SessionCapabilities struct. * inspector/remote/RemoteInspector.h: Add a GLib-specific Vector of String pairs representing hosts and the certificate file paths. * inspector/remote/glib/RemoteInspectorServer.cpp: Source/WebDriver: Start handling the 'certificates' capability for the GTK+ port. This is a list of host-certificate pairs that should be marked as allowed for a given automation session. This object should be positioned inside the 'webkitgtk:browserOptions' dictionary in the capabilities JSON. * Capabilities.h: * glib/SessionHostGlib.cpp: (WebDriver::SessionHost::startAutomationSession): Include any host-certificate pairs in the StartAutomationSession DBus message. * gtk/WebDriverServiceGtk.cpp: (WebDriver::WebDriverService::platformValidateCapability const): Properly validate the 'certificates' value, if present. (WebDriver::WebDriverService::platformParseCapabilities const): Properly parse the 'certificates' value, if present, and extract the host-certificate pairs. Source/WebKit: * UIProcess/API/glib/WebKitAutomationSession.cpp: (webkitAutomationSessionCreate): Handle any host-certificate pair that's been set for this session, creating a GTlsCertificate object through loading from the specified certificate path and marking that certificate as allowed for the specified host through the webkit_web_context_allow_tls_certificate_for_host() API. Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/inspector/remote/RemoteInspector.h trunk/Source/_javascript_Core/inspector/remote/glib/RemoteInspectorServer.cpp trunk/Source/WebDriver/Capabilities.h trunk/Source/WebDriver/ChangeLog trunk/Source/WebDriver/glib/SessionHostGlib.cpp trunk/Source/WebDriver/gtk/WebDriverServiceGtk.cpp trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/API/glib/WebKitAutomationSession.cpp Diff Modified: trunk/Source/_javascript_Core/ChangeLog (233034 => 233035) --- trunk/Source/_javascript_Core/ChangeLog 2018-06-21 11:01:08 UTC (rev 233034) +++ trunk/Source/_javascript_Core/ChangeLog 2018-06-21 11:03:58 UTC (rev 233035) @@ -1,3 +1,20 @@ +2018-06-21 Zan Dobersek + +[GTK] WebDriver: allow applying host-specific TLS certificates for automated sessions +https://bugs.webkit.org/show_bug.cgi?id=186884 + +Reviewed by Carlos Garcia Campos. + +Add a tuple array input parameter to the StartAutomationSession DBus +message, representing a list of host-and-certificate pairs that have to +be allowed for a given session. This array is then unpacked and used to +fill out the certificates Vector object in the SessionCapabilities +struct. + +* inspector/remote/RemoteInspector.h: Add a GLib-specific Vector of +String pairs representing hosts and the certificate file paths. +* inspector/remote/glib/RemoteInspectorServer.cpp: + 2018-06-20 Keith Miller Expand concurrent GC assertion to accept JSValue() or 0 Modified: trunk/Source/_javascript_Core/inspector/remote/RemoteInspector.h (233034 => 233035) --- trunk/Source/_javascript_Core/inspector/remote/RemoteInspector.h 2018-06-21 11:01:08 UTC (rev 233034) +++ trunk/Source/_javascript_Core/inspector/remote/RemoteInspector.h 2018-06-21 11:03:58 UTC (rev 233035) @@ -27,6 +27,7 @@ #if ENABLE(REMOTE_INSPECTOR) +#include #include #include #include @@ -74,6 +75,9 @@ struct SessionCapabilities { bool acceptInsecureCertificates { false }; +#if USE(GLIB) +Vector> certificates; +#endif #if PLATFORM(COCOA) std::optional allowInsecureMediaCapture; std::optional suppressICECandidateFiltering; Modified: trunk/Source/_javascript_Core/inspector/remote/glib/RemoteInspectorServer.cpp (233034 => 233035) --- trunk/Source/_javascript_Core/inspector/remote/glib/RemoteInspectorServer.cpp 2018-06-21 11:01:08 UTC (rev 233034) +++ trunk/Source/_javascript_Core/inspector/remote/glib/RemoteInspectorServer.cpp 2018-06-21 11:03:58 UTC (rev 233035) @@ -80,6 +80,7 @@ "" " " " " +" " " " " " "" @@ -124,9 +125,15 @@ } else if (!g_strcmp0(methodName, "StartAutomationSession")) { const char* sessionID; gboolean acceptInsecureCertificates; -g_variant_get(parameters, "()", , ); +
[webkit-changes] [233034] trunk/Source/WebKit
Title: [233034] trunk/Source/WebKit Revision 233034 Author cdu...@apple.com Date 2018-06-21 04:01:08 -0700 (Thu, 21 Jun 2018) Log Message Regression(r226990) : Crash under WebCore::Page::applicationWillResignActive https://bugs.webkit.org/show_bug.cgi?id=186850 Reviewed by Eric Carlson. Make sure m_page is not null before calling applicationWillResignActive(). m_page gets nulled out when WebPage::close() is called. The crash trace seems to indicate we're calling applicationWillResignActive() on a Page that is dead since we crash accessing Page::mainFrame(). * WebProcess/WebPage/ios/WebPageIOS.mm: (WebKit::WebPage::applicationWillResignActive): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm Diff Modified: trunk/Source/WebKit/ChangeLog (233033 => 233034) --- trunk/Source/WebKit/ChangeLog 2018-06-21 10:14:55 UTC (rev 233033) +++ trunk/Source/WebKit/ChangeLog 2018-06-21 11:01:08 UTC (rev 233034) @@ -1,3 +1,19 @@ +2018-06-21 Chris Dumez + +Regression(r226990) : Crash under WebCore::Page::applicationWillResignActive +https://bugs.webkit.org/show_bug.cgi?id=186850 + + +Reviewed by Eric Carlson. + +Make sure m_page is not null before calling applicationWillResignActive(). m_page +gets nulled out when WebPage::close() is called. The crash trace seems to indicate +we're calling applicationWillResignActive() on a Page that is dead since we crash +accessing Page::mainFrame(). + +* WebProcess/WebPage/ios/WebPageIOS.mm: +(WebKit::WebPage::applicationWillResignActive): + 2018-06-21 Fujii Hironori [GTK] http/tests/misc/bubble-drag-events.html crashes Modified: trunk/Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm (233033 => 233034) --- trunk/Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm 2018-06-21 10:14:55 UTC (rev 233033) +++ trunk/Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm 2018-06-21 11:01:08 UTC (rev 233034) @@ -2763,7 +2763,8 @@ void WebPage::applicationWillResignActive() { [[NSNotificationCenter defaultCenter] postNotificationName:WebUIApplicationWillResignActiveNotification object:nil]; -m_page->applicationWillResignActive(); +if (m_page) +m_page->applicationWillResignActive(); } void WebPage::applicationDidEnterBackground(bool isSuspendedUnderLock) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [233033] trunk
Title: [233033] trunk Revision 233033 Author hironori.fu...@sony.com Date 2018-06-21 03:14:55 -0700 (Thu, 21 Jun 2018) Log Message [GStreamer] ASSERTION FAILED: end.isValid() in PlatformTimeRanges::add https://bugs.webkit.org/show_bug.cgi?id=186880 Reviewed by Xabier Rodriguez-Calvar. Source/WebCore: Bug 180253 has added assertions the arugments `start` and `end` is valid MediaTime in PlatformTimeRanges::add. Since then, some LayoutTests fail due to the assertion failure. The invalid MediaTime is added into the PlatformTimeRanges in MediaPlayerPrivateGStreamer::buffered. Before adding MediaTime, original implementation checks MediaTime::operator bool() returns true. But, this method returns true if the time value is invalid. Then, PlatformTimeRanges::add is called with an invalid MediaTime. No new tests (No behavior change). * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: (WebCore::MediaPlayerPrivateGStreamer::buffered const): Check maxTimeLoaded() is valid before adding to `timeRanges`. LayoutTests: * platform/gtk/TestExpectations: Removed Crash marks of compositing/geometry/clipped-video-controller.html, fast/canvas/webgl/oes-texture-half-float-with-video.html, fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-rgb565.html, fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-rgba5551.html, fast/canvas/webgl/tex-image-and-sub-image-2d-with-video.html, fast/events/media-focus-in-standalone-media-document.html, fullscreen/video-controls-timeline.html, http/tests/appcache/video.html, and compositing/video/poster.html. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/gtk/TestExpectations trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp Diff Modified: trunk/LayoutTests/ChangeLog (233032 => 233033) --- trunk/LayoutTests/ChangeLog 2018-06-21 09:54:30 UTC (rev 233032) +++ trunk/LayoutTests/ChangeLog 2018-06-21 10:14:55 UTC (rev 233033) @@ -1,5 +1,22 @@ 2018-06-21 Fujii Hironori +[GStreamer] ASSERTION FAILED: end.isValid() in PlatformTimeRanges::add +https://bugs.webkit.org/show_bug.cgi?id=186880 + +Reviewed by Xabier Rodriguez-Calvar. + +* platform/gtk/TestExpectations: Removed Crash marks of +compositing/geometry/clipped-video-controller.html, +fast/canvas/webgl/oes-texture-half-float-with-video.html, +fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-rgb565.html, +fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-rgba5551.html, +fast/canvas/webgl/tex-image-and-sub-image-2d-with-video.html, +fast/events/media-focus-in-standalone-media-document.html, +fullscreen/video-controls-timeline.html, +http/tests/appcache/video.html, and compositing/video/poster.html. + +2018-06-21 Fujii Hironori + [GTK] http/tests/misc/bubble-drag-events.html crashes https://bugs.webkit.org/show_bug.cgi?id=182352 Modified: trunk/LayoutTests/platform/gtk/TestExpectations (233032 => 233033) --- trunk/LayoutTests/platform/gtk/TestExpectations 2018-06-21 09:54:30 UTC (rev 233032) +++ trunk/LayoutTests/platform/gtk/TestExpectations 2018-06-21 10:14:55 UTC (rev 233033) @@ -1284,15 +1284,6 @@ webkit.org/b/185910 media/video-duration-known-after-eos.html [ Crash Pass ] -webkit.org/b/180253 [ Debug ] compositing/geometry/clipped-video-controller.html [ Crash ] -webkit.org/b/180253 [ Debug ] fast/canvas/webgl/oes-texture-half-float-with-video.html [ Crash ] -webkit.org/b/180253 [ Debug ] fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-rgb565.html [ Crash ] -webkit.org/b/180253 [ Debug ] fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-rgba5551.html [ Crash ] -webkit.org/b/180253 [ Debug ] fast/canvas/webgl/tex-image-and-sub-image-2d-with-video.html [ Crash ] -webkit.org/b/180253 [ Debug ] fast/events/media-focus-in-standalone-media-document.html [ Crash ] -webkit.org/b/180253 [ Debug ] fullscreen/video-controls-timeline.html [ Crash ] -webkit.org/b/180253 [ Debug ] http/tests/appcache/video.html [ Crash ] - # Crashes only when GNOME icon theme is not installed webkit.org/b/186767 fast/hidpi/broken-image-icon-very-hidpi.html [ Crash Pass ] @@ -1928,8 +1919,7 @@ webkit.org/b/183609 inspector/unit-tests/throttle.html [ Pass Failure ] -# Crash is bug #180253 -webkit.org/b/183214 compositing/video/poster.html [ Pass ImageOnlyFailure Crash ] +webkit.org/b/183214 compositing/video/poster.html [ Pass ImageOnlyFailure ] webkit.org/b/183903 http/tests/media/video-buffered-range-contains-currentTime.html [ Crash Pass ] Modified: trunk/Source/WebCore/ChangeLog (233032 => 233033) --- trunk/Source/WebCore/ChangeLog 2018-06-21 09:54:30 UTC (rev 233032) +++ trunk/Source/WebCore/ChangeLog 2018-06-21 10:14:55 UTC (rev 233033) @@ -1,3 +1,26 @@ +2018-06-21 Fujii Hironori + +[GStreamer] ASSERTION FAILED: end.isValid() in PlatformTimeRanges::add +
[webkit-changes] [233032] trunk
Title: [233032] trunk Revision 233032 Author hironori.fu...@sony.com Date 2018-06-21 02:54:30 -0700 (Thu, 21 Jun 2018) Log Message [GTK] http/tests/misc/bubble-drag-events.html crashes https://bugs.webkit.org/show_bug.cgi?id=182352 Reviewed by Carlos Garcia Campos. Source/WebKit: PingLoad::didFinish was called twice if it is used with NetworkDataTaskSoup. PingLoad is not a ref-counted object. It is destructed when PingLoad::didFinish is called. PingLoad::didReceiveChallenge calls the ChallengeCompletionHandler with AuthenticationChallengeDisposition::Cancel to cancel the challenge and calls PingLoad::didFinish. NetworkDataTaskSoup::continueAuthenticate calls didReceiveChallenge with a ChallengeCompletionHandler which calls didCompleteWithError. PingLoad::didCompleteWithError calls PingLoad::didFinish. didCompleteWithError callback should not be called in the ChallengeCompletionHandler. * NetworkProcess/soup/NetworkDataTaskSoup.cpp: (WebKit::NetworkDataTaskSoup::continueAuthenticate): Do not call didFail() in the ChallengeCompletionHandler. Call invalidateAndCancel() instead. LayoutTests: * platform/gtk/TestExpectations: Marked http/tests/misc/bubble-drag-events.html as [ Failure ] not [ Failure Timeout Crash ]. Unmarked http/tests/misc/cached-scripts.html. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/gtk/TestExpectations trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/soup/NetworkDataTaskSoup.cpp Diff Modified: trunk/LayoutTests/ChangeLog (233031 => 233032) --- trunk/LayoutTests/ChangeLog 2018-06-21 09:27:33 UTC (rev 233031) +++ trunk/LayoutTests/ChangeLog 2018-06-21 09:54:30 UTC (rev 233032) @@ -1,3 +1,15 @@ +2018-06-21 Fujii Hironori + +[GTK] http/tests/misc/bubble-drag-events.html crashes +https://bugs.webkit.org/show_bug.cgi?id=182352 + +Reviewed by Carlos Garcia Campos. + +* platform/gtk/TestExpectations: +Marked http/tests/misc/bubble-drag-events.html as [ Failure ] not +[ Failure Timeout Crash ]. +Unmarked http/tests/misc/cached-scripts.html. + 2018-06-21 Zan Dobersek Unreviewed WPE gardening. Handle various timeouts by adjusting or Modified: trunk/LayoutTests/platform/gtk/TestExpectations (233031 => 233032) --- trunk/LayoutTests/platform/gtk/TestExpectations 2018-06-21 09:27:33 UTC (rev 233031) +++ trunk/LayoutTests/platform/gtk/TestExpectations 2018-06-21 09:54:30 UTC (rev 233032) @@ -1296,9 +1296,6 @@ # Crashes only when GNOME icon theme is not installed webkit.org/b/186767 fast/hidpi/broken-image-icon-very-hidpi.html [ Crash Pass ] -# This one crashes only on EWS. -webkit.org/b/186778 http/tests/misc/cached-scripts.html [ Crash Pass ] - webkit.org/b/186779 http/tests/security/sandboxed-iframe-DENIED-modals.html [ Crash Pass ] # @@ -2662,7 +2659,7 @@ Bug(GTK) http/tests/local/drag-over-remote-content.html [ Failure ] Bug(GTK) http/tests/security/drag-over-remote-content-iframe.html [ Failure ] Bug(GTK) fast/events/drag-in-frames.html [ Failure Timeout ] -webkit.org/b/182352 http/tests/misc/bubble-drag-events.html [ Failure Timeout Crash ] +webkit.org/b/182352 http/tests/misc/bubble-drag-events.html [ Failure ] # Dragging images and links results in a DataTransfer object containing a non-empty files array webkit.org/b/52094 editing/pasteboard/files-during-page-drags.html [ Failure ] Modified: trunk/Source/WebKit/ChangeLog (233031 => 233032) --- trunk/Source/WebKit/ChangeLog 2018-06-21 09:27:33 UTC (rev 233031) +++ trunk/Source/WebKit/ChangeLog 2018-06-21 09:54:30 UTC (rev 233032) @@ -1,3 +1,31 @@ +2018-06-21 Fujii Hironori + +[GTK] http/tests/misc/bubble-drag-events.html crashes +https://bugs.webkit.org/show_bug.cgi?id=182352 + +Reviewed by Carlos Garcia Campos. + +PingLoad::didFinish was called twice if it is used with +NetworkDataTaskSoup. PingLoad is not a ref-counted object. It is +destructed when PingLoad::didFinish is called. + +PingLoad::didReceiveChallenge calls the ChallengeCompletionHandler +with AuthenticationChallengeDisposition::Cancel to cancel the +challenge and calls PingLoad::didFinish. + +NetworkDataTaskSoup::continueAuthenticate calls +didReceiveChallenge with a ChallengeCompletionHandler which calls +didCompleteWithError. PingLoad::didCompleteWithError calls +PingLoad::didFinish. + +didCompleteWithError callback should not be called in the +ChallengeCompletionHandler. + +* NetworkProcess/soup/NetworkDataTaskSoup.cpp: +(WebKit::NetworkDataTaskSoup::continueAuthenticate): Do not call +didFail() in the ChallengeCompletionHandler. Call +invalidateAndCancel() instead. + 2018-06-20 Wenson Hsieh [WebKit on watchOS] Fixed position elements sometimes flicker when
[webkit-changes] [233031] trunk/LayoutTests
Title: [233031] trunk/LayoutTests Revision 233031 Author zandober...@gmail.com Date 2018-06-21 02:27:33 -0700 (Thu, 21 Jun 2018) Log Message Unreviewed WPE gardening. Handle various timeouts by adjusting or adding the appropriate test expectations. * platform/wpe/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/wpe/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (233030 => 233031) --- trunk/LayoutTests/ChangeLog 2018-06-21 08:54:02 UTC (rev 233030) +++ trunk/LayoutTests/ChangeLog 2018-06-21 09:27:33 UTC (rev 233031) @@ -1,3 +1,10 @@ +2018-06-21 Zan Dobersek + +Unreviewed WPE gardening. Handle various timeouts by adjusting or +adding the appropriate test expectations. + +* platform/wpe/TestExpectations: + 2018-06-20 Per Arne Vollan Layout Test imported/mozilla/css-animations/test_pseudoElement-get-animations.html is failing. Modified: trunk/LayoutTests/platform/wpe/TestExpectations (233030 => 233031) --- trunk/LayoutTests/platform/wpe/TestExpectations 2018-06-21 08:54:02 UTC (rev 233030) +++ trunk/LayoutTests/platform/wpe/TestExpectations 2018-06-21 09:27:33 UTC (rev 233031) @@ -35,7 +35,7 @@ webkit.org/b/79203 webaudio/mediastreamaudiosourcenode.html [ Failure ] webkit.org/b/79203 fast/mediastream/MediaStream-video-element-video-tracks-disabled-then-enabled.html [ Timeout Failure ] webkit.org/b/79203 fast/mediastream/MediaStream-video-element-displays-buffer.html [ Failure ] -webkit.org/b/79203 http/tests/media/media-stream/getusermedia-with-canvas.html [ Crash ] +webkit.org/b/79203 http/tests/media/media-stream/getusermedia-with-canvas.html [ Timeout ] webkit.org/b/79203 fast/mediastream/RTCPeerConnection-stats.html [ Timeout ] webkit.org/b/79203 imported/w3c/web-platform-tests/mediacapture-streams/MediaStream-MediaElement-preload-none.https.html [ Failure ] webkit.org/b/79203 imported/w3c/web-platform-tests/mediacapture-streams/MediaStreamTrack-end-manual.https.html [ Failure ] @@ -744,6 +744,11 @@ webkit.org/b/163858 fast/events/touch/touch-constructor.html [ Skip ] webkit.org/b/173411 fast/events/touch/frame-hover-update.html [ Failure ] +webkit.org/b/186879 fast/events/open-window-from-another-frame.html [ Timeout ] +webkit.org/b/186879 fast/events/popup-allowed-from-gesture-initiated-event.html [ Timeout ] +webkit.org/b/186879 fast/events/popup-blocked-from-fake-user-gesture.html [ Timeout ] +webkit.org/b/186879 fast/events/popup-blocking-timers1.html [ Timeout ] + fast/events/ios [ Skip ] fast/events/touch/ios [ Skip ] fast/events/touch/gesture [ Skip ] @@ -856,8 +861,6 @@ Bug(WPE) css3/zoom-coords.xhtml [ Failure ] webkit.org/b/133151 js/cached-window-properties.html [ Slow ] -webkit.org/b/159754 [ Release ] workers/bomb.html [ Slow ] -webkit.org/b/159754 [ Debug ] workers/bomb.html [ Skip ] # These are failures that will be enabled once the relevant parts of implementation land. webkit.org/b/133122 crypto/subtle/aes-cfb-generate-export-key-jwk-length-128.html [ Skip ] @@ -1238,3 +1241,10 @@ webkit.org/b/186754 legacy-animation-engine/accessibility/transformed-bounds.html [ Failure ] webkit.org/b/186252 legacy-animation-engine/css3/filters/backdrop/animation.html [ Timeout ] webkit.org/b/168426 legacy-animation-engine/imported/blink/animations/display-inline-style-adjust.html [ ImageOnlyFailure ] + +webkit.org/b/119253 fast/workers/dedicated-worker-lifecycle.html [ Timeout Pass ] + +Bug(WPE) js/dom/create-lots-of-workers.html [ Pass Timeout ] + +# This test is so slow that a Slow expectation is not enough to avoid flakiness. +webkit.org/b/159754 workers/bomb.html [ Skip ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [233030] trunk/Tools
Title: [233030] trunk/Tools Revision 233030 Author carlo...@webkit.org Date 2018-06-21 01:54:02 -0700 (Thu, 21 Jun 2018) Log Message run-gtk-tests (glib/common.py) cannot determine build directory when webKitBranchBuild=true https://bugs.webkit.org/show_bug.cgi?id=185643 Reviewed by Frédéric Wang. Check if webKitBranchBuild is true in git config to add the branch name to the build path. * Scripts/webkitpy/common/checkout/scm/git.py: (Git.read_git_config): Add output_type parameter. (Git.read_config): Call read_git_config with cws and executive. (Git._upstream_branch): Use read_config(). (Git._assert_can_squash): Ditto. (Git.remote_branch_ref): Ditto. * Scripts/webkitpy/common/checkout/scm/scm_unittest.py: (GitSVNTest.test_read_git_config): * glib/common.py: (get_build_path): Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/webkitpy/common/checkout/scm/git.py trunk/Tools/Scripts/webkitpy/common/checkout/scm/scm_unittest.py trunk/Tools/glib/common.py Diff Modified: trunk/Tools/ChangeLog (233029 => 233030) --- trunk/Tools/ChangeLog 2018-06-21 03:04:56 UTC (rev 233029) +++ trunk/Tools/ChangeLog 2018-06-21 08:54:02 UTC (rev 233030) @@ -1,3 +1,23 @@ +2018-06-21 Carlos Garcia Campos + +run-gtk-tests (glib/common.py) cannot determine build directory when webKitBranchBuild=true +https://bugs.webkit.org/show_bug.cgi?id=185643 + +Reviewed by Frédéric Wang. + +Check if webKitBranchBuild is true in git config to add the branch name to the build path. + +* Scripts/webkitpy/common/checkout/scm/git.py: +(Git.read_git_config): Add output_type parameter. +(Git.read_config): Call read_git_config with cws and executive. +(Git._upstream_branch): Use read_config(). +(Git._assert_can_squash): Ditto. +(Git.remote_branch_ref): Ditto. +* Scripts/webkitpy/common/checkout/scm/scm_unittest.py: +(GitSVNTest.test_read_git_config): +* glib/common.py: +(get_build_path): + 2018-06-20 Wenson Hsieh [WebKit on watchOS] Fixed position elements sometimes flicker when scrolling Modified: trunk/Tools/Scripts/webkitpy/common/checkout/scm/git.py (233029 => 233030) --- trunk/Tools/Scripts/webkitpy/common/checkout/scm/git.py 2018-06-21 03:04:56 UTC (rev 233029) +++ trunk/Tools/Scripts/webkitpy/common/checkout/scm/git.py 2018-06-21 08:54:02 UTC (rev 233030) @@ -136,14 +136,23 @@ return filepath.replace(root_end_with_slash, '') @classmethod -def read_git_config(cls, key, cwd=None, executive=None): +def read_git_config(cls, key, output_type=None, cwd=None, executive=None): # FIXME: This should probably use cwd=self.checkout_root. # Pass --get-all for cases where the config has multiple values # Pass the cwd if provided so that we can handle the case of running webkit-patch outside of the working directory. # FIXME: This should use an Executive. executive = executive or Executive() -return executive.run_command([cls.executable_name, "config", "--get-all", key], ignore_errors=True, cwd=cwd).rstrip('\n') +cmd = [cls.executable_name, "config", "--get-all"] +if output_type == bool: +cmd.append("--bool") +elif output_type == int: +cmd.append("--int") +cmd.append(key) +return executive.run_command(cmd, ignore_errors=True, cwd=cwd).rstrip('\n') +def read_config(self, key, output_type=None): +return self.read_git_config(key, output_type, self.checkout_root, self._executive) + @staticmethod def commit_success_regexp(): return "^Committed r(?P\d+)$" @@ -193,7 +202,7 @@ def _upstream_branch(self): current_branch = self._current_branch() -return self._branch_from_ref(self.read_git_config('branch.%s.merge' % current_branch, cwd=self.checkout_root, executive=self._executive).strip()) +return self._branch_from_ref(self.read_config('branch.%s.merge' % current_branch).strip()) def merge_base(self, git_commit): if git_commit: @@ -406,7 +415,7 @@ self._run_git(['checkout', 'HEAD'] + file_paths) def _assert_can_squash(self, has_working_directory_changes): -squash = self.read_git_config('webkit-patch.commit-should-always-squash', cwd=self.checkout_root, executive=self._executive) +squash = self.read_config('webkit-patch.commit-should-always-squash') should_squash = squash and squash.lower() == "true" if not should_squash: @@ -518,7 +527,7 @@ def remote_branch_ref(self): # Use references so that we can avoid collisions, e.g. we don't want to operate on refs/heads/trunk if it exists. -remote_branch_refs = self.read_git_config('svn-remote.svn.fetch', cwd=self.checkout_root, executive=self._executive) +remote_branch_refs = self.read_config('svn-remote.svn.fetch') if not remote_branch_refs: