Timeline
Feb 22, 2018:
- 10:41 PM Changeset in webkit [228943] by
-
- 4 edits2 adds in trunk
[FTL] Support HasIndexedProperty for ArrayStorage and SlowPutArrayStorage
https://bugs.webkit.org/show_bug.cgi?id=182792
Reviewed by Mark Lam.
JSTests:
- stress/has-indexed-property-array-storage.js: Added.
(shouldBe):
(test1):
(test2):
- stress/has-indexed-property-slow-put-array-storage.js: Added.
(shouldBe):
(test1):
(test2):
Source/JavaScriptCore:
This patch adds HasIndexedProperty for ArrayStorage and SlowPutArrayStorage in FTL.
HasIndexedProperty with ArrayStorage frequently causes FTL compilation failures
in web-tooling-benchmarks.
- ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
- ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileHasIndexedProperty):
- 8:18 PM Changeset in webkit [228942] by
-
- 76 edits in trunk
Remove currentTime() / currentTimeMS()
https://bugs.webkit.org/show_bug.cgi?id=183052
Reviewed by Mark Lam.
Source/WebCore:
- Modules/geolocation/Geolocation.cpp:
(WebCore::Geolocation::haveSuitableCachedPosition):
- dom/DOMTimeStamp.h:
(WebCore::convertSecondsToDOMTimeStamp):
- fileapi/File.cpp:
(WebCore::File::File):
(WebCore::File::lastModified const):
- history/HistoryItem.cpp:
(WebCore::generateSequenceNumber):
- html/BaseDateAndTimeInputType.cpp:
(WebCore::BaseDateAndTimeInputType::defaultValueForStepUp const):
- html/DateTimeInputType.cpp:
(WebCore::DateTimeInputType::defaultValueForStepUp const):
- html/MonthInputType.cpp:
(WebCore::MonthInputType::defaultValueForStepUp const):
- html/TimeInputType.cpp:
(WebCore::TimeInputType::defaultValueForStepUp const):
- inspector/agents/InspectorNetworkAgent.cpp:
(WebCore::InspectorNetworkAgent::willSendRequest):
(WebCore::InspectorNetworkAgent::willSendWebSocketHandshakeRequest):
- loader/EmptyFrameLoaderClient.h:
- loader/FormSubmission.cpp:
(WebCore::generateFormDataIdentifier):
- loader/FrameLoader.cpp:
(WebCore::FrameLoader::clientRedirected):
- loader/FrameLoader.h:
- loader/FrameLoaderClient.h:
- loader/NavigationScheduler.cpp:
- page/History.cpp:
(WebCore::History::stateObjectAdded):
- page/History.h:
- page/PageOverlay.cpp:
(WebCore::PageOverlay::startFadeAnimation):
(WebCore::PageOverlay::fadeAnimationTimerFired):
- page/PageOverlay.h:
- platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::GraphicsContext::drawNativeImage):
- platform/ios/LegacyTileLayerPool.h:
- platform/ios/LegacyTileLayerPool.mm:
(WebCore::LegacyTileLayerPool::LegacyTileLayerPool):
(WebCore::LegacyTileLayerPool::addLayer):
(WebCore::LegacyTileLayerPool::decayedCapacity const):
(WebCore::LegacyTileLayerPool::prune):
- platform/ios/SystemMemoryIOS.cpp:
(WebCore::systemMemoryLevel):
- platform/mediastream/mac/DisplayCaptureSourceCocoa.cpp:
- platform/mediastream/mac/ScreenDisplayCaptureSourceMac.mm:
Source/WebKit:
- NetworkProcess/cache/CacheStorageEngineCache.cpp:
- PluginProcess/WebProcessConnection.cpp:
- Shared/WebProcessCreationParameters.h:
- Shared/linux/WebMemorySamplerLinux.cpp:
(WebKit::WebMemorySampler::sampleWebKit const):
- Shared/mac/WebMemorySampler.mac.mm:
(WebKit::WebMemorySampler::sampleWebKit const):
- UIProcess/API/C/WKContext.cpp:
(WKContextSetPlugInAutoStartOriginsFilteringOutEntriesAddedAfterTime):
- UIProcess/API/glib/IconDatabase.cpp:
(WebKit::IconDatabase::setIconDataForIconURL):
(WebKit::IconDatabase::synchronousLoadDecisionForIconURL):
(WebKit::IconDatabase::performURLImport):
- UIProcess/DrawingAreaProxyImpl.cpp:
- UIProcess/Plugins/PlugInAutoStartProvider.cpp:
(WebKit::expirationTimeFromNow):
(WebKit::PlugInAutoStartProvider::addAutoStartOriginHash):
(WebKit::PlugInAutoStartProvider::autoStartOriginsTableCopy const):
(WebKit::PlugInAutoStartProvider::setAutoStartOriginsTable):
(WebKit::PlugInAutoStartProvider::setAutoStartOriginsFilteringOutEntriesAddedAfterTime):
(WebKit::PlugInAutoStartProvider::setAutoStartOriginsTableWithItemsPassingTest):
(WebKit::PlugInAutoStartProvider::didReceiveUserInteraction):
- UIProcess/Plugins/PlugInAutoStartProvider.h:
- UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::processDidFinishLaunching):
(WebKit::WebProcessPool::startMemorySampler):
(WebKit::WebProcessPool::setPlugInAutoStartOriginsFilteringOutEntriesAddedAfterTime):
- UIProcess/WebProcessPool.h:
- WebProcess/InjectedBundle/API/APIInjectedBundlePageLoaderClient.h:
(API::InjectedBundle::PageLoaderClient::willPerformClientRedirectForFrame):
- WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
(WebKit::InjectedBundlePageLoaderClient::willPerformClientRedirectForFrame):
- WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
- WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchWillPerformClientRedirect):
- WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
- WebProcess/WebProcess.cpp:
(WebKit::m_webSQLiteDatabaseTracker):
(WebKit::WebProcess::isPlugInAutoStartOriginHash):
(WebKit::WebProcess::plugInDidStartFromOrigin):
(WebKit::WebProcess::didAddPlugInAutoStartOriginHash):
(WebKit::WebProcess::resetPlugInAutoStartOriginDefaultHashes):
(WebKit::WebProcess::resetPlugInAutoStartOriginHashes):
(WebKit::WebProcess::plugInDidReceiveUserInteraction):
- WebProcess/WebProcess.h:
- WebProcess/WebProcess.messages.in:
- WebProcess/cocoa/WebProcessCocoa.mm:
- WebProcess/wpe/WebProcessMainWPE.cpp:
Source/WebKitLegacy/mac:
- WebCoreSupport/WebFrameLoaderClient.h:
- WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::dispatchWillPerformClientRedirect):
Source/WebKitLegacy/win:
- WebCoreSupport/WebFrameLoaderClient.cpp:
(WebFrameLoaderClient::dispatchWillPerformClientRedirect):
- WebCoreSupport/WebFrameLoaderClient.h:
- WebDownload.h:
- WebDownloadCFNet.cpp:
(WebDownload::didStart):
(WebDownload::didReceiveData):
(WebDownload::didFinish):
Source/WTF:
This patch removes WTF::currentTime() and WTF::currentTimeMS().
We have fancy WallTime APIs. It has strong types like WallTime and Seconds,
and this reduces the chance of bugs mixing doubles which represent milliseconds
and seconds.
- wtf/Condition.h:
- wtf/CurrentTime.cpp:
(WTF::currentTime):
(WTF::WallTime::now):
- wtf/CurrentTime.h:
(WTF::currentTimeMS): Deleted.
- wtf/DateMath.h:
(WTF::jsCurrentTime):
- wtf/ParkingLot.cpp:
(WTF::ParkingLot::parkConditionallyImpl):
- wtf/ThreadingPrimitives.h:
- wtf/ThreadingPthreads.cpp:
(WTF::ThreadCondition::timedWait):
- wtf/ThreadingWin.cpp:
(WTF::ThreadCondition::timedWait):
(WTF::absoluteTimeToWaitTimeoutInterval):
- wtf/WallTime.cpp:
(WTF::WallTime::now): Deleted.
- wtf/WallTime.h:
Tools:
- DumpRenderTree/TestRunner.cpp:
(preciseTimeCallback):
- DumpRenderTree/mac/TestRunnerMac.mm:
(TestRunner::setMockGeolocationPosition):
- TestWebKitAPI/Tests/WTF/Condition.cpp:
- TestWebKitAPI/Tests/WTF/ThreadGroup.cpp:
- TestWebKitAPI/Tests/WTF/WorkQueue.cpp:
- WebKitTestRunner/GeolocationProviderMock.cpp:
(WTR::GeolocationProviderMock::setPosition):
- WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::preciseTime):
- 5:20 PM Changeset in webkit [228941] by
-
- 7 edits in branches/safari-605-branch/Source
Versioning.
- 4:17 PM Changeset in webkit [228940] by
-
- 3 edits in trunk/Source/WebCore
The WebContent process should not use NSScreen in the screenDepth implementation.
https://bugs.webkit.org/show_bug.cgi?id=183048
Reviewed by Brent Fulgham.
NSScreen method calls should be done in the UIProcess, since these calls will communicate with
the WindowServer. The screen depth property can be retrieved in the UIProcess, and sent to the
WebContent process, where it is cached. Whenever screen properties change, the UIProcess will
send the new screen properties to the WebProcess.
No new tests, covered by existing tests.
- platform/ScreenProperties.h:
(WebCore::ScreenProperties::encode const):
(WebCore::ScreenProperties::decode):
- platform/mac/PlatformScreenMac.mm:
(WebCore::getScreenProperties):
(WebCore::screenDepth):
(WebCore::screenDepthPerComponent):
(WebCore::screenRect):
(WebCore::screenAvailableRect):
- 4:10 PM Changeset in webkit [228939] by
-
- 1 copy in tags/Safari-605.1.30
Tag Safari-605.1.30.
- 3:35 PM WebKitGTK/StableRelease edited by
- (diff)
- 3:19 PM Changeset in webkit [228938] by
-
- 36 edits in trunk/Source/WebCore
[RenderTreeBuilder] Rename insertChild() -> attach(), takeChild() -> detach() and removeAndDestroy() -> destroy()
https://bugs.webkit.org/show_bug.cgi?id=183061
<rdar://problem/37800269>
Reviewed by Ryosuke Niwa.
...and moveChildTo() -> move() (moveChildrenTo() -> moveChildren()),
removeFromParentAndDestroyCleaningUpAnonymousWrappers() -> destroyAndCleanUpAnonymousWrappers()
No change in functionality.
- dom/Document.cpp:
(WebCore::Document::destroyRenderTree):
(WebCore::Document::setFullScreenRenderer):
- rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::styleDidChange):
- rendering/RenderButton.cpp:
(WebCore::RenderButton::setText):
- rendering/RenderElement.cpp:
(WebCore::RenderElement::didAttachChild):
(WebCore::RenderElement::didInsertChild): Deleted.
- rendering/RenderElement.h:
- rendering/RenderFullScreen.cpp:
(WebCore::RenderFullScreen::wrapNewRenderer):
(WebCore::RenderFullScreen::wrapExistingRenderer):
(WebCore::RenderFullScreen::unwrapRenderer):
(WebCore::RenderFullScreen::createPlaceholder):
- rendering/RenderMenuList.cpp:
(RenderMenuList::didAttachChild):
(RenderMenuList::setText):
(RenderMenuList::didInsertChild): Deleted.
- rendering/RenderMenuList.h:
- rendering/RenderQuote.cpp:
(WebCore::RenderQuote::updateTextRenderer):
- rendering/RenderTextFragment.cpp:
(WebCore::RenderTextFragment::setText):
- rendering/updating/RenderTreeBuilder.cpp:
(WebCore::RenderTreeBuilder::destroy):
(WebCore::RenderTreeBuilder::attach):
(WebCore::RenderTreeBuilder::attachIgnoringContinuation):
(WebCore::RenderTreeBuilder::detach):
(WebCore::RenderTreeBuilder::attachToRenderElement):
(WebCore::RenderTreeBuilder::attachToRenderElementInternal):
(WebCore::RenderTreeBuilder::move):
(WebCore::RenderTreeBuilder::moveAllChildren):
(WebCore::RenderTreeBuilder::moveChildren):
(WebCore::RenderTreeBuilder::moveAllChildrenIncludingFloats):
(WebCore::RenderTreeBuilder::makeChildrenNonInline):
(WebCore::RenderTreeBuilder::splitAnonymousBoxesAroundChild):
(WebCore::RenderTreeBuilder::childFlowStateChangesAndAffectsParentBlock):
(WebCore::RenderTreeBuilder::destroyAndCleanUpAnonymousWrappers):
(WebCore::RenderTreeBuilder::detachFromRenderGrid):
(WebCore::RenderTreeBuilder::detachFromRenderElement):
(WebCore::RenderTreeBuilder::attachToRenderGrid):
(WebCore::RenderTreeBuilder::removeAndDestroy): Deleted.
(WebCore::RenderTreeBuilder::insertChild): Deleted.
(WebCore::RenderTreeBuilder::insertChildIgnoringContinuation): Deleted.
(WebCore::RenderTreeBuilder::takeChild): Deleted.
(WebCore::RenderTreeBuilder::insertChildToRenderElement): Deleted.
(WebCore::RenderTreeBuilder::insertChildToRenderElementInternal): Deleted.
(WebCore::RenderTreeBuilder::moveChildTo): Deleted.
(WebCore::RenderTreeBuilder::moveAllChildrenTo): Deleted.
(WebCore::RenderTreeBuilder::moveChildrenTo): Deleted.
(WebCore::RenderTreeBuilder::moveAllChildrenIncludingFloatsTo): Deleted.
(WebCore::RenderTreeBuilder::removeFromParentAndDestroyCleaningUpAnonymousWrappers): Deleted.
(WebCore::RenderTreeBuilder::takeChildFromRenderGrid): Deleted.
(WebCore::RenderTreeBuilder::takeChildFromRenderElement): Deleted.
(WebCore::RenderTreeBuilder::insertChildToRenderGrid): Deleted.
- rendering/updating/RenderTreeBuilder.h:
- rendering/updating/RenderTreeBuilderBlock.cpp:
(WebCore::RenderTreeBuilder::Block::attach):
(WebCore::RenderTreeBuilder::Block::insertChildToContinuation):
(WebCore::RenderTreeBuilder::Block::attachIgnoringContinuation):
(WebCore::RenderTreeBuilder::Block::removeLeftoverAnonymousBlock):
(WebCore::RenderTreeBuilder::Block::detach):
(WebCore::RenderTreeBuilder::Block::dropAnonymousBoxChild):
(WebCore::RenderTreeBuilder::Block::insertChild): Deleted.
(WebCore::RenderTreeBuilder::Block::insertChildIgnoringContinuation): Deleted.
(WebCore::RenderTreeBuilder::Block::takeChild): Deleted.
- rendering/updating/RenderTreeBuilderBlock.h:
- rendering/updating/RenderTreeBuilderBlockFlow.cpp:
(WebCore::RenderTreeBuilder::BlockFlow::attach):
(WebCore::RenderTreeBuilder::BlockFlow::moveAllChildrenIncludingFloats):
(WebCore::RenderTreeBuilder::BlockFlow::insertChild): Deleted.
(WebCore::RenderTreeBuilder::BlockFlow::moveAllChildrenIncludingFloatsTo): Deleted.
- rendering/updating/RenderTreeBuilderBlockFlow.h:
- rendering/updating/RenderTreeBuilderContinuation.cpp:
(WebCore::RenderTreeBuilder::Continuation::cleanupOnDestroy):
- rendering/updating/RenderTreeBuilderFirstLetter.cpp:
(WebCore::RenderTreeBuilder::FirstLetter::cleanupOnDestroy):
(WebCore::RenderTreeBuilder::FirstLetter::updateStyle):
(WebCore::RenderTreeBuilder::FirstLetter::createRenderers):
- rendering/updating/RenderTreeBuilderFormControls.cpp:
(WebCore::RenderTreeBuilder::FormControls::attach):
(WebCore::RenderTreeBuilder::FormControls::detach):
(WebCore::RenderTreeBuilder::FormControls::findOrCreateParentForChild):
(WebCore::RenderTreeBuilder::FormControls::insertChild): Deleted.
(WebCore::RenderTreeBuilder::FormControls::takeChild): Deleted.
- rendering/updating/RenderTreeBuilderFormControls.h:
- rendering/updating/RenderTreeBuilderFullScreen.cpp:
(WebCore::RenderTreeBuilder::FullScreen::cleanupOnDestroy):
- rendering/updating/RenderTreeBuilderInline.cpp:
(WebCore::RenderTreeBuilder::Inline::attach):
(WebCore::RenderTreeBuilder::Inline::insertChildToContinuation):
(WebCore::RenderTreeBuilder::Inline::attachIgnoringContinuation):
(WebCore::RenderTreeBuilder::Inline::splitFlow):
(WebCore::RenderTreeBuilder::Inline::splitInlines):
(WebCore::RenderTreeBuilder::Inline::childBecameNonInline):
(WebCore::RenderTreeBuilder::Inline::insertChild): Deleted.
(WebCore::RenderTreeBuilder::Inline::insertChildIgnoringContinuation): Deleted.
- rendering/updating/RenderTreeBuilderInline.h:
- rendering/updating/RenderTreeBuilderList.cpp:
(WebCore::RenderTreeBuilder::List::updateItemMarker):
- rendering/updating/RenderTreeBuilderMathML.cpp:
(WebCore::RenderTreeBuilder::MathML::makeFences):
(WebCore::RenderTreeBuilder::MathML::attach):
(WebCore::RenderTreeBuilder::MathML::insertChild): Deleted.
- rendering/updating/RenderTreeBuilderMathML.h:
- rendering/updating/RenderTreeBuilderMultiColumn.cpp:
(WebCore::RenderTreeBuilder::MultiColumn::createFragmentedFlow):
(WebCore::RenderTreeBuilder::MultiColumn::destroyFragmentedFlow):
(WebCore::RenderTreeBuilder::MultiColumn::processPossibleSpannerDescendant):
(WebCore::RenderTreeBuilder::MultiColumn::handleSpannerRemoval):
- rendering/updating/RenderTreeBuilderRuby.cpp:
(WebCore::RenderTreeBuilder::Ruby::moveInlineChildren):
(WebCore::RenderTreeBuilder::Ruby::moveBlockChildren):
(WebCore::RenderTreeBuilder::Ruby::attach):
(WebCore::RenderTreeBuilder::Ruby::findOrCreateParentForChild):
(WebCore::RenderTreeBuilder::Ruby::rubyBaseSafe):
(WebCore::RenderTreeBuilder::Ruby::detach):
(WebCore::RenderTreeBuilder::Ruby::insertChild): Deleted.
(WebCore::RenderTreeBuilder::Ruby::takeChild): Deleted.
- rendering/updating/RenderTreeBuilderRuby.h:
- rendering/updating/RenderTreeBuilderSVG.cpp:
(WebCore::RenderTreeBuilder::SVG::attach):
(WebCore::RenderTreeBuilder::SVG::detach):
(WebCore::RenderTreeBuilder::SVG::insertChild): Deleted.
(WebCore::RenderTreeBuilder::SVG::takeChild): Deleted.
- rendering/updating/RenderTreeBuilderSVG.h:
- rendering/updating/RenderTreeBuilderTable.cpp:
(WebCore::RenderTreeBuilder::Table::findOrCreateParentForChild):
(WebCore::RenderTreeBuilder::Table::attach):
(WebCore::RenderTreeBuilder::Table::collapseAndDestroyAnonymousSiblingRows):
(WebCore::RenderTreeBuilder::Table::insertChild): Deleted.
- rendering/updating/RenderTreeBuilderTable.h:
- rendering/updating/RenderTreeUpdater.cpp:
(WebCore::RenderTreeUpdater::createRenderer):
(WebCore::RenderTreeUpdater::createTextRenderer):
(WebCore::RenderTreeUpdater::tearDownRenderers):
(WebCore::RenderTreeUpdater::tearDownTextRenderer):
(WebCore::RenderTreeUpdater::tearDownLeftoverPaginationRenderersIfNeeded):
- rendering/updating/RenderTreeUpdaterGeneratedContent.cpp:
(WebCore::createContentRenderers):
- 2:58 PM Changeset in webkit [228937] by
-
- 2 edits in trunk/Source/WebKit
Web Inspector: REGRESSION (r228349): ImageBitmap builtin is now runtime guarded
https://bugs.webkit.org/show_bug.cgi?id=183056
<rdar://problem/37799067>
Reviewed by Joseph Pecoraro.
- WebProcess/WebPage/WebInspectorUI.cpp:
(WebKit::WebInspectorUI::WebInspectorUI):
- 2:53 PM Changeset in webkit [228936] by
-
- 2 edits in trunk/Source/WebKit
Caches::initialize should call all pending initialization callbacks in case of error
https://bugs.webkit.org/show_bug.cgi?id=183062
Patch by Youenn Fablet <youenn@apple.com> on 2018-02-22
Reviewed by Chris Dumez.
- NetworkProcess/cache/CacheStorageEngineCaches.cpp:
(WebKit::CacheStorage::Caches::initialize):
(WebKit::CacheStorage::Caches::initializeSize):
- 2:50 PM Changeset in webkit [228935] by
-
- 6 edits in trunk
CacheStorage::Engine::Caches::writeRecord is not always calling the completion handler
https://bugs.webkit.org/show_bug.cgi?id=183055
Patch by Youenn Fablet <youenn@apple.com> on 2018-02-22
Reviewed by Chris Dumez.
Source/WebKit:
Add a completion handler to Storage::store.
Use it instead in Caches::writeRecord.
This ensures that the Cache add/put promise will be called once all write operations have been done.
- NetworkProcess/cache/CacheStorageEngineCaches.cpp:
(WebKit::CacheStorage::Caches::writeRecord):
- NetworkProcess/cache/NetworkCacheStorage.cpp:
(WebKit::NetworkCache::Storage::WriteOperation::WriteOperation):
(WebKit::NetworkCache::Storage::finishWriteOperation):
(WebKit::NetworkCache::Storage::store):
- NetworkProcess/cache/NetworkCacheStorage.h:
(WebKit::NetworkCache::Storage::store):
LayoutTests:
- http/tests/cache-storage/resources/cache-persistency-iframe.html:
- 2:36 PM Changeset in webkit [228934] by
-
- 2 edits in trunk/Source/WebCore
ResourceRequestBase::isolatedCopy() fails to isolate copy the cachePartition
https://bugs.webkit.org/show_bug.cgi?id=183059
<rdar://problem/37800202>
Reviewed by Youenn Fablet.
Update ResourceRequestBase::setAsIsolatedCopy() to call isolatedCopy() on the cachePartition as well,
given that it is a String and it would not be safe to send it to another thread otherwise.
- platform/network/ResourceRequestBase.cpp:
(WebCore::ResourceRequestBase::setAsIsolatedCopy):
- 2:09 PM WebKitGTK/Debugging edited by
- It's not CPPFLAGS, it's CXXFLAGS (diff)
- 2:05 PM Changeset in webkit [228933] by
-
- 5 edits in trunk/Source/WebKit
Add an entitlement check for service worker on iOS
https://bugs.webkit.org/show_bug.cgi?id=182865
Reviewed by Dan Bernstein.
Addressed Dan's comment by using xpc_connection_copy_entitlement_value instead of obtaining the audit token first.
- Shared/mac/SandboxUtilities.h:
- Shared/mac/SandboxUtilities.mm:
(WebKit::connectedProcessHasEntitlement):
- StorageProcess/ios/StorageProcessIOS.mm:
(WebKit::StorageProcess::parentProcessHasServiceWorkerEntitlement const):
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::parentProcessHasServiceWorkerEntitlement const):
- 1:53 PM Changeset in webkit [228932] by
-
- 10 edits in trunk/Source/JavaScriptCore
Refactor MacroAssembler code to improve reuse and extensibility.
https://bugs.webkit.org/show_bug.cgi?id=183054
<rdar://problem/37797337>
Reviewed by Saam Barati.
- assembler/ARM64Assembler.h:
- assembler/MacroAssembler.cpp:
- assembler/MacroAssembler.h:
- assembler/MacroAssemblerARM.h:
- assembler/MacroAssemblerARM64.h:
(JSC::MacroAssemblerARM64::canCompact):
(JSC::MacroAssemblerARM64::computeJumpType):
(JSC::MacroAssemblerARM64::jumpSizeDelta):
(JSC::MacroAssemblerARM64::link):
(JSC::MacroAssemblerARM64::load64):
(JSC::MacroAssemblerARM64::load64WithAddressOffsetPatch):
(JSC::MacroAssemblerARM64::load32):
(JSC::MacroAssemblerARM64::load32WithAddressOffsetPatch):
(JSC::MacroAssemblerARM64::load16):
(JSC::MacroAssemblerARM64::load16SignedExtendTo32):
(JSC::MacroAssemblerARM64::load8):
(JSC::MacroAssemblerARM64::load8SignedExtendTo32):
(JSC::MacroAssemblerARM64::store64):
(JSC::MacroAssemblerARM64::store64WithAddressOffsetPatch):
(JSC::MacroAssemblerARM64::store32):
(JSC::MacroAssemblerARM64::store32WithAddressOffsetPatch):
(JSC::MacroAssemblerARM64::store16):
(JSC::MacroAssemblerARM64::store8):
(JSC::MacroAssemblerARM64::getEffectiveAddress):
(JSC::MacroAssemblerARM64::branchDoubleNonZero):
(JSC::MacroAssemblerARM64::branchDoubleZeroOrNaN):
(JSC::MacroAssemblerARM64::branchTruncateDoubleToInt32):
(JSC::MacroAssemblerARM64::loadDouble):
(JSC::MacroAssemblerARM64::loadFloat):
(JSC::MacroAssemblerARM64::moveConditionallyAfterFloatingPointCompare):
(JSC::MacroAssemblerARM64::moveDoubleConditionallyAfterFloatingPointCompare):
(JSC::MacroAssemblerARM64::storeDouble):
(JSC::MacroAssemblerARM64::storeFloat):
(JSC::MacroAssemblerARM64::call):
(JSC::MacroAssemblerARM64::jump):
(JSC::MacroAssemblerARM64::tailRecursiveCall):
(JSC::MacroAssemblerARM64::setCarry):
(JSC::MacroAssemblerARM64::reemitInitialMoveWithPatch):
(JSC::MacroAssemblerARM64::isBreakpoint):
(JSC::MacroAssemblerARM64::invert):
(JSC::MacroAssemblerARM64::readCallTarget):
(JSC::MacroAssemblerARM64::replaceWithVMHalt):
(JSC::MacroAssemblerARM64::replaceWithJump):
(JSC::MacroAssemblerARM64::maxJumpReplacementSize):
(JSC::MacroAssemblerARM64::patchableJumpSize):
(JSC::MacroAssemblerARM64::repatchCall):
(JSC::MacroAssemblerARM64::makeBranch):
(JSC::MacroAssemblerARM64::makeCompareAndBranch):
(JSC::MacroAssemblerARM64::makeTestBitAndBranch):
(JSC::MacroAssemblerARM64::ARM64Condition):
(JSC::MacroAssemblerARM64::moveWithFixedWidth):
(JSC::MacroAssemblerARM64::load):
(JSC::MacroAssemblerARM64::store):
(JSC::MacroAssemblerARM64::tryLoadWithOffset):
(JSC::MacroAssemblerARM64::tryLoadSignedWithOffset):
(JSC::MacroAssemblerARM64::tryStoreWithOffset):
(JSC::MacroAssemblerARM64::jumpAfterFloatingPointCompare):
(JSC::MacroAssemblerARM64::linkCall):
- assembler/MacroAssemblerARMv7.h:
- assembler/MacroAssemblerMIPS.h:
- assembler/MacroAssemblerX86Common.h:
- assembler/ProbeStack.h:
- Removed a forward declaration of an obsolete class.
- 1:40 PM Changeset in webkit [228931] by
-
- 2 edits in trunk/Source/WebCore
ServiceWorkerContainer::startScriptFetchForJob() fails to isolate copy the registrationKey before passing it to the main thread
https://bugs.webkit.org/show_bug.cgi?id=183050
<rdar://problem/37796881>
Reviewed by Youenn Fablet.
Create an isolated copy of the registrationKey before passing it to the main thread in ServiceWorkerContainer's
startScriptFetchForJob() / jobFinishedLoadingScript() / jobFailedLoadingScript().
- workers/service/ServiceWorkerContainer.cpp:
(WebCore::ServiceWorkerContainer::startScriptFetchForJob):
(WebCore::ServiceWorkerContainer::jobFinishedLoadingScript):
(WebCore::ServiceWorkerContainer::jobFailedLoadingScript):
- 12:42 PM Changeset in webkit [228930] by
-
- 2 edits in trunk/Source/WebKit
Fetch event release assert should take into account the fetch mode
https://bugs.webkit.org/show_bug.cgi?id=183047
Patch by Youenn Fablet <youenn@apple.com> on 2018-02-22
Reviewed by Chris Dumez.
In case of navigation tasks, we should use the request URL and not the origin of the loading client.
- WebProcess/Storage/WebSWContextManagerConnection.cpp:
(WebKit::isValidFetch):
(WebKit::WebSWContextManagerConnection::startFetch):
- 11:50 AM Changeset in webkit [228929] by
-
- 3 edits in trunk/Source/WebKit
[WinCairo] Fix compile errors in WebPageWin.cpp and WebProcessWin.cpp due to WebCore forwarding header paths
https://bugs.webkit.org/show_bug.cgi?id=182969
Patch by Yousuke Kimoto <yousuke.kimoto@sony.com> on 2018-02-22
Reviewed by Konstantin Tokarev.
- WebProcess/WebPage/win/WebPageWin.cpp:
- WebProcess/win/WebProcessWin.cpp:
- 11:46 AM Changeset in webkit [228928] by
-
- 2 edits in trunk/Source/WebCore
ServiceWorkerContainer::scheduleJob() fails to isolate copy the jobData before passing it to the main thread
https://bugs.webkit.org/show_bug.cgi?id=183046
<rdar://problem/37793395>
Reviewed by Youenn Fablet.
Make sure we isolate copy the jobData before passing it to the main thread in ServiceWorkerContainer::scheduleJob().
The jobData contains Strings / URLs so it is not safe to have non-isolated copies of it on various threads.
- workers/service/ServiceWorkerContainer.cpp:
(WebCore::ServiceWorkerContainer::scheduleJob):
- 11:41 AM Changeset in webkit [228927] by
-
- 3 edits in trunk/Source/WebCore
[Curl] Fix warning on clang.
https://bugs.webkit.org/show_bug.cgi?id=182986
Patch by Basuke Suzuki <Basuke Suzuki> on 2018-02-22
Reviewed by Konstantin Tokarev.
No new tests because there's no behaviro changes.
- platform/network/curl/CurlResourceHandleDelegate.cpp:
(WebCore::CurlResourceHandleDelegate::curlDidSendData):
(WebCore::CurlResourceHandleDelegate::curlDidReceiveBuffer):
(WebCore::CurlResourceHandleDelegate::curlDidFailWithError):
- platform/network/curl/CurlResourceHandleDelegate.h:
- 10:54 AM Changeset in webkit [228926] by
-
- 26 edits in trunk
Remove sleep(double) and sleepMS(double) interfaces
https://bugs.webkit.org/show_bug.cgi?id=183038
Reviewed by Mark Lam.
Source/JavaScriptCore:
- bytecode/SuperSampler.cpp:
(JSC::initializeSuperSampler):
Source/WebKit:
- PluginProcess/WebProcessConnection.cpp:
(WebKit::WebProcessConnection::createPluginAsynchronously):
- UIProcess/linux/MemoryPressureMonitor.cpp:
(WebKit::pollIntervalForUsedMemoryPercentage):
(WebKit::MemoryPressureMonitor::MemoryPressureMonitor):
- WebProcess/wpe/WebProcessMainWPE.cpp:
Source/WTF:
This patch removes sleep(double) and sleepMS(double) interfaces.
We can just use sleep(Seconds) instead.
- benchmarks/LockFairnessTest.cpp:
- benchmarks/LockSpeedTest.cpp:
- wtf/CurrentTime.cpp:
(WTF::sleep):
- wtf/CurrentTime.h:
(WTF::sleepMS): Deleted.
- wtf/DebugUtilities.h:
- wtf/Seconds.cpp:
(WTF::sleep): Deleted.
- wtf/Seconds.h:
- wtf/StackShotProfiler.h:
Tools:
- DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp:
(PluginTest::indicateTestFailure):
- DumpRenderTree/TestNetscapePlugIn/Tests/EvaluateJSWithinNPP_New.cpp:
(EvaluteJSWithinNPP_New::NPP_New):
- DumpRenderTree/TestNetscapePlugIn/Tests/InvokeDestroysPluginWithinNPP_New.cpp:
(InvokeDestroysPluginWithinNPP_New::NPP_New):
- DumpRenderTree/TestNetscapePlugIn/Tests/SlowNPPNew.cpp:
- TestWebKitAPI/Tests/WTF/Signals.cpp:
(TEST):
- TestWebKitAPI/Tests/WTF/ThreadGroup.cpp:
(TestWebKitAPI::testThreadGroup):
- TestWebKitAPI/Tests/WTF/WorkQueue.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKitCocoa/PictureInPictureDelegate.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/jsconly/PlatformUtilitiesJSCOnly.cpp:
(TestWebKitAPI::Util::sleep):
- 10:51 AM Changeset in webkit [228925] by
-
- 2 edits in trunk/Source/WebKit
Add release logging for CacheStorage::Engine disk related functions
https://bugs.webkit.org/show_bug.cgi?id=183042
Patch by Youenn Fablet <youenn@apple.com> on 2018-02-22
Reviewed by Chris Dumez.
- NetworkProcess/cache/CacheStorageEngine.cpp:
(WebKit::CacheStorage::Engine::writeFile):
(WebKit::CacheStorage::Engine::readFile):
- 10:48 AM Changeset in webkit [228924] by
-
- 2 edits in trunk/Source/WebCore
WorkerCacheStorageConnection::doRemove can assert in case two frames try to delete the same cache at the same time
https://bugs.webkit.org/show_bug.cgi?id=183041
Patch by Youenn Fablet <youenn@apple.com> on 2018-02-22
Reviewed by Chris Dumez.
- Modules/cache/WorkerCacheStorageConnection.cpp:
(WebCore::WorkerCacheStorageConnection::doRemove): Update the assertion to accept the
case of an already deleted cache, i.e. returned identifer is 0.
- 10:32 AM Changeset in webkit [228923] by
-
- 3 edits in trunk/Source/WebCore
Remove some code leftovers in LibWebRTCMediaEndpoint and RealtimeOutgoingVideoSource classes
https://bugs.webkit.org/show_bug.cgi?id=183031
Patch by Alejandro G. Castro <alex@igalia.com> on 2018-02-22
Reviewed by Youenn Fablet.
This include and namespace are not required in the file.
Just removing unused code, no tests required.
- Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp:
- 10:29 AM Changeset in webkit [228922] by
-
- 4 edits2 adds in trunk
Document.open() cancels existing provisional load but not navigation policy check
https://bugs.webkit.org/show_bug.cgi?id=183012
<rdar://problem/37755831>
Reviewed by Alex Christensen.
Source/WebCore:
Test: fast/dom/Document/open-with-pending-load-async-policy.html
- dom/Document.cpp:
(WebCore::Document::open):
The existing code was calling FrameLoader::stopAllLoaders() when the loader's state
is FrameStateProvisional. The issue is that the FrameLoader's state only gets set
to FrameStateProvisional after the policy decision for the navigation is made.
This means that we fail to cancel a pending load if is still in the policy decision
stage, which can happen when the policy decision is made asynchronously. We now
also cancel such pending navigation policy checks as well.
- loader/PolicyChecker.cpp:
(WebCore::PolicyChecker::checkNavigationPolicy):
Make sure the m_delegateIsDecidingNavigationPolicy flag gets reset inside the
lambda. Otherwise, it gets reset too early when the policy decision is made
asynchronously.
LayoutTests:
Add layout test coverage.
- fast/dom/Document/open-with-pending-load-async-policy-expected.txt: Added.
- fast/dom/Document/open-with-pending-load-async-policy.html: Added.
- 10:22 AM Changeset in webkit [228921] by
-
- 3 edits in trunk/LayoutTests
Updated expectations for http/tests/appcache/404-resource-with-slow-main-resource.php.
https://bugs.webkit.org/show_bug.cgi?id=153503
Unreviewed test gardening.
- platform/mac-wk1/TestExpectations:
- platform/mac/TestExpectations:
- 10:01 AM Changeset in webkit [228920] by
-
- 4 edits in trunk/Source/WebKit
Unreviewed, rolling out r228902.
This broke internal builds.
Reverted changeset:
"[Cocoa] Web Automation: provide a way to ask clients the type
of a JavaScript dialog"
https://bugs.webkit.org/show_bug.cgi?id=182660
https://trac.webkit.org/changeset/228902
- 8:55 AM Changeset in webkit [228919] by
-
- 6 edits in trunk/Source
Add release asserts for service worker fetch and postMessage events
https://bugs.webkit.org/show_bug.cgi?id=183025
rdar://problem/37765052
Patch by Youenn Fablet <youenn@apple.com> on 2018-02-22
Reviewed by Daniel Bates.
Source/WebCore:
Add release assertion so that a service worker will only dispatch a message event
for clients and service workers with the same origin.
No change of behavior.
- platform/network/ResourceRequestBase.h:
- workers/service/context/ServiceWorkerThread.cpp:
(WebCore::ServiceWorkerThread::postMessageToServiceWorker):
- workers/service/context/ServiceWorkerThreadProxy.h:
Source/WebKit:
Add assertion to protect interception of a fetch load by a service worker with
a different origin from the page.
- WebProcess/Storage/WebSWContextManagerConnection.cpp:
(WebKit::WebSWContextManagerConnection::startFetch):
- 8:43 AM Changeset in webkit [228918] by
-
- 2 edits in trunk/LayoutTests
Mark http/tests/preload/onerror_event.html as a flaky crash on Windows.
https://bugs.webkit.org/show_bug.cgi?id=179297
Unreviewed test gardening.
- platform/win/TestExpectations:
- 7:33 AM Changeset in webkit [228917] by
-
- 2 edits in trunk/Source/WebCore
including both gl3.h and gl2.h when USE_OPENGL_ES is enabled
https://bugs.webkit.org/show_bug.cgi?id=183008
Reviewed by Michael Catanzaro.
Don't include GLES3 headers as we stick to GLES2 API resources.
No new tests, no behavior change.
- platform/graphics/GLContext.cpp:
- 7:02 AM WebKitGTK/Gardening/Calendar edited by
- (diff)
- 6:57 AM Changeset in webkit [228916] by
-
- 2 edits in trunk/LayoutTests
Unreviewed GTK+ gardening after r228915.
- platform/gtk/TestExpectations:
- 2:47 AM WebKitGtkLayoutTests edited by
- --verbose is not a valid option anymore (diff)
- 1:31 AM Changeset in webkit [228915] by
-
- 9 edits in trunk/Source
[GTK][WPE] Fix some build errors in service workers code
https://bugs.webkit.org/show_bug.cgi?id=182966
Reviewed by Žan Doberšek.
Source/WebCore:
No new tests: no change in behavior.
- workers/service/ServiceWorkerProvider.h: add missing forward declaration.
Source/WebKit:
- CMakeLists.txt: add missing files.
- StorageProcess/ServiceWorker/WebSWServerConnection.cpp: add missing includes.
- UIProcess/ServiceWorkerProcessProxy.cpp: use #include rather than #import in C++; add missing ifdef.
- UIProcess/ServiceWorkerProcessProxy.h: add missing ifdef.
- WebProcess/Storage/WebSWClientConnection.cpp: add missing includes.
- WebProcess/Storage/WebSWContextManagerConnection.cpp: add missing includes.
(WebKit::WebSWContextManagerConnection::WebSWContextManagerConnection):
call the function that exists outside cocoa.
Feb 21, 2018:
- 10:17 PM Changeset in webkit [228914] by
-
- 4 edits in trunk/Source/WebCore
[RenderTreeBuilder] Move RenderObject::insertedInto() mutation logic to RenderTreeBuilder
https://bugs.webkit.org/show_bug.cgi?id=183022
<rdar://problem/37764326>
Reviewed by Antti Koivisto.
No change in functionality.
- rendering/RenderObject.cpp:
(WebCore::RenderObject::insertedIntoTree):
- rendering/updating/RenderTreeBuilder.cpp:
(WebCore::RenderTreeBuilder::insertChildToRenderElementInternal):
(WebCore::RenderTreeBuilder::moveChildrenTo):
(WebCore::RenderTreeBuilder::multiColumnDescendantInserted): Deleted.
- rendering/updating/RenderTreeBuilder.h:
- 8:58 PM Changeset in webkit [228913] by
-
- 3 edits in branches/safari-605-branch/Source/WebCore
Cherry-pick r228895. rdar://problem/37767705
- 7:49 PM Changeset in webkit [228912] by
-
- 5 edits2 deletes in trunk/Source/WebCore
Include all Cocoa sources in all Cocoa platform builds
https://bugs.webkit.org/show_bug.cgi?id=183026
<rdar://problem/37513101>
Reviewed by Dan Bernstein.
Similar to r228571, don't have separate Sources files for iOS and Mac.
All sources now have #ifdefs that ensure that only the right ones
build on the right platforms. This makes it much easier to reason
about what builds where by just looking at the sources.
- SourcesCocoa.txt:
- SourcesIOS.txt: Removed.
- SourcesMac.txt: Removed.
- WebCore.xcodeproj/project.pbxproj:
- editing/WebContentReader.h:
- platform/mediastream/mac/ScreenDisplayCaptureSourceMac.h:
- 4:37 PM Changeset in webkit [228911] by
-
- 3 edits in branches/safari-605-branch/Source/WebCore
Cherry-pick r228903. rdar://problem/37765339
- 4:37 PM Changeset in webkit [228910] by
-
- 11 edits1 add in branches/safari-605-branch
Cherry-pick r228860. rdar://problem/37751729
- 4:28 PM Changeset in webkit [228909] by
-
- 5 edits in trunk/Source/WebCore
Make SubstituteResource take a ResourceResponse r-value
https://bugs.webkit.org/show_bug.cgi?id=183020
Patch by Youenn Fablet <youenn@apple.com> on 2018-02-21
Reviewed by Alex Christensen.
No change of behavior.
Make SubstituteResource take a ResourceResponse r-value.
Update ArchiveResource accordingly.
Take benefit of that in ApplicationCacheResource to set the response source to ApplicationCache
before passing it to SubstituteResource constructor.
- loader/SubstituteResource.h:
(WebCore::SubstituteResource::SubstituteResource):
(WebCore::SubstituteResource::resourceResponse): Deleted.
- loader/appcache/ApplicationCacheResource.cpp:
(WebCore::ApplicationCacheResource::create):
(WebCore::ApplicationCacheResource::ApplicationCacheResource):
- loader/appcache/ApplicationCacheResource.h:
(WebCore::ApplicationCacheResource::create): Deleted.
- loader/archive/ArchiveResource.cpp:
(WebCore::ArchiveResource::ArchiveResource):
- 4:20 PM Changeset in webkit [228908] by
-
- 59 edits in trunk/Source/WebCore
[RenderTreeBuilder] ::willBeRemoved() does not need RenderTreeBuilder anymore.
https://bugs.webkit.org/show_bug.cgi?id=183019
<rdar://problem/37761421>
Reviewed by Antti Koivisto.
All the willBeDestroyed() mutations have been moved over to RenderTreeBuilder.
No change in functionality.
- rendering/RenderBlock.cpp:
(WebCore::RenderBlock::willBeDestroyed):
- rendering/RenderBlock.h:
- rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::willBeDestroyed):
- rendering/RenderBlockFlow.h:
- rendering/RenderBox.cpp:
(WebCore::RenderBox::willBeDestroyed):
- rendering/RenderBox.h:
- rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::willBeDestroyed):
- rendering/RenderBoxModelObject.h:
- rendering/RenderCounter.cpp:
(WebCore::RenderCounter::willBeDestroyed):
- rendering/RenderCounter.h:
- rendering/RenderElement.cpp:
(WebCore::RenderElement::willBeDestroyed):
- rendering/RenderElement.h:
- rendering/RenderEmbeddedObject.cpp:
(WebCore::RenderEmbeddedObject::willBeDestroyed):
- rendering/RenderEmbeddedObject.h:
- rendering/RenderFragmentedFlow.cpp:
(WebCore::RenderFragmentedFlow::willBeDestroyed):
- rendering/RenderFragmentedFlow.h:
- rendering/RenderImage.cpp:
(WebCore::RenderImage::willBeDestroyed):
- rendering/RenderImage.h:
- rendering/RenderInline.cpp:
(WebCore::RenderInline::willBeDestroyed):
- rendering/RenderInline.h:
- rendering/RenderLayerModelObject.cpp:
(WebCore::RenderLayerModelObject::willBeDestroyed):
- rendering/RenderLayerModelObject.h:
- rendering/RenderListBox.cpp:
(WebCore::RenderListBox::willBeDestroyed):
- rendering/RenderListBox.h:
- rendering/RenderListMarker.cpp:
(WebCore::RenderListMarker::willBeDestroyed):
- rendering/RenderListMarker.h:
- rendering/RenderMenuList.cpp:
(WebCore::RenderMenuList::willBeDestroyed):
- rendering/RenderMenuList.h:
- rendering/RenderObject.cpp:
(WebCore::RenderObject::willBeDestroyed):
(WebCore::RenderObject::destroy):
- rendering/RenderObject.h:
- rendering/RenderReplaced.cpp:
(WebCore::RenderReplaced::willBeDestroyed):
- rendering/RenderReplaced.h:
- rendering/RenderSearchField.cpp:
(WebCore::RenderSearchField::willBeDestroyed):
- rendering/RenderSearchField.h:
- rendering/RenderSnapshottedPlugIn.cpp:
(WebCore::RenderSnapshottedPlugIn::willBeDestroyed):
- rendering/RenderSnapshottedPlugIn.h:
- rendering/RenderText.cpp:
(WebCore::RenderText::willBeDestroyed):
- rendering/RenderText.h:
- rendering/RenderTextControlMultiLine.cpp:
(WebCore::RenderTextControlMultiLine::willBeDestroyed):
- rendering/RenderTextControlMultiLine.h:
- rendering/RenderVideo.cpp:
(WebCore::RenderVideo::willBeDestroyed):
- rendering/RenderVideo.h:
- rendering/RenderWidget.cpp:
(WebCore::RenderWidget::willBeDestroyed):
- rendering/RenderWidget.h:
- rendering/svg/RenderSVGBlock.cpp:
(WebCore::RenderSVGBlock::willBeDestroyed):
- rendering/svg/RenderSVGBlock.h:
- rendering/svg/RenderSVGImage.cpp:
(WebCore::RenderSVGImage::willBeDestroyed):
- rendering/svg/RenderSVGImage.h:
- rendering/svg/RenderSVGInline.cpp:
(WebCore::RenderSVGInline::willBeDestroyed):
- rendering/svg/RenderSVGInline.h:
- rendering/svg/RenderSVGModelObject.cpp:
(WebCore::RenderSVGModelObject::willBeDestroyed):
- rendering/svg/RenderSVGModelObject.h:
- rendering/svg/RenderSVGResourceContainer.cpp:
(WebCore::RenderSVGResourceContainer::willBeDestroyed):
- rendering/svg/RenderSVGResourceContainer.h:
- rendering/svg/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::willBeDestroyed):
- rendering/svg/RenderSVGRoot.h:
- rendering/svg/RenderSVGText.cpp:
(WebCore::RenderSVGText::willBeDestroyed):
- rendering/svg/RenderSVGText.h:
- 4:19 PM Changeset in webkit [228907] by
-
- 9 edits1 add in trunk/Source
The WebContent process should not use NSScreen in the screenAvailableRect/screenRect implementations.
https://bugs.webkit.org/show_bug.cgi?id=182855
Reviewed by Brent Fulgham.
On macOS, the functions screenAvailableRect and screenRect is implemented using NSScreen, which is communicating
with the WindowServer. To avoid this WindowServer communication from the WebContent process when calling
screenAvailableRect and screenRect, it is possible to let the UIProcess send a message to the WebContent
process whenever there is a change in the display properties, and have the WebContent process cache these
display properties. This message should also be sent to a newly started WebContent process.
Source/WebCore:
No new tests, covered by existing tests.
- WebCore.xcodeproj/project.pbxproj:
- platform/PlatformScreen.h:
- platform/mac/PlatformScreenMac.mm:
(WebCore::getScreenProperties):
(WebCore::screenProperties):
(WebCore::setScreenProperties):
(WebCore::screenRect):
(WebCore::screenAvailableRect):
- platform/ScreenProperties.h: Added.
(WebCore::ScreenProperties::encode const):
(WebCore::ScreenProperties::decode):
Source/WebKit:
- UIProcess/WebProcessPool.cpp:
(WebKit::displayReconfigurationCallBack):
(WebKit::registerDisplayConfigurationCallback):
(WebKit::WebProcessPool::initializeNewWebProcess):
(WebKit::WebProcessPool::warmInitialProcess):
- WebProcess/WebProcess.cpp:
(WebKit::WebProcess::setScreenProperties):
- WebProcess/WebProcess.h:
- WebProcess/WebProcess.messages.in:
- 4:17 PM Changeset in webkit [228906] by
-
- 2 edits in trunk/LayoutTests
Add delay to make cookie purge catch up when running http/tests/resourceLoadStatistics/partitioned-and-unpartitioned-cookie-deletion.html
https://bugs.webkit.org/show_bug.cgi?id=183024
<rdar://problem/37765207>
Unreviewed test gardening.
- http/tests/resourceLoadStatistics/partitioned-and-unpartitioned-cookie-deletion.html:
Added a setTimeout() delay.
- 4:10 PM Changeset in webkit [228905] by
-
- 11 edits in trunk/Source
[Curl] Curl Cookie Database File should be configurable using NetworkProcessCreationParameters
https://bugs.webkit.org/show_bug.cgi?id=182751
Patch by Christopher Reid <chris.reid@sony.com> on 2018-02-21
Reviewed by Youenn Fablet.
Source/WebCore:
No change in behavior.
Adding support to set a custom CookieJar Database.
Took CookieJarDB::open() out of its constructor because both the Network and Web process
were trying to open the journal files but one process was failing due to a lack of permission.
Now the database file is lazily opened and only the Network process will try to open the database.
Some cleanup was done to CookieJarDB too.
- platform/network/NetworkStorageSession.h:
- platform/network/curl/CookieJarDB.cpp:
- platform/network/curl/CookieJarDB.h:
- platform/network/curl/NetworkStorageSessionCurl.cpp:
Source/WebKit:
Adding a cookiePersistentStorageFile parameter to Curl's NetworkProcessCreationParameters.
This parameter is based on Soup's cookiePersistentStoragePath.
This parameter is not used yet, it is added to prepare for WinCairo WebKit support.
- NetworkProcess/NetworkProcessCreationParameters.cpp:
- NetworkProcess/NetworkProcessCreationParameters.h:
- NetworkProcess/curl/NetworkProcessCurl.cpp:
- WebProcess/Cookies/WebCookieManager.h:
- WebProcess/Cookies/curl/WebCookieManagerCurl.cpp:
- 4:07 PM Changeset in webkit [228904] by
-
- 3 edits in tags/Safari-606.1.6/Source/WebCore
Cherry-pick r228903. rdar://problem/37754154
- 3:56 PM Changeset in webkit [228903] by
-
- 3 edits in trunk/Source/WebCore
Regression(r228708): Crash under WebCore::MediaResource::responseReceived(WebCore::CachedResource&, WebCore::ResourceResponse const&)
https://bugs.webkit.org/show_bug.cgi?id=183018
<rdar://problem/37754154>
Reviewed by Eric Carlson.
The fix at r228708 was trying to address the fact that avplayer sometimes
deallocates WebCoreNSURLSessionDataTask objects on a non-main thread, which
was not safe because its _resource data member needs to be deallocated on
the main thread.
The issue is that r228708 caused _resource to outlive its WebCoreNSURLSessionDataTask.
This is an issue because _resource has a client data member (of type WebCoreNSURLSessionDataTaskClient)
which has a raw pointer to the WebCoreNSURLSessionDataTask. This means that the main thread could
call methods like responseReceived() on the resource, which would call responseReceived() on the
client, which would try to call [WebCoreNSURLSessionDataTask receivedResponse:] with an invalid
m_task pointer.
To address the issue, I introduced a clearTask() method on WebCoreNSURLSessionDataTaskClient, which
gets called from a non-main thread to clear the client's m_task pointer when the task is destroyed
on a non-main thread. So that this is safe, every time the client tries to use m_task, we now
acquire a lock for thread-safety and do a null-check on m_task.
No new tests, no known reproduction case.
- platform/graphics/PlatformMediaResourceLoader.h:
(WebCore::PlatformMediaResource::client):
- platform/network/cocoa/WebCoreNSURLSession.mm:
(WebCore::WebCoreNSURLSessionDataTaskClient::clearTask):
(WebCore::WebCoreNSURLSessionDataTaskClient::dataSent):
(WebCore::WebCoreNSURLSessionDataTaskClient::responseReceived):
(WebCore::WebCoreNSURLSessionDataTaskClient::shouldCacheResponse):
(WebCore::WebCoreNSURLSessionDataTaskClient::dataReceived):
(WebCore::WebCoreNSURLSessionDataTaskClient::redirectReceived):
(WebCore::WebCoreNSURLSessionDataTaskClient::accessControlCheckFailed):
(WebCore::WebCoreNSURLSessionDataTaskClient::loadFailed):
(WebCore::WebCoreNSURLSessionDataTaskClient::loadFinished):
(-[WebCoreNSURLSessionDataTask dealloc]):
- 3:31 PM Changeset in webkit [228902] by
-
- 4 edits in trunk/Source/WebKit
[Cocoa] Web Automation: provide a way to ask clients the type of a JavaScript dialog
https://bugs.webkit.org/show_bug.cgi?id=182660
<rdar://problem/37408183>
Reviewed by Tim Horton and Carlos Garcia Campos.
Add another delegate method to ask what type of dialog is being shown.
This is used to implement §18.4 Step 5, where sending text to a dialog
without a prompt will return several different kinds of errors.
No new tests, covered by web platform tests once Safari side has landed.
- UIProcess/API/Cocoa/_WKAutomationSessionDelegate.h: Update FIXME radar numbers.
- UIProcess/Cocoa/AutomationSessionClient.h:
- UIProcess/Cocoa/AutomationSessionClient.mm:
(WebKit::AutomationSessionClient::AutomationSessionClient):
(WebKit::toImpl):
(WebKit::AutomationSessionClient::typeOfCurrentJavaScriptDialogOnPage):
If there is no current dialog to be checked, the client can return the 'None'
type. This gets converted into a std::nullopt and causes a command error later.
- 2:37 PM Changeset in webkit [228901] by
-
- 17 edits3 adds2 deletes in trunk
Move AppCache loading to the NetworkProcess
https://bugs.webkit.org/show_bug.cgi?id=178540
<rdar://problem/37119346>
Patch by Youenn Fablet <youenn@apple.com> on 2018-02-21
Reviewed by Alex Christensen.
Source/WebCore:
Covered by existing tests.
Use ApplicationResourceLoader for cache entry loading.
Remove all ResourceHandle use from ApplicationCacheGroup.
Renamed m_loader in m_manifestLoader and added a new m_entryLoader to load cache entries.
Updated ApplicationCacheResourceLoader to handle different types of CachedResource.
This allows in particular to handle redirections based on the resource type and create the ApplicationCacheResource with the right type.
Use Include as credentials mode as per specification.
Add a new ApplicationCache ResourceResonse::Source.
This allows fixing an assertion and should allow better inspector support if needs be.
- inspector/agents/InspectorNetworkAgent.cpp:
(WebCore::responseSource):
- loader/ResourceLoader.cpp:
(WebCore::logResourceResponseSource):
- loader/SubstituteResource.h:
(WebCore::SubstituteResource::resourceResponse):
- loader/appcache/ApplicationCacheGroup.cpp:
(WebCore::ApplicationCacheGroup::stopLoading):
(WebCore::ApplicationCacheGroup::update):
(WebCore::ApplicationCacheGroup::didFinishLoading):
(WebCore::ApplicationCacheGroup::didFinishLoadingEntry):
(WebCore::ApplicationCacheGroup::didFail):
(WebCore::ApplicationCacheGroup::didFailLoadingEntry):
(WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):
(WebCore::ApplicationCacheGroup::startLoadingEntry):
- loader/appcache/ApplicationCacheGroup.h:
- loader/appcache/ApplicationCacheResource.cpp:
(WebCore::ApplicationCacheResource::ApplicationCacheResource):
- loader/appcache/ApplicationCacheResourceLoader.cpp:
(WebCore::ApplicationCacheResourceLoader::create):
(WebCore::ApplicationCacheResourceLoader::ApplicationCacheResourceLoader):
(WebCore::ApplicationCacheResourceLoader::responseReceived):
(WebCore::ApplicationCacheResourceLoader::redirectReceived):
- loader/appcache/ApplicationCacheResourceLoader.h:
- platform/network/ResourceResponseBase.h:
- platform/network/cocoa/ResourceResponseCocoa.mm:
(WebCore::ResourceResponse::platformCertificateInfo const):
- testing/Internals.cpp:
(WebCore::responseSourceToString):
LayoutTests:
There is no guarantee that aborting in an event handler will be executed before some loads finish,
as the events are fired asynchronously.
Making tests less flaky by waiting some time before fnishing some loads.
- http/tests/appcache/abort-cache-onchecking.html:
- http/tests/appcache/resource-redirect-2-expected.txt:
- http/tests/appcache/resources/abort-cache-onchecking-resource-404.manifest:
- http/tests/appcache/resources/abort-cache-onchecking.manifest: Removed.
- http/tests/appcache/resources/abort-cache-onchecking.manifest.php: Added.
- http/tests/appcache/resources/abort-cache-ondownloading.manifest:
- http/tests/appcache/resources/abort-cache-ondownloading.text: Removed.
- http/tests/appcache/resources/abort-cache-ondownloading.text.php: Added.
- http/tests/appcache/resources/not-exist.vob.php: Added.
- 2:34 PM Changeset in webkit [228900] by
-
- 3 edits in trunk
[CMake] Expose HAVE macros globally
https://bugs.webkit.org/show_bug.cgi?id=183011
Reviewed by Michael Catanzaro.
- Source/cmake/OptionsCommon.cmake:
- Source/cmake/WebKitFeatures.cmake:
- 2:27 PM Changeset in webkit [228899] by
-
- 7 edits2 adds in trunk/Source/WebCore
[RenderTreeBuilder] Move RenderBoxModelObject::willBeRemoved() mutation logic to RenderTreeBuilder
https://bugs.webkit.org/show_bug.cgi?id=183014
<rdar://problem/37757428>
Reviewed by Antti Koivisto.
No change in functionality.
- Sources.txt:
- WebCore.xcodeproj/project.pbxproj:
- rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::~RenderBoxModelObject):
(WebCore::RenderBoxModelObject::willBeDestroyed):
(WebCore::RenderBoxModelObject::continuationChainNode const):
(): Deleted.
(WebCore::RenderBoxModelObject::removeAndDestroyAllContinuations): Deleted.
- rendering/RenderBoxModelObject.h:
- rendering/updating/RenderTreeBuilder.cpp:
(WebCore::RenderTreeBuilder::RenderTreeBuilder):
(WebCore::RenderTreeBuilder::removeAndDestroy):
- rendering/updating/RenderTreeBuilder.h:
(WebCore::RenderTreeBuilder::continuationBuilder):
- rendering/updating/RenderTreeBuilderContinuation.cpp: Added.
(WebCore::RenderTreeBuilder::Continuation::Continuation):
(WebCore::RenderTreeBuilder::Continuation::cleanupOnDestroy):
- rendering/updating/RenderTreeBuilderContinuation.h: Added.
- 2:02 PM Changeset in webkit [228898] by
-
- 6 edits in trunk/Source/JavaScriptCore
[CMake] Split declaration of JSC headers into public and private
https://bugs.webkit.org/show_bug.cgi?id=182980
Reviewed by Michael Catanzaro.
- CMakeLists.txt:
- PlatformGTK.cmake:
- PlatformMac.cmake:
- PlatformWPE.cmake:
- PlatformWin.cmake:
- 2:01 PM Changeset in webkit [228897] by
-
- 9 copies1 add in releases/Apple/Safari Technology Preview 50
Added a tag for Safari Technology Preview release 50.
- 1:55 PM Changeset in webkit [228896] by
-
- 1 copy in tags/Safari-606.1.6
Tag Safari-606.1.6.
- 1:51 PM Changeset in webkit [228895] by
-
- 3 edits in trunk/Source/WebCore
ServiceWorkerJob::m_lastResponse is unneeded
https://bugs.webkit.org/show_bug.cgi?id=183013
Patch by Youenn Fablet <youenn@apple.com> on 2018-02-21
Reviewed by Chris Dumez.
Remove this field since not used anywhere.
- workers/service/ServiceWorkerJob.cpp:
(WebCore::ServiceWorkerJob::didReceiveResponse):
- workers/service/ServiceWorkerJob.h:
- 1:51 PM Changeset in webkit [228894] by
-
- 7 edits in trunk/Source
Versioning.
- 1:41 PM Changeset in webkit [228893] by
-
- 6 edits in trunk/Source/WebKit
[WinCairo] Fix compile errors of WebProcess and NetworkProcess due to no implementation for windows
https://bugs.webkit.org/show_bug.cgi?id=182870
Patch by Yousuke Kimoto <yousuke.kimoto@sony.com> on 2018-02-21
Reviewed by Youenn Fablet.
- NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::createNetworkConnectionToWebProcess):
- WebProcess/Plugins/PluginProcessConnectionManager.cpp:
(WebKit::PluginProcessConnectionManager::getPluginProcessConnection):
- WebProcess/WebPage/WebInspector.cpp:
(WebKit::WebInspector::openFrontendConnection):
- WebProcess/WebPage/WebInspectorUI.cpp:
(WebKit::WebInspectorUI::establishConnection):
- WebProcess/WebProcess.cpp:
(WebKit::WebProcess::ensureNetworkProcessConnection):
- 12:21 PM Changeset in webkit [228892] by
-
- 12 edits2 adds in trunk
Use ResourceLoader to load appcache manifest
https://bugs.webkit.org/show_bug.cgi?id=182861
Patch by Youenn Fablet <youenn@apple.com> on 2018-02-21
Reviewed by Alex Christensen.
Source/WebCore:
Covered by updated tests.
Add ApplicationCacheResourceLoader to load an ApplicationCacheResource from a ResourceLoader.
Make use of it to load the app cache manifest.
Future work should load entries using the same loader.
Remove manifest handle.
Ensure that DocumentLoader does not register the manifest resource loader as its lifetime
is handled by its ApplicationCacheGroup.
Add a ResourceLoader option to bypass the application cache.
Use it for manifest loading.
- Sources.txt:
- WebCore.xcodeproj/project.pbxproj:
- loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::addSubresourceLoader):
- loader/ResourceLoaderOptions.h:
- loader/appcache/ApplicationCacheGroup.cpp:
(WebCore::ApplicationCacheGroup::stopLoading):
(WebCore::ApplicationCacheGroup::update):
(WebCore::ApplicationCacheGroup::createRequest):
(WebCore::ApplicationCacheGroup::didReceiveResponseAsync):
(WebCore::ApplicationCacheGroup::didReceiveData):
(WebCore::ApplicationCacheGroup::didFinishLoading):
(WebCore::ApplicationCacheGroup::didFail):
(WebCore::ApplicationCacheGroup::didFinishLoadingManifest):
(WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):
- loader/appcache/ApplicationCacheGroup.h:
- loader/appcache/ApplicationCacheHost.cpp:
(WebCore::ApplicationCacheHost::maybeLoadResource):
(WebCore::ApplicationCacheHost::maybeLoadFallbackForRedirect):
(WebCore::ApplicationCacheHost::maybeLoadFallbackForResponse):
(WebCore::ApplicationCacheHost::maybeLoadFallbackForError):
- loader/appcache/ApplicationCacheResourceLoader.cpp: Added.
- loader/appcache/ApplicationCacheResourceLoader.h: Added.
LayoutTests:
- http/tests/appcache/fail-on-update-2-expected.txt:
- http/tests/appcache/manifest-redirect-2-expected.txt:
- http/tests/appcache/offline-access-expected.txt:
- 12:01 PM Changeset in webkit [228891] by
-
- 17 edits in trunk
[CMake][Win] Use cmakeconfig.h rather than config.h and Platform.h
https://bugs.webkit.org/show_bug.cgi?id=182883
Reviewed by Per Arne Vollan.
.:
- Source/cmake/OptionsAppleWin.cmake:
- Source/cmake/OptionsWin.cmake:
- Source/cmake/OptionsWinCairo.cmake:
Source/WebCore:
No new tests. No change in behavior.
- WebCorePrefix.h:
- config.h:
- testing/js/WebCoreTestSupportPrefix.h:
Source/WebKit:
- config.h:
Source/WebKitLegacy/win:
- WebKitPrefix.h:
Source/WTF:
- wtf/Platform.h:
Tools:
- DumpRenderTree/config.h:
- TestWebKitAPI/config.h:
- 11:55 AM Changeset in webkit [228890] by
-
- 2 edits in trunk/Tools
[GTK] Unsafe g_setenv use in MiniBrowser main
https://bugs.webkit.org/show_bug.cgi?id=182978
Reviewed by Carlos Garcia Campos.
setenv (and g_setenv) will randomly crash if called too late.
- MiniBrowser/gtk/main.c:
(main):
- 11:50 AM Changeset in webkit [228889] by
-
- 4 edits in trunk/Source/WebCore
[RenderTreeBuilder] Move RenderView::willBeRemoved() mutation logic to RenderTreeBuilder
https://bugs.webkit.org/show_bug.cgi?id=183009
Reviewed by Antti Koivisto.
No change in functionality.
- dom/Document.cpp:
(WebCore::Document::destroyRenderTree):
- rendering/RenderView.cpp:
(WebCore::RenderView::~RenderView):
(WebCore::RenderView::willBeDestroyed): Deleted.
- rendering/RenderView.h:
- 11:43 AM WebKitGTK/2.20.x edited by
- (diff)
- 11:42 AM Changeset in webkit [228888] by
-
- 6 edits1 delete in trunk
[GTK] USE_UPOWER causes crashes inside a chroot or on systems with broken dbus/upower
https://bugs.webkit.org/show_bug.cgi?id=181825
Reviewed by Carlos Garcia Campos.
.:
Get rid of the upower-glib dependency. We will use upower's D-Bus API instead.
- Source/cmake/FindUPowerGLib.cmake: Removed.
- Source/cmake/OptionsGTK.cmake:
Source/WebCore:
We could fix this crash, but that would not be good enough, because upower-glib is a
synchronous API that wraps D-Bus calls. That's not acceptable for use in the web process.
Rewrite LowPowerModeNotifierGLib to use upower's D-Bus API directly, instead.
Note that this also enables LowPowerModeNotifier for WPE, since the USE(UPOWER) build
flag is no longer needed.
- platform/LowPowerModeNotifier.cpp:
- platform/LowPowerModeNotifier.h:
- platform/glib/LowPowerModeNotifierGLib.cpp:
(WebCore::LowPowerModeNotifier::LowPowerModeNotifier):
(WebCore::LowPowerModeNotifier::updateWarningLevel):
(WebCore::LowPowerModeNotifier::warningLevelChanged):
(WebCore::LowPowerModeNotifier::gPropertiesChangedCallback):
(WebCore::LowPowerModeNotifier::~LowPowerModeNotifier):
(WebCore::LowPowerModeNotifier::updateState): Deleted.
(WebCore::LowPowerModeNotifier::warningLevelCallback): Deleted.
- 11:41 AM Changeset in webkit [228887] by
-
- 2 edits in trunk/Source/WebKit
Web Automation: failed provisional loads cause "Navigate To" command to hang
https://bugs.webkit.org/show_bug.cgi?id=183007
<rdar://problem/37751819>
Reviewed by Andy Estes.
This hang was revealed by WPT test current_url.py::get_current_url_file_protocol. Now the
test simply fails because Safari chooses a policy of 'Ignore' for externally-opened files.
I filed an upstream issue with the test here: https://github.com/w3c/webdriver/issues/1232
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didFailProvisionalLoadForFrame):
Notify the session that the load failed in the frame, just like we do
for non-provisional failed loads and successful loads.
- 11:36 AM Changeset in webkit [228886] by
-
- 8 edits in trunk
VTTCue constructor should use 'double' type for startTime / endTime
https://bugs.webkit.org/show_bug.cgi?id=182988
Reviewed by Eric Carlson.
Source/WebCore:
VTTCue constructor should use 'double' type for startTime / endTime, not
'unrestricted double':
Otherwise, we end up potentially returning NaN for TextTrackCue.startTime / endTime,
even though those correctly use type 'double':
The new behavior is consistent with Firefox and Chrome.
No new tests, updated existing test.
- bindings/js/JSDOMConvertNumbers.h:
(WebCore::JSConverter<IDLDouble>::convert):
Add assertion to make sure our implementation never tries to return NaN
for an IDL attribute of type 'double'. This would be invalid as per Web
IDL spec and would crash if the NaN being returned was impure as JSValue
could not store it as a double.
- html/track/VTTCue.idl:
Update constructor parameters to use 'double' type instead of 'unrestricted
double', as per:
LayoutTests:
Update existing test to reflect behavior change.
- media/track/track-add-remove-cue-expected.txt:
- media/track/track-add-remove-cue.html:
- 11:27 AM Changeset in webkit [228885] by
-
- 2 edits in trunk/Tools
webkitpy NetworkTransaction should retry on URLError
https://bugs.webkit.org/show_bug.cgi?id=182987
Reviewed by Alexey Proskuryakov.
- Scripts/webkitpy/common/net/networktransaction.py:
(NetworkTransaction.run): Retry on urllib2.URLError.
- 10:45 AM Changeset in webkit [228884] by
-
- 6 edits in trunk/Source/WebCore
[RenderTreeBuilder] Move RenderTextFragment::willBeRemoved() mutation logic to RenderTreeBuilder
https://bugs.webkit.org/show_bug.cgi?id=182946
<rdar://problem/37690039>
Reviewed by Antti Koivisto.
No change in functionality.
- rendering/RenderTextFragment.cpp:
(WebCore::RenderTextFragment::willBeDestroyed):
- rendering/updating/RenderTreeBuilder.cpp:
(WebCore::RenderTreeBuilder::takeChild):
- rendering/updating/RenderTreeBuilderFirstLetter.cpp:
(WebCore::RenderTreeBuilder::FirstLetter::cleanupOnRemoval):
- rendering/updating/RenderTreeBuilderFirstLetter.h:
- 10:26 AM Changeset in webkit [228883] by
-
- 9 edits in trunk/LayoutTests
Test gardening.
https://bugs.webkit.org/show_bug.cgi?id=183006
Unreviewed test gardening.
Patch by Ms2ger <Ms2ger@gmail.com> on 2018-02-21
- TestExpectations: add ietestcenter/css3/valuesandunits/units-000.htm.
- platform/gtk/TestExpectations: remove ietestcenter/css3/valuesandunits/units-000.htm.
- platform/gtk/js/dom/dom-static-property-for-in-iteration-expected.txt: update for r228827.
- platform/ios/TestExpectations: remove ietestcenter/css3/valuesandunits/units-000.htm.
- platform/mac/TestExpectations: remove ietestcenter/css3/valuesandunits/units-000.htm.
- platform/win/TestExpectations: remove ietestcenter/css3/valuesandunits/units-000.htm.
- platform/wpe/TestExpectations: remove ietestcenter/css3/valuesandunits/units-000.htm.
- platform/wpe/js/dom/dom-static-property-for-in-iteration-expected.txt: update for r228827.
- 10:19 AM Changeset in webkit [228882] by
-
- 2 edits in trunk/Source/WebCore
[GCrypt] Remove unsound assertion from CryptoKeyRSA::exportData().
https://bugs.webkit.org/show_bug.cgi?id=183001
Reviewed by Philippe Normand.
This function is called from structured cloning, in particular when storing
a key in IndexedDB. This would trip the assertion if the key in question is
non-exportable.
The assertion was copied from the macOS implementation in r172389; it was
subsequently removed there in r172898 to handle this case.
Test: crypto/subtle/rsa-indexeddb-non-exportable.html
- crypto/gcrypt/CryptoKeyRSAGCrypt.cpp:
(WebCore::CryptoKeyRSA::exportData const): remove assertion.
- 10:16 AM Changeset in webkit [228881] by
-
- 3 edits in trunk/Tools
[WTR][WPE] Correct the process names in TestController.
https://bugs.webkit.org/show_bug.cgi?id=178700
Reviewed by Michael Catanzaro.
Similar to r228731 for GTK.
- Scripts/webkitpy/port/wpe.py:
(WPEPort._get_crash_log): removed the code to convert WebProcess name.
- WebKitTestRunner/TestController.cpp: return the correct process names for WPE.
(WTR::TestController::webProcessName):
(WTR::TestController::networkProcessName):
(WTR::TestController::databaseProcessName):
- 10:12 AM Changeset in webkit [228880] by
-
- 2 edits in trunk/LayoutTests
Update test expectations
https://bugs.webkit.org/show_bug.cgi?id=182973
Unreviewed gardening.
- platform/gtk/TestExpectations:
- 9:57 AM Changeset in webkit [228879] by
-
- 2 edits in trunk/Tools
[ATK] Remove attributeSet variable from AccessibilityUIElement::attributedStringForRange().
https://bugs.webkit.org/show_bug.cgi?id=183000
Reviewed by Joanmarie Diggs.
It is never initialized, but is passed to atk_attribute_set_free.
This caused a crash in accessibility/content-editable-as-textarea.html on the debug bots.
- WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::attributedStringForRange):
- 9:54 AM Changeset in webkit [228878] by
-
- 1 edit6 adds in trunk/LayoutTests
Rebaseline web animations tests after r228717
https://bugs.webkit.org/show_bug.cgi?id=182970
Reviewed by Antoine Quint.
- platform/gtk/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt: Added.
- platform/gtk/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt: Added.
- platform/gtk/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt: Added.
- 9:53 AM WebKitGTK/Gardening/Calendar edited by
- (diff)
- 9:34 AM Changeset in webkit [228877] by
-
- 9 edits3 adds in trunk
[Cocoa] Make system-ui obey the user-installed-font policy
https://bugs.webkit.org/show_bug.cgi?id=182860
<rdar://problem/36158249>
Reviewed by Antti Koivisto.
Source/WebCore:
We have a completely different codepath for system-ui which makes it follow the system's
font cascade list. This codepath (along with all the other relevant places which create
system fonts) needs to obey the AllowUserInstalledFonts enum. This patch is fairly
mechanical; we simply are hooking up the flag across SystemFontDatabase.
There are a few places which creates system fonts which this patch doesn't touch. This is
not a problem because all the remaining places either:
1) Simply pull out some attributes of the font (name, weight, size, etc.) and then throw
away the font object itself, or
2) Use the font in an environment where script cannot access the characters rendered (such
as DragImages or the fullscreen placeholder view or the inside of the attachment element).
Test: fast/text/user-installed-fonts/system-ui.html
- platform/graphics/cocoa/FontCacheCoreText.cpp:
(WebCore::FontDatabase::collectionForFamily):
(WebCore::FontDatabase::fontForPostScriptName):
(WebCore::fontWithFamily):
(WebCore::installedFontMandatoryAttributes):
(WebCore::createSpecificFontForInstalledFonts):
- platform/graphics/cocoa/FontCacheCoreText.h:
- platform/graphics/cocoa/FontDescriptionCocoa.cpp:
(WebCore::SystemFontDatabase::CoreTextCascadeListParameters::operator== const):
(WebCore::SystemFontDatabase::CoreTextCascadeListParameters::hash const):
(WebCore::SystemFontDatabase::systemFontCascadeList):
(WebCore::SystemFontDatabase::removeCascadeList):
(WebCore::SystemFontDatabase::computeCascadeList):
(WebCore::systemFontParameters):
(WebCore::systemFontCascadeList):
(WebCore::FontCascadeDescription::effectiveFamilyCount const):
(WebCore::FontCascadeDescription::effectiveFamilyAt const):
- platform/graphics/ios/FontCacheIOS.mm:
(WebCore::platformFontWithFamilySpecialCase):
- platform/graphics/mac/FontCacheMac.mm:
(WebCore::platformFontWithFamilySpecialCase):
Tools:
Create a font, FakeHelvetica-ArmenianCharacter.ttf, which supports a particular Armenian
character which isn't isn't supported by any other font on the system.
- WebKitTestRunner/FakeHelvetica-ArmenianCharacter.ttf:
- WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
LayoutTests:
FakeHelvetica-ArmenianCharacter.ttf is a font which supports a particular Armenian character which
isn't supported by any other font on the system. Installing this font will cause it to be added to
the 'system-ui' font cascade list. When we disable user-installed-fonts, this font should not be
used to render the character.
- fast/text/user-installed-fonts/system-ui-expected-mismatch.html:
- fast/text/user-installed-fonts/system-ui.html:
- 9:08 AM Changeset in webkit [228876] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed attempt to fix build after r228867.
- Modules/webvr/VRStageParameters.cpp:
- 9:00 AM Changeset in webkit [228875] by
-
- 2 edits in trunk/Source/WebCore
[GStreamer] Rewrite purgeInvalid*Tracks methods
https://bugs.webkit.org/show_bug.cgi?id=183004
Reviewed by Carlos Garcia Campos.
Removing items from a hashmap while iterating is bad.
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::purgeInvalidAudioTracks):
Safely remove items from the hashmap using removeIf().
(WebCore::MediaPlayerPrivateGStreamer::purgeInvalidVideoTracks): Ditto.
(WebCore::MediaPlayerPrivateGStreamer::purgeInvalidTextTracks): Ditto.
- 9:00 AM Changeset in webkit [228874] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed attempt to fix build after r228867.
- Modules/webvr/VRStageParameters.cpp:
- 8:35 AM Changeset in webkit [228873] by
-
- 7 edits in branches/safari-605-branch
Cherry-pick r228851. rdar://problem/37734494
- 8:18 AM Changeset in webkit [228872] by
-
- 2 edits in branches/safari-605-branch/Tools
Cherry-pick r228859. rdar://problem/37734496
- 8:18 AM Changeset in webkit [228871] by
-
- 23 edits2 adds in branches/safari-605-branch
Cherry-pick r228857. rdar://problem/37734496
- 5:26 AM Changeset in webkit [228870] by
-
- 3 edits in trunk/Source/WebCore
[GStreamer] Crash in Debug build when purging invalid tracks
https://bugs.webkit.org/show_bug.cgi?id=182997
Reviewed by Xabier Rodriguez-Calvar.
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::purgeInvalidAudioTracks): Clear the hashmap when there is no valid track left.
(WebCore::MediaPlayerPrivateGStreamer::purgeInvalidVideoTracks): Ditto.
(WebCore::MediaPlayerPrivateGStreamer::purgeInvalidTextTracks): Ditto.
- platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:
(WebCore::TrackPrivateBaseGStreamer::getLanguageCode): Demote debugging, this appears too much at least with playbin2.
(WebCore::TrackPrivateBaseGStreamer::getTag): Ditto.
- 5:25 AM Changeset in webkit [228869] by
-
- 2 edits in trunk/Source/WebCore
[GStreamer] We need to adopt GstGlDisplays after GStreamer 1.13.1
https://bugs.webkit.org/show_bug.cgi?id=182996
Reviewed by Xabier Rodriguez-Calvar.
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::ensureGstGLContext):
Adopt references when running with GStreamer 1.13.1 to avoid
memory leaks.
- 5:22 AM WebKitGTK/2.20.x edited by
- (diff)
- 3:50 AM WebKitGTK/2.20.x edited by
- (diff)
- 3:42 AM Changeset in webkit [228868] by
-
- 2 edits in trunk/Source/WebCore
[GTK] Layout test media/track/track-in-band-duplicate-tracks-when-source-changes.html failing since r228617
https://bugs.webkit.org/show_bug.cgi?id=160131
<rdar://problem/35873985>
Reviewed by Michael Catanzaro.
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfText): We
can't assume the pad has a sticky event here like implemented in
InbandTextTrackPrivateGStreamer because it might be emitted after
the track was created. So fallback to a dummy stream ID like in
the Audio and Video tracks.
- 2:47 AM Changeset in webkit [228867] by
-
- 8 edits in trunk/Source/WebCore
[WebVR][OpenVR] Retrieve stage parameters
https://bugs.webkit.org/show_bug.cgi?id=182976
Reviewed by Žan Doberšek.
Use OpenVR to retrieve stage parameters, i.e., play area size and
the transformation from sitting to standing position. It includes
the same fallback used by Firefox to provide sensible values in case
we cannot get the required information from the VR SDK (it's quite
common not to have defined a play area).
- Modules/webvr/VRDisplay.cpp:
(WebCore::VRDisplay::stageParameters const):
- Modules/webvr/VRDisplay.h:
- Modules/webvr/VRStageParameters.cpp:
(WebCore::VRStageParameters::VRStageParameters):
(WebCore::VRStageParameters::sittingToStandingTransform const):
(WebCore::VRStageParameters::sizeX const):
(WebCore::VRStageParameters::sizeZ const):
- Modules/webvr/VRStageParameters.h:
(WebCore::VRStageParameters::create):
- platform/vr/VRPlatformDisplay.h:
- platform/vr/openvr/VRPlatformDisplayOpenVR.cpp:
(WebCore::VRPlatformDisplayOpenVR::VRPlatformDisplayOpenVR):
(WebCore::VRPlatformDisplayOpenVR::updateStageParameters):
- platform/vr/openvr/VRPlatformDisplayOpenVR.h:
- 1:34 AM Changeset in webkit [228866] by
-
- 2 edits in trunk/Source/WebCore
[GStreamer] Create a Wayland GL display instead of EGL
https://bugs.webkit.org/show_bug.cgi?id=182968
Reviewed by Xabier Rodriguez-Calvar.
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::ensureGstGLContext):
Add logging and instantiate a GstDisplayWayland display instead of
an EGL display when running under a Wayland compositor.
- 12:34 AM Changeset in webkit [228865] by
-
- 1 copy in releases/WebKitGTK/webkit-2.19.91
WebKitGTK+ 2.19.91
- 12:33 AM Changeset in webkit [228864] by
-
- 4 edits in releases/WebKitGTK/webkit-2.20
Unreviewed. Update OptionsGTK.cmake and NEWS for 2.19.91 release.
.:
- Source/cmake/OptionsGTK.cmake: Bump version numbers.
Source/WebKit:
- gtk/NEWS: Add release notes for 2.19.91.
- 12:33 AM Changeset in webkit [228863] by
-
- 2 edits in releases/WebKitGTK/webkit-2.20/Source/WebKit
Unreviewed. Fix distcheck.
Remove symbols found in version script but not in library.
- webkitglib-symbols.map:
- 12:25 AM Changeset in webkit [228862] by
-
- 8 edits2 adds in trunk/Source/WebCore
[RenderTreeBuilder] Move RenderFullScreen::willBeRemoved() mutation logic to RenderTreeBuilder
https://bugs.webkit.org/show_bug.cgi?id=182947
<rdar://problem/37690848>
Reviewed by Antti Koivisto.
No change in functionality.
- Sources.txt:
- WebCore.xcodeproj/project.pbxproj:
- rendering/RenderFullScreen.cpp:
(WebCore::RenderFullScreen::willBeDestroyed):
- rendering/updating/RenderTreeBuilder.cpp:
(WebCore::RenderTreeBuilder::takeChild):
- rendering/updating/RenderTreeBuilder.h:
(WebCore::RenderTreeBuilder::fullScreenBuilder):
- rendering/updating/RenderTreeBuilderFullScreen.cpp: Added.
(WebCore::RenderTreeBuilder::FullScreen::FullScreen):
(WebCore::RenderTreeBuilder::FullScreen::cleanupOnRemoval):
- rendering/updating/RenderTreeBuilderFullScreen.h: Added.
- rendering/updating/RenderTreeBuilderMathML.cpp: