Timeline
Jan 12, 2017:
- 11:36 PM Changeset in webkit [210727] by
-
- 2 edits in trunk/Source/WebCore
Keyboard accessory bar can appear on top of full-screen video
https://bugs.webkit.org/show_bug.cgi?id=166902
<rdar://problem/29668223>
Reviewed by Darin Adler.
- platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
(WebVideoFullscreenInterfaceAVKit::setupFullscreen):
Increase the full-screen video window level to one above the keyboard,
to ensure that the video is never obscured by the keyboard or its
accessory views.
- 11:12 PM Changeset in webkit [210726] by
-
- 12 edits in branches/safari-603-branch/Source/WebKit2
Merge r209189. rdar://problem/29428877
- 11:11 PM Changeset in webkit [210725] by
-
- 1 edit in branches/safari-603-branch/Source/WebKit2/ChangeLog
Merge r209554. rdar://problem/29428877
- 11:05 PM Changeset in webkit [210724] by
-
- 9 edits3 adds in branches/safari-603-branch
Merge r210447. rdar://problem/29872292
- 11:05 PM Changeset in webkit [210723] by
-
- 7 edits in branches/safari-603-branch/Source/WebCore
Merge r210474. rdar://problem/29762809
- 11:05 PM Changeset in webkit [210722] by
-
- 5 edits2 adds in branches/safari-603-branch
Merge r210586. rdar://problem/29861147
- 11:05 PM Changeset in webkit [210721] by
-
- 3 edits2 adds in branches/safari-603-branch
Merge r210536. rdar://problem/29939970
- 11:05 PM Changeset in webkit [210720] by
-
- 4 edits4 adds in branches/safari-603-branch
Merge r210399. rdar://problem/29019333
- 10:10 PM Changeset in webkit [210719] by
-
- 2 edits in branches/safari-603-branch/Source/WebInspectorUI
Merge r210691. rdar://problem/29951737
- 10:10 PM Changeset in webkit [210718] by
-
- 13 edits in branches/safari-603-branch/Source
Merge r210689. rdar://problem/29985957
- 10:10 PM Changeset in webkit [210717] by
-
- 3 edits2 adds in branches/safari-603-branch
Merge r210687. rdar://problem/29388806
- 10:10 PM Changeset in webkit [210716] by
-
- 2 edits in branches/safari-603-branch/Source/WebCore
Merge r210685. rdar://problem/29775711
- 10:10 PM Changeset in webkit [210715] by
-
- 3 edits in branches/safari-603-branch/Source/WebCore
Merge r210684. rdar://problem/29775711
- 10:10 PM Changeset in webkit [210714] by
-
- 6 edits in branches/safari-603-branch/Source/WebKit2
Merge r210683. rdar://problem/11187315
- 10:10 PM Changeset in webkit [210713] by
-
- 2 edits in branches/safari-603-branch/Source/WebCore
Merge r210679. rdar://problem/29910273
- 10:10 PM Changeset in webkit [210712] by
-
- 5 edits in branches/safari-603-branch/Source/WebCore
Merge r210677. rdar://problem/21482487
- 10:10 PM Changeset in webkit [210711] by
-
- 4 edits in branches/safari-603-branch/Source/WebKit2
Merge r210666. rdar://problem/28904157
- 10:10 PM Changeset in webkit [210710] by
-
- 2 edits in branches/safari-603-branch/Source/WebCore
Merge r210663. rdar://problem/29916484
- 10:10 PM Changeset in webkit [210709] by
-
- 1 edit3 adds in branches/safari-603-branch/Source/WebInspectorUI
Merge r210623. rdar://problem/29980631
- 10:10 PM Changeset in webkit [210708] by
-
- 4 edits in branches/safari-603-branch/LayoutTests
Merge r210622. rdar://problem/28389364
- 10:10 PM Changeset in webkit [210707] by
-
- 2 edits in branches/safari-603-branch/Source/WebKit2
Merge r210619. rdar://problem/27745004
- 10:10 PM Changeset in webkit [210706] by
-
- 7 edits in branches/safari-603-branch
Merge r210616. rdar://problem/29971105
- 10:10 PM Changeset in webkit [210705] by
-
- 5 edits in branches/safari-603-branch/LayoutTests
Merge r210611. rdar://problem/29471892
- 10:10 PM Changeset in webkit [210704] by
-
- 7 edits in branches/safari-603-branch/Source
Merge r210609. rdar://problem/27896585
- 10:10 PM Changeset in webkit [210703] by
-
- 3 edits in branches/safari-603-branch/LayoutTests
Merge r210610. rdar://problem/15307582
- 10:10 PM Changeset in webkit [210702] by
-
- 2 edits in branches/safari-603-branch/Tools
Merge r210608. rdar://problem/15307582
- 10:10 PM Changeset in webkit [210701] by
-
- 1 edit2 adds in branches/safari-603-branch/Tools
Merge r210600. rdar://problem/15307582
- 10:10 PM Changeset in webkit [210700] by
-
- 11 edits in branches/safari-603-branch
Merge r210599. rdar://problem/15307582
- 10:09 PM Changeset in webkit [210699] by
-
- 2 edits in branches/safari-603-branch/Source/WebKit2
Merge r210596. rdar://problem/29757269
- 10:09 PM Changeset in webkit [210698] by
-
- 7 edits2 adds in branches/safari-603-branch
Merge r210593. rdar://problem/29970907
- 10:01 PM Changeset in webkit [210697] by
-
- 62 edits in trunk/Source
Remove unnecessary includes of Page.h
https://bugs.webkit.org/show_bug.cgi?id=166996
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2017-01-12
Reviewed by Yusuke Suzuki.
Source/WebCore:
- Modules/plugins/QuickTimePluginReplacement.mm:
- Modules/plugins/YouTubePluginReplacement.cpp:
- Modules/webdatabase/Database.cpp:
- Modules/webdatabase/DatabaseTracker.cpp:
- Modules/webdriver/NavigatorWebDriver.cpp:
- accessibility/AccessibilityNodeObject.cpp:
- dom/Range.cpp:
- dom/ScriptElement.cpp:
- dom/ViewportArguments.cpp:
- html/HTMLBodyElement.cpp:
- html/HTMLCanvasElement.cpp:
- html/HTMLDocument.cpp:
- html/HTMLFormControlElementWithState.cpp:
- html/HTMLImageElement.cpp:
- html/HTMLLinkElement.cpp:
- html/PluginDocument.cpp:
- inspector/InspectorApplicationCacheAgent.cpp:
- loader/LoadTiming.cpp:
- loader/cache/CachedImage.cpp:
- loader/cache/CachedResource.cpp:
- page/DeviceController.cpp:
- page/TextIndicator.cpp:
- page/efl/DragControllerEfl.cpp:
- platform/audio/ios/AudioDestinationIOS.cpp:
- platform/ios/PasteboardIOS.mm:
- platform/ios/ScrollAnimatorIOS.mm:
- platform/ios/WidgetIOS.mm:
- platform/mac/PasteboardMac.mm:
- platform/network/mac/ResourceHandleMac.mm:
- platform/win/MainThreadSharedTimerWin.cpp:
- platform/win/PasteboardWin.cpp:
- platform/win/PlatformScreenWin.cpp:
- platform/win/WidgetWin.cpp:
- rendering/InlineBox.cpp:
- rendering/RenderAttachment.cpp:
- rendering/RenderBoxModelObject.cpp:
- rendering/RenderIFrame.cpp:
- rendering/RenderInline.cpp:
- rendering/RenderReplaced.cpp:
- rendering/RenderTextControlSingleLine.cpp:
- rendering/RootInlineBox.cpp:
- rendering/svg/RenderSVGResourceFilter.cpp:
- rendering/svg/SVGRenderingContext.cpp:
- style/StyleScope.cpp:
- svg/SVGDocumentExtensions.cpp:
- svg/graphics/SVGImageCache.cpp:
- xml/XSLTProcessor.cpp:
- xml/parser/XMLDocumentParserLibxml2.cpp:
Source/WebKit/mac:
- DOM/DOMHTML.mm:
- History/WebBackForwardList.mm:
- Plugins/WebPluginController.mm:
- WebCoreSupport/WebNotificationClient.mm:
- WebCoreSupport/WebPlatformStrategies.mm:
- WebCoreSupport/WebUserMediaClient.mm:
- WebView/WebFullScreenController.mm:
Source/WebKit/win:
- AccessibleTextImpl.cpp:
- BackForwardList.cpp:
Source/WebKit2:
- WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
- 9:44 PM Changeset in webkit [210696] by
-
- 2 edits in trunk/LayoutTests
[EFL] Skip to test imported/w3c/web-platform-tests
Unreviewed EFL gardening. There are too many timeout and crash.
- platform/efl/TestExpectations:
- 8:03 PM Changeset in webkit [210695] by
-
- 25 edits4 adds in trunk
Add a slice intrinsic to the DFG/FTL
https://bugs.webkit.org/show_bug.cgi?id=166707
<rdar://problem/29913445>
Reviewed by Filip Pizlo.
JSTests:
- stress/array-slice-intrinsic.js: Added.
(assert):
(shallowEq):
(runTest1):
(runTest2):
- stress/array-slice-jettison-on-constructor-change.js: Added.
(assert):
(runTest1):
(runTest2):
(addRandomProperties):
(runTests):
- stress/array-slice-osr-exit-2.js: Added.
(assert):
(Foo):
(shallowEq):
(runTest1):
(runTest2):
(addRandomProperties):
(runTests):
- stress/array-slice-osr-exit.js: Added.
(assert):
(Foo):
(shallowEq):
(runTest1):
(runTest2):
(addRandomProperties):
(runTests):
Source/JavaScriptCore:
The gist of this patch is to inline Array.prototype.slice
into the DFG/FTL. The implementation in the DFG-backend
and FTLLowerDFGToB3 is just a straight forward implementation
of what the C function is doing. The more interesting bits
of this patch are setting up the proper watchpoints and conditions
in the executing code to prove that its safe to skip all of the
observable JS actions that Array.prototype.slice normally does.
We perform the following proofs:
- Array.prototype.constructor has not changed (via a watchpoint).
- That Array.prototype.constructor[Symbol.species] has not changed (via a watchpoint).
- The global object is not having a bad time.
- The array that is being sliced has an original array structure.
- Array.prototype/Object.prototype have not transitioned.
Conditions 1, 2, and 3 are strictly required.
4 is ensuring a couple things:
- That a "constructor" property hasn't been added to the array
we're slicing since we're supposed to perform a Get(array, "constructor").
- That we're not slicing an instance of a subclass of Array.
We could relax 4.1 in the future if we find other ways to test if
the incoming array hasn't changed the "constructor" property. We
would probably use TryGetById to do this.
I'm seeing a 5% speedup on crypto-pbkdf2 and often a 1% speedup on
the total benchmark (the results are sometimes noisy).
- dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::handleIntrinsicCall):
- dfg/DFGCallArrayAllocatorSlowPathGenerator.h:
(JSC::DFG::CallArrayAllocatorWithVariableStructureVariableSizeSlowPathGenerator::CallArrayAllocatorWithVariableStructureVariableSizeSlowPathGenerator):
- dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
- dfg/DFGDoesGC.cpp:
(JSC::DFG::doesGC):
- dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
- dfg/DFGNodeType.h:
- dfg/DFGPredictionPropagationPhase.cpp:
- dfg/DFGSafeToExecute.h:
(JSC::DFG::safeToExecute):
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileArraySlice):
(JSC::DFG::SpeculativeJIT::emitAllocateButterfly):
- dfg/DFGSpeculativeJIT.h:
- dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
(JSC::DFG::SpeculativeJIT::emitInitializeButterfly):
(JSC::DFG::SpeculativeJIT::compileAllocateNewArrayWithSize):
- dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
(JSC::DFG::SpeculativeJIT::emitInitializeButterfly):
(JSC::DFG::SpeculativeJIT::compileAllocateNewArrayWithSize):
- ftl/FTLAbstractHeapRepository.h:
- ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
- ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileNode):
(JSC::FTL::DFG::LowerDFGToB3::compileArraySlice):
(JSC::FTL::DFG::LowerDFGToB3::compileNewArrayWithSize):
(JSC::FTL::DFG::LowerDFGToB3::compileMaterializeNewObject):
(JSC::FTL::DFG::LowerDFGToB3::initializeArrayElements):
(JSC::FTL::DFG::LowerDFGToB3::storeStructure):
(JSC::FTL::DFG::LowerDFGToB3::allocateCell):
(JSC::FTL::DFG::LowerDFGToB3::allocateObject):
(JSC::FTL::DFG::LowerDFGToB3::allocateJSArray):
(JSC::FTL::DFG::LowerDFGToB3::allocateUninitializedContiguousJSArray):
- jit/AssemblyHelpers.cpp:
(JSC::AssemblyHelpers::emitLoadStructure):
- runtime/ArrayPrototype.cpp:
(JSC::ArrayPrototype::finishCreation):
(JSC::speciesWatchpointIsValid):
(JSC::speciesConstructArray):
(JSC::arrayProtoFuncSlice):
(JSC::arrayProtoPrivateFuncConcatMemcpy):
(JSC::ArrayPrototype::initializeSpeciesWatchpoint):
(JSC::ArrayPrototypeAdaptiveInferredPropertyWatchpoint::handleFire):
(JSC::speciesWatchpointsValid): Deleted.
(JSC::ArrayPrototype::attemptToInitializeSpeciesWatchpoint): Deleted.
- runtime/ArrayPrototype.h:
(JSC::ArrayPrototype::speciesWatchpointStatus): Deleted.
(): Deleted.
- runtime/Intrinsic.h:
- runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::JSGlobalObject):
(JSC::JSGlobalObject::init):
- runtime/JSGlobalObject.h:
(JSC::JSGlobalObject::arraySpeciesWatchpoint):
- runtime/Structure.h:
- 7:12 PM Changeset in webkit [210694] by
-
- 9 edits in trunk/Source/JavaScriptCore
Concurrent GC has a bug where we would detect a race but fail to rescan the object
https://bugs.webkit.org/show_bug.cgi?id=166960
<rdar://problem/29983526>
Reviewed by Filip Pizlo and Mark Lam.
We have code like this in JSC:
`
Butterfly* butterfly = allocateMoreOutOfLineStorage(vm, oldOutOfLineCapacity, newOutOfLineCapacity);
nukeStructureAndSetButterfly(vm, structureID, butterfly);
structure->setLastOffset(newLastOffset);
WTF::storeStoreFence();
setStructureIDDirectly(structureID);
`
Note that the collector could detect a race here, which sometimes
incorrectly caused us to not visit the object again.
Mutator Thread: M, Collector Thread: C, assuming sequential consistency via
proper barriers:
M: allocate new butterfly
M: Set nuked structure ID
M: Set butterfly (this does a barrier)
C: Start scanning O
C: load structure ID
C: See it's nuked and bail, (we used to rely on a write barrier to rescan).
We sometimes never rescanned here because we were calling
setStructureIDDirectly which doesn't do a write barrier.
(Note, the places that do this but call setStructure were
OK because setStructure will perform a write barrier.)
(This same issue also existed in places where the collector thread
detected races for Structure::m_offset, but places that changed
Structure::m_offset didn't perform a write barrier on the object
after changing its Structure's m_offset.)
To prevent such code from requiring every call site to perform
a write barrier on the object, I've changed the collector code
to keep a stack of cells to be revisited due to races. This stack
is then consulted when we do marking. Because such races are rare,
we have a single stack on Heap that is guarded by a lock.
- heap/Heap.cpp:
(JSC::Heap::Heap):
(JSC::Heap::~Heap):
(JSC::Heap::markToFixpoint):
(JSC::Heap::endMarking):
(JSC::Heap::buildConstraintSet):
(JSC::Heap::addToRaceMarkStack):
- heap/Heap.h:
(JSC::Heap::collectorSlotVisitor):
(JSC::Heap::mutatorMarkStack): Deleted.
- heap/SlotVisitor.cpp:
(JSC::SlotVisitor::didRace):
- heap/SlotVisitor.h:
(JSC::SlotVisitor::didRace):
(JSC::SlotVisitor::didNotRace): Deleted.
- heap/SlotVisitorInlines.h:
(JSC::SlotVisitor::didNotRace): Deleted.
- runtime/JSObject.cpp:
(JSC::JSObject::visitButterfly):
(JSC::JSObject::visitButterflyImpl):
- runtime/JSObjectInlines.h:
(JSC::JSObject::prepareToPutDirectWithoutTransition):
- runtime/Structure.cpp:
(JSC::Structure::flattenDictionaryStructure):
- 6:46 PM Changeset in webkit [210693] by
-
- 11 edits in trunk
Add KEYBOARD_KEY_ATTRIBUTE / KEYBOARD_CODE_ATTRIBUTE to FeatureDefines.xcconfig
https://bugs.webkit.org/show_bug.cgi?id=166995
Reviewed by Jer Noble.
Add KEYBOARD_KEY_ATTRIBUTE / KEYBOARD_CODE_ATTRIBUTE to FeatureDefines.xcconfig
as some people are having trouble building without it.
Source/JavaScriptCore:
- Configurations/FeatureDefines.xcconfig:
Source/WebCore:
- Configurations/FeatureDefines.xcconfig:
Source/WebKit/mac:
- Configurations/FeatureDefines.xcconfig:
Source/WebKit2:
- Configurations/FeatureDefines.xcconfig:
- Shared/WebKeyboardEvent.cpp:
(WebKit::WebKeyboardEvent::WebKeyboardEvent):
Tools:
- TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
- 5:42 PM Changeset in webkit [210692] by
-
- 3 edits in trunk/Source/WebCore
Unreviewed, rolling out r210680.
This change caused LayoutTest timeouts and assertion failures.
Reverted changeset:
"Use GenericEventQueue rather than callOnMainThread to
schedule events in AudioScheduledSourceNode."
https://bugs.webkit.org/show_bug.cgi?id=166983
http://trac.webkit.org/changeset/210680
- 5:30 PM Changeset in webkit [210691] by
-
- 2 edits in trunk/Source/WebInspectorUI
REGRESSION (r209711): Web Inspector: in Elements Tab, selecting a deeply nested DOM element causes navigation bar buttons to be pushed off the leading edge
https://bugs.webkit.org/show_bug.cgi?id=166898
<rdar://problem/29951737>
Reviewed by Timothy Hatcher.
- UserInterface/Views/HierarchicalPathComponent.js:
(WebInspector.HierarchicalPathComponent.prototype.set selectorArrows):
The following operations do NOT produce the same result:
classList.toogle(aString, undefined)
classList.toogle(aString, false)
The former is an equivalent of classList.toogle(aString), e.g. it set a class if it wasn't set before.
- 5:26 PM Changeset in webkit [210690] by
-
- 1 delete in tags/Safari-603.1.20
Remove Tag.
- 4:59 PM Changeset in webkit [210689] by
-
- 13 edits in trunk/Source
Source/WebCore:
[iOS] HTML form validation popover sometimes does not go away
https://bugs.webkit.org/show_bug.cgi?id=166990
<rdar://problem/29985957>
Reviewed by Tim Horton.
The issue was that [UIViewController presentViewController:] is asynchronous
and that we sometimes tried to call [m_popoverController dismissViewControllerAnimated:]
before presentViewController had completed. This is something that UIKit does
not handle nicely and the popover just stays visible even though we have
asked for the controller to be dismissed and destroyed the ValidationBubble
object.
To address the issue, I made ValidationBubble RefCounted and make sure the
ValidationBubble object stays alive at least until the completion handler for
[UIViewController presentViewController:] has been called. This is done via
protecting the object using a RefPtr<> and capturing it in the lambda.
Because dismissViewControllerAnimated is called in the destructor, it is no
longer possible to call dismissViewControllerAnimated before the call to
presentViewController has completed.
No new tests, no easily testable since the popover was staying visible
after being destroyed (held on by UIKit).
- platform/ValidationBubble.h:
(WebCore::ValidationBubble::create):
- platform/ios/ValidationBubbleIOS.mm:
(WebCore::ValidationBubble::show):
Source/WebKit/mac:
HTML form validation popover sometimes does not go away
https://bugs.webkit.org/show_bug.cgi?id=166990
<rdar://problem/29985957>
Reviewed by Tim Horton.
Update code using ValidationBubble now that it is RefCounted.
- WebView/WebView.mm:
(-[WebView showFormValidationMessage:withAnchorRect:]):
Source/WebKit2:
[iOS] HTML form validation popover sometimes does not go away
https://bugs.webkit.org/show_bug.cgi?id=166990
<rdar://problem/29985957>
Reviewed by Tim Horton.
Update code using ValidationBubble now that it is RefCounted.
- UIProcess/PageClient.h:
- UIProcess/WebPageProxy.h:
- UIProcess/ios/PageClientImplIOS.h:
- UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::createValidationBubble):
- UIProcess/mac/PageClientImpl.h:
- UIProcess/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::createValidationBubble):
- 4:47 PM Changeset in webkit [210688] by
-
- 7 edits in trunk
[iOS] Purge GraphicsServices font cache on memory warning.
<https://webkit.org/b/154343>
Reviewed by Antti Koivisto.
Source/WebCore:
The GS font cache was retaining CSS fonts after we stopped using them.
Call SPI to release them on memory pressure. This is one of multiple
steps necessary to actually free the fonts.
- Configurations/WebCore.xcconfig:
- page/cocoa/MemoryReleaseCocoa.mm:
(WebCore::platformReleaseMemory):
- platform/cocoa/MemoryPressureHandlerCocoa.mm:
- platform/spi/ios/GraphicsServicesSPI.h:
WebKitLibraries:
- WebKitPrivateFrameworkStubs/iOS/10/GraphicsServices.framework/GraphicsServices.tbd: Add SPI.
- 4:36 PM Changeset in webkit [210687] by
-
- 3 edits2 adds in trunk
Do not allow selection of editable content when not editing.
https://bugs.webkit.org/show_bug.cgi?id=166897
<rdar://problem/29388806>
Reviewed by Tim Horton.
Source/WebKit2:
Test: fast/events/touch/ios/long-press-on-editable.html
When retrieving the position information, we should not consider
as candidates for selection editable elements, since this is only
used for non editable selections.
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::isAssistableElement): Moved within the file.
(WebKit::WebPage::getPositionInformation):
LayoutTests:
- fast/events/touch/ios/long-press-on-editable-expected.txt: Added.
- fast/events/touch/ios/long-press-on-editable.html: Added.
- 4:15 PM Changeset in webkit [210686] by
-
- 5 edits in branches/safari-603-branch/Source
Versioning.
- 4:11 PM Changeset in webkit [210685] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed EFL/GTK build fix after r210684.
- Modules/indexeddb/server/UniqueIDBDatabase.cpp:
(WebCore::IDBServer::UniqueIDBDatabase::performPrefetchCursor):
- 3:48 PM Changeset in webkit [210684] by
-
- 3 edits in trunk/Source/WebCore
REGRESSION (r209977): Crash in UniqueIDBDatabase::executeNextDatabaseTask.
https://bugs.webkit.org/show_bug.cgi?id=166984
Reviewed by Alex Christensen.
No new tests (Unable to reproduce, speculative fix).
- Modules/indexeddb/server/UniqueIDBDatabase.cpp:
(WebCore::IDBServer::UniqueIDBDatabase::performIterateCursor): If we're not already prefetching for this cursor,
starting doing so after holding a protector ref.
(WebCore::IDBServer::UniqueIDBDatabase::performPrefetchCursor): If we're now done prefetching for this cursor,
schedule the protector ref to be destroyed on the main thread.
- Modules/indexeddb/server/UniqueIDBDatabase.h:
- 3:45 PM Changeset in webkit [210683] by
-
- 6 edits in trunk/Source/WebKit2
Double Check URLs on UI side before putting in pasteboard
https://bugs.webkit.org/show_bug.cgi?id=166945
<rdar://problem/11187315>
Reviewed by Tim Horton.
Check URLs sent from the web process before putting the on pasteboard.
- UIProcess/Cocoa/WebPasteboardProxyCocoa.mm:
(WebKit::WebPasteboardProxy::setPasteboardPathnamesForType):
Add a check to make sure the URLs we've received are valid and not compromising to the user's system.
- UIProcess/WebPasteboardProxy.cpp:
(WebKit::WebPasteboardProxy::addWebProcessProxy):
Keep track of the webProcesses associated with the pasteboard proxies specifically, so that we can
use it to check the URLs before putting them on pasteboard.
(WebKit::WebPasteboardProxy::removeWebProcessProxy):
Remove dead webProcesses.
- UIProcess/WebPasteboardProxy.h:
- UIProcess/WebPasteboardProxy.messages.in:
Allow for the connection to be passed in, so that we can determine which webProcess we need to
check the URLs of.
- UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::~WebProcessProxy):
Make sure to remove WebProcessProxys from the list stored in WebPasteboardProxy
- 3:12 PM Changeset in webkit [210682] by
-
- 2 edits in trunk/Source/WebCore
Make ApplicationCacheHost::maybeLoadSynchronously more robust
https://bugs.webkit.org/show_bug.cgi?id=165192
Patch by Youenn Fablet <youenn@apple.com> on 2017-01-12
Reviewed by Alex Christensen.
No change of behavior.
Currently, in case out parameter "data" is not null and shouldLoadResourceFromApplicationCache returns false and resource is null, we might dereference a null pointer when calling maybeLoadSynchronously.
We refactor the code to ensure that this case cannot happen anymore.
- loader/appcache/ApplicationCacheHost.cpp:
(WebCore::bufferFromResource):
(WebCore::ApplicationCacheHost::maybeLoadSynchronously):
- 2:49 PM Changeset in webkit [210681] by
-
- 2 edits in trunk/Source/WebCore
Update style of ResourceHandleInternal
https://bugs.webkit.org/show_bug.cgi?id=166952
Patch by Alex Christensen <achristensen@webkit.org> on 2017-01-12
Reviewed by Andreas Kling.
No change in behavior. Just un-indent and use initializer lists.
- platform/network/ResourceHandleInternal.h:
(WebCore::ResourceHandleInternal::ResourceHandleInternal):
(WebCore::ResourceHandleInternal::client):
- 2:14 PM Changeset in webkit [210680] by
-
- 3 edits in trunk/Source/WebCore
Use GenericEventQueue rather than callOnMainThread to schedule events in AudioScheduledSourceNode.
https://bugs.webkit.org/show_bug.cgi?id=166983
Reviewed by Brent Fulgham.
- Modules/webaudio/AudioScheduledSourceNode.cpp:
(WebCore::AudioScheduledSourceNode::AudioScheduledSourceNode):
(WebCore::AudioScheduledSourceNode::finish):
- Modules/webaudio/AudioScheduledSourceNode.h:
- 1:26 PM Changeset in webkit [210679] by
-
- 2 edits in trunk/Source/WebCore
OneDrive application crashes upon launch
https://bugs.webkit.org/show_bug.cgi?id=166975
Patch by Youenn Fablet <youenn@apple.com> on 2017-01-12
Reviewed by Brady Eidson.
Checking whether load is terminated just after calling ResourceLoader::willSendRequestInternal.
The reason is that delegate call may actually cancel the load at that point.
- loader/SubresourceLoader.cpp:
(WebCore::SubresourceLoader::willSendRequestInternal):
- 1:05 PM Changeset in webkit [210678] by
-
- 2 edits in trunk/LayoutTests
Marking fast/mediastream/MediaStream-video-element-video-tracks-disabled-then-enabled.html as a timeout on mac-wk2.
https://bugs.webkit.org/show_bug.cgi?id=166980
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- 12:57 PM Changeset in webkit [210677] by
-
- 5 edits in trunk/Source/WebCore
Protect MediaPlayer from being destroyed mid-load()
https://bugs.webkit.org/show_bug.cgi?id=166976
Reviewed by Eric Carlson.
It's possible for a message sent by MediaPlayer to HTMLMediaElement to cause
MediaPlayer to be destroyed before MediaPlayer::load() completes. We have
previously protected against this same problem in HTMLMediaElement::loadResource()
by ref'ing at the beginning of the function and deref'ing on exit. To do the
same in MediaPlayer, it must become RefCounted.
To keep the same semantics about m_client in MediaPlayer (always available without
requiring a null-check), make a new static MediaPlayerClient object which can
replace the real (HTMLMediaElement) client when the MediaPlayer is invalidated.
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::~HTMLMediaElement):
(WebCore::HTMLMediaElement::clearMediaPlayer):
(WebCore::HTMLMediaElement::createMediaPlayer):
- html/HTMLMediaElement.h:
- platform/graphics/MediaPlayer.cpp:
(WebCore::nullMediaPlayerClient):
(WebCore::MediaPlayer::create):
(WebCore::MediaPlayer::MediaPlayer):
(WebCore::MediaPlayer::invalidate):
(WebCore::MediaPlayer::load):
(WebCore::MediaPlayer::loadWithNextMediaEngine):
(WebCore::MediaPlayer::inMediaDocument):
(WebCore::MediaPlayer::fullscreenMode):
(WebCore::MediaPlayer::requestedRate):
(WebCore::MediaPlayer::currentPlaybackTargetIsWirelessChanged):
(WebCore::MediaPlayer::networkStateChanged):
(WebCore::MediaPlayer::readyStateChanged):
(WebCore::MediaPlayer::volumeChanged):
(WebCore::MediaPlayer::muteChanged):
(WebCore::MediaPlayer::timeChanged):
(WebCore::MediaPlayer::sizeChanged):
(WebCore::MediaPlayer::repaint):
(WebCore::MediaPlayer::durationChanged):
(WebCore::MediaPlayer::rateChanged):
(WebCore::MediaPlayer::playbackStateChanged):
(WebCore::MediaPlayer::firstVideoFrameAvailable):
(WebCore::MediaPlayer::characteristicChanged):
(WebCore::MediaPlayer::cachedKeyForKeyId):
(WebCore::MediaPlayer::keyNeeded):
(WebCore::MediaPlayer::mediaKeysStorageDirectory):
(WebCore::MediaPlayer::referrer):
(WebCore::MediaPlayer::userAgent):
(WebCore::MediaPlayer::graphicsDeviceAdapter):
(WebCore::MediaPlayer::cachedResourceLoader):
(WebCore::MediaPlayer::createResourceLoader):
(WebCore::MediaPlayer::addAudioTrack):
(WebCore::MediaPlayer::removeAudioTrack):
(WebCore::MediaPlayer::addTextTrack):
(WebCore::MediaPlayer::removeTextTrack):
(WebCore::MediaPlayer::addVideoTrack):
(WebCore::MediaPlayer::removeVideoTrack):
(WebCore::MediaPlayer::outOfBandTrackSources):
(WebCore::MediaPlayer::shouldWaitForResponseToAuthenticationChallenge):
(WebCore::MediaPlayer::handlePlaybackCommand):
(WebCore::MediaPlayer::sourceApplicationIdentifier):
(WebCore::MediaPlayer::preferredAudioCharacteristics):
(WebCore::MediaPlayer::doesHaveAttribute):
(WebCore::MediaPlayer::mediaPlayerNetworkInterfaceName):
(WebCore::MediaPlayer::getRawCookies):
(WebCore::MediaPlayer::shouldDisableSleep):
- platform/graphics/MediaPlayer.h:
(WebCore::MediaPlayer::platformVolumeConfigurationRequired):
(WebCore::MediaPlayer::client):
- 12:39 PM Changeset in webkit [210676] by
-
- 3 edits in trunk/Tools
Add the ability to filter the set of bindings tests you want to run
https://bugs.webkit.org/show_bug.cgi?id=166977
Reviewed by Tim Horton.
Allows doing things like:
run-bindings-tests TestObj* TestCEReactions*
to run only those tests that match the patterns.
- Scripts/run-bindings-tests:
(main):
Switch to using optparse and pass the remaining args as the filters.
- Scripts/webkitpy/bindings/main.py:
(BindingsTests.init):
Store the pattens.
(BindingsTests.test_matches_patterns):
Add helper predicate to determine if a test should be run. When no
patterns are present, all tests should run.
(BindingsTests.run_tests):
Filter tests using the passed in patterns.
- 12:38 PM Changeset in webkit [210675] by
-
- 10 edits in trunk/Source/WebCore
Update bindings test results.
- bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
(WebCore::JSTestCustomNamedGetter::getOwnPropertySlot):
(WebCore::JSTestCustomNamedGetter::getOwnPropertySlotByIndex):
- bindings/scripts/test/JS/JSTestCustomNamedGetter.h:
- bindings/scripts/test/JS/JSTestEventTarget.cpp:
(WebCore::JSTestEventTarget::getOwnPropertySlot):
(WebCore::JSTestEventTarget::getOwnPropertySlotByIndex):
(WebCore::JSTestEventTarget::getOwnPropertyNames):
- bindings/scripts/test/JS/JSTestEventTarget.h:
- bindings/scripts/test/JS/JSTestInterface.cpp:
(WebCore::JSTestInterface::put):
(WebCore::JSTestInterface::putByIndex):
- bindings/scripts/test/JS/JSTestInterface.h:
- bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::JSTestObj::getOwnPropertySlot):
(WebCore::JSTestObj::getOwnPropertySlotByIndex):
(WebCore::JSTestObj::getOwnPropertyNames):
- bindings/scripts/test/JS/JSTestOverrideBuiltins.cpp:
(WebCore::JSTestOverrideBuiltins::getOwnPropertySlot):
(WebCore::JSTestOverrideBuiltins::getOwnPropertySlotByIndex):
(WebCore::JSTestOverrideBuiltins::getOwnPropertyNames):
- bindings/scripts/test/JS/JSTestOverrideBuiltins.h:
- 12:21 PM Changeset in webkit [210674] by
-
- 3 edits in trunk/Source/WebInspectorUI
Web Inspector: cubic-bezier editor behaves poorly for invalid inputs in component fields
https://bugs.webkit.org/show_bug.cgi?id=166928
Patch by Devin Rousso <Devin Rousso> on 2017-01-12
Reviewed by Brian Burg.
- UserInterface/Views/BezierEditor.css:
(.bezier-editor):
(.bezier-editor > .number-input-container > input):
- UserInterface/Views/BezierEditor.js:
(WebInspector.BezierEditor.createBezierInput):
(WebInspector.BezierEditor):
Add type, step, min, and max to the bezier component inputs to better control user input.
- 11:32 AM Changeset in webkit [210673] by
-
- 4 edits in trunk/Websites/perf.webkit.org
Outliers are not hidden in v3 UI
https://bugs.webkit.org/show_bug.cgi?id=166966
Reviewed by Andreas Kling.
Fixed the typo in addToSeries. An outlier has markedOutlier set to true, not isOutlier.
Also fixed a bug unveiled by new tests in MeasurementRootSet.ensureSingleton. It was was creating
a new MeasurementRootSet each time it was called instead of finding an existing instance. Fixed the bug
by merging the static maps of MeasurementRootSet and RootSet.
- public/v3/models/measurement-cluster.js:
(MeasurementCluster.prototype.addToSeries): Fixed the bug.
- public/v3/models/root-set.js:
(MeasurementRootSet.prototype.namedStaticMap): Added.
(MeasurementRootSet.prototype.ensureNamedStaticMap): Added.
(MeasurementRootSet.namedStaticMap): Added.
(MeasurementRootSet.ensureNamedStaticMap): Added.
- unit-tests/measurement-set-tests.js: Added tests for adopting time series data from a cluster.
- 11:27 AM Changeset in webkit [210672] by
-
- 5 edits in branches/safari-603-branch/Source
Versioning.
- 11:26 AM Changeset in webkit [210671] by
-
- 1 copy in tags/Safari-603.1.20
New tag.
- 10:46 AM WebKitGTK/2.14.x edited by
- (diff)
- 10:44 AM Changeset in webkit [210670] by
-
- 2 edits in trunk/Source/WebCore
[GTK] WebKitWebProcess at 100% CPU loading hyphenation dictionaries
https://bugs.webkit.org/show_bug.cgi?id=165601
Reviewed by Carlos Garcia Campos.
In HyphenationLibHyphen, retrieve the canonicalized absolute pathname of the dictionary file
in order to avoid storing symbolic links as the target files for specific locales. libhyphen
distributes its dictionary files by linking a set of similar locales files to a single file.
Not resolving those symbolic links means we'll be opening a single file via multiple
HyphenationDictionary objects, which is far from optimal.
To add insult to injury, these HyphenationDictionary objects were stored in a TinyLRUCache
with a slim capacity of 4. This meant that while already loading one single file through
multiple symlinks, because of continuous eviciton from this LRU cache the same symlinks
continued to be processed, in some cases resulting in opening the same dictionary file
hundreds or thousands of times. The capacity of this TinyLRUCache is increased to 32
to keep the amount of open libhyphen dictionaries capped at some reasonable number.
- platform/text/hyphen/HyphenationLibHyphen.cpp:
(WebCore::scanDirectoryForDicionaries):
- 10:41 AM Changeset in webkit [210669] by
-
- 6 edits8 adds in trunk
[css-grid] Make the grid sizing data persistent through layouts
https://bugs.webkit.org/show_bug.cgi?id=166883
Reviewed by Darin Adler and Manuel Rego Casasnovas.
Source/WebCore:
We want to keep the grid sizing data structures through different
layouts. This will allow to optimize some operations, reusing
these data while still valid. Additionally, operations like
determining the baseline position when the grid container is under
an inline formatting context need these data once the grid has
been laid out.
This patch controls the sizing data validity and make the data
structures persistent after layout.
Tests: fast/css-grid-layout/grid-add-item-with-positioned-items.html
fast/css-grid-layout/grid-add-positioned-block-item-after-inline-item.html
fast/css-grid-layout/grid-container-change-explicit-grid-recompute-child.html
fast/css-grid-layout/grid-item-change-order-auto-flow.html
- rendering/RenderBox.cpp:
(WebCore::RenderBox::styleDidChange): Evaluate if the style change made the grid data invalid.
(WebCore::RenderBox::updateGridPositionAfterStyleChange): Evaluate if the style change made the grid data invalid.
- rendering/RenderBox.h:
- rendering/RenderGrid.cpp:
(WebCore::RenderGrid::Grid::setNeedsItemsPlacement): The grid must execute the items placement logic before continue processing the layout.
(WebCore::RenderGrid::addChild): Mark the grid data as dirty.
(WebCore::RenderGrid::removeChild): Mark the grid data as dirty.
(WebCore::RenderGrid::styleDidChange): Evaluate grid data validity.
(WebCore::RenderGrid::explicitGridDidResize): Mark the grid data as dirty.
(WebCore::RenderGrid::namedGridLinesDefinitionDidChange): Mark the grid data as dirty.
(WebCore::RenderGrid::layoutBlock): We don't need to clear the grid data anymore.
(WebCore::RenderGrid::dirtyGrid): Clearing the grid data and mark is as needing to execute the items placement logic.
(WebCore::RenderGrid::trackSizesForComputedStyle): Assert we don't need to perform the items placement logic.
(WebCore::RenderGrid::paintChildren): Assert we don't need to perform the items placement logic.
- rendering/RenderGrid.h:
(WebCore::RenderGrid::clear): Deleted.
LayoutTests:
The tests added are now needed to verify we perform correctly the
data validation after certain style changes.
- fast/css-grid-layout/grid-add-item-with-positioned-items-expected.txt: Added.
- fast/css-grid-layout/grid-add-item-with-positioned-items.html: Added.
- fast/css-grid-layout/grid-add-positioned-block-item-after-inline-item-expected.txt: Added.
- fast/css-grid-layout/grid-add-positioned-block-item-after-inline-item.html: Added.
- fast/css-grid-layout/grid-container-change-explicit-grid-recompute-child-expected.txt: Added.
- fast/css-grid-layout/grid-container-change-explicit-grid-recompute-child.html: Added.
- fast/css-grid-layout/grid-item-change-order-auto-flow-expected.txt: Added.
- fast/css-grid-layout/grid-item-change-order-auto-flow.html: Added.
- 10:34 AM Changeset in webkit [210668] by
-
- 14 edits in trunk
[iOS] Implement support for KeyboardEvent.code
https://bugs.webkit.org/show_bug.cgi?id=166932
<rdar://problem/29972518>
Reviewed by Darin Adler.
Source/WebCore:
Implement support for KeyboardEvent.code on iOS.
No new tests, updated existing test.
- platform/ios/PlatformEventFactoryIOS.h:
- platform/ios/PlatformEventFactoryIOS.mm:
(WebCore::codeForKeyEvent):
(WebCore::PlatformKeyboardEventBuilder::PlatformKeyboardEventBuilder):
Source/WebKit2:
Make sure KeyboardEvent.code is properly initialized on
iOS WK2.
- Shared/WebEvent.h:
- Shared/WebKeyboardEvent.cpp:
(WebKit::WebKeyboardEvent::WebKeyboardEvent):
- Shared/ios/WebIOSEventFactory.mm:
(WebIOSEventFactory::createWebKeyboardEvent):
Source/WTF:
Enable KEYBOARD_CODE_ATTRIBUTE feature on iOS.
- wtf/FeatureDefines.h:
LayoutTests:
Extend layout test coverage and rebaseline a couple of existing tests
now that more checks are passing.
- fast/events/ios/keyboard-event-key-attribute-expected.txt:
- fast/events/ios/keyboard-event-key-attribute.html:
- platform/ios-simulator/fast/events/constructors/keyboard-event-constructor-expected.txt:
- platform/ios-simulator/imported/w3c/web-platform-tests/dom/events/Event-subclasses-constructors-expected.txt:
- 10:30 AM Changeset in webkit [210667] by
-
- 38 edits8 deletes in trunk
[WebIDL] Autogenerate named getters
https://bugs.webkit.org/show_bug.cgi?id=166835
Patch by Sam Weinig <sam@webkit.org> on 2017-01-12
Reviewed by Alex Christensen.
Source/WebCore:
- Modules/mediastream/RTCStatsResponse.idl:
Update type to be nullable, since generator expects that for now.
- WebCore.xcodeproj/project.pbxproj:
- bindings/js/JSCustomSQLStatementErrorCallback.cpp: Removed.
- bindings/js/JSDOMMimeTypeArrayCustom.cpp: Removed.
- bindings/js/JSDOMNamedFlowCollectionCustom.cpp: Removed.
- bindings/js/JSDOMPluginArrayCustom.cpp: Removed.
- bindings/js/JSDOMPluginCustom.cpp: Removed.
- bindings/js/JSNamedNodeMapCustom.cpp: Removed.
- bindings/js/JSRTCStatsResponseCustom.cpp: Removed.
- bindings/js/JSStyleSheetListCustom.cpp: Removed.
Remove deleted files.
- bindings/js/JSSQLStatementErrorCallbackCustom.cpp:
Renamed from Source/WebCore/bindings/js/JSCustomSQLStatementErrorCallback.cpp for consistency.
- bindings/IDLTypes.h:
(WebCore::IDLNullable::nullValue):
(WebCore::IDLNullable::isNullValue):
(WebCore::IDLNullable::extractValueFromNullable):
Add Nullable traits for IDLNullable, that call down to the underlying type. This allows
us to more easily tests for nullability without stripping the IDLNullable off.
- bindings/js/JSDOMStringMapCustom.cpp:
(WebCore::JSDOMStringMap::getOwnPropertySlotDelegate): Deleted.
(WebCore::JSDOMStringMap::getOwnPropertyNames): Deleted.
Remove overriden getOwnPropertySlot and getOwnPropertyNames.
- bindings/js/JSHTMLCollectionCustom.cpp:
(WebCore::JSHTMLCollection::nameGetter): Deleted.
- bindings/js/JSHTMLFormElementCustom.cpp:
(WebCore::JSHTMLFormElement::nameGetter): Deleted.
- bindings/js/JSHTMLOptionsCollectionCustom.cpp:
(WebCore::JSHTMLOptionsCollection::nameGetter): Deleted.
- bindings/js/JSStorageCustom.cpp:
(WebCore::JSStorage::nameGetter): Deleted.
Remove custom name getters.
- bindings/js/JSHTMLSelectElementCustom.cpp:
(WebCore::selectElementIndexSetter):
- html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::setItem):
(WebCore::HTMLSelectElement::setLength):
(WebCore::HTMLSelectElement::setOption): Deleted.
- html/HTMLSelectElement.h:
Add implementation of HTMLSelectElement::setItem() that does properly
removes if the option is null. Re-implement selectElementIndexSetter to
use it and switch conversion code to use JSDOMConvert.
- bindings/scripts/CodeGeneratorJS.pm:
(GenerateIndexedGetter):
(GenerateNamedGetter):
Extract typed getter generation into their own functions.
(GenerateGetOwnPropertySlotBody):
(GenerateGetOwnPropertySlotBodyByIndex):
Extract getOwnPropertySlotBody / getOwnPropertySlotBodyByIndex generation
into their own functions. Add support for generating name getters.
(GenerateGetOwnPropertyNames):
Extract getOwnPropertyNames generation into its own function, adding support
for respecting the LegacyUnenumerableNamedProperties attribute and switching
the default to not include named properties in the enumerated names.
(GeneratePut):
(GeneratePutByIndex):
Extract put / putByIndex generators into their own functions in preparation
of supporting namedSetters in the future.
(GetIndexedSetterFunction):
(GetNamedSetterFunction):
(GetNamedDeleterFunction):
Add helper getter functions to extract named/index setter/deleters.
(InstanceOverridesPut):
Add helper predicate to determine if an interface needs an implementation
of put.
(GenerateHeader):
Place custom helper functions (e.g. nameGetter/putDelegate/etc.) together
in the generated header.
(GenerateImplementation):
(GenerateCallbackImplementationContent):
Replace inline generation with calls to the new helper generator functions.
(NativeToJSValueUsingReferences):
(NativeToJSValueUsingPointers):
(NativeToJSValue):
Remove unused inFunctionCall parameter, and add new suppressExceptionCheck
parameter, which is used for nameGetters.
- bindings/scripts/IDLAttributes.txt:
Add LegacyUnenumerableNamedProperties.
- css/StyleSheetList.cpp:
(WebCore::StyleSheetList::namedItem):
(WebCore::StyleSheetList::getNamedItem): Deleted.
- css/StyleSheetList.h:
- css/StyleSheetList.idl:
Rename getNamedItem to namedItem, and make it return a CSSStyleSheet*
which is what the bindings specify.
- dom/DOMNamedFlowCollection.idl:
Add LegacyUnenumerableNamedProperties to match existing behavior.
- dom/DOMStringMap.h:
Switch from typedef to type alias.
- dom/DOMStringMap.idl:
Remove CustomEnumerateProperty and JSCustomGetOwnPropertySlotAndDescriptor
and add the getter. Also add the missing setter and deleter commented out.
- dom/DatasetDOMStringMap.h:
- dom/DatasetDOMStringMap.cpp:
(WebCore::DatasetDOMStringMap::supportedPropertyNames):
(WebCore::DatasetDOMStringMap::names): Deleted.
Rename names to supportedPropertyNames to support the bindings.
(WebCore::DatasetDOMStringMap::item):
(WebCore::DatasetDOMStringMap::namedItem):
Add namedItems (to support the bindings), and rework item to return
an optional rather than using a bool out parameter.
- dom/NamedNodeMap.idl:
Add LegacyUnenumerableNamedProperties matching the spec.
- html/HTMLAllCollection.idl:
Add CustomNamedGetter and LegacyUnenumerableNamedProperties. Update signatures
to match the spec. Commenting out ones not implemented yet.
- html/HTMLCollection.idl:
Add LegacyUnenumerableNamedProperties matching the spec.
- html/HTMLFormControlsCollection.idl:
Add CustomNamedGetter. Update signature of the getter to match the spec.
The reason this can't be generated yet is that we don't have a good strategy
for functions with differing return types that shadow each other.
- html/HTMLFormElement.h:
- html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::namedItem):
(WebCore::HTMLFormElement::supportedPropertyNames):
Add implementation of namedItem and stub of supportedPropertyNames.
- html/HTMLFormElement.idl:
Add LegacyUnenumerableNamedProperties and remove CustomNamedGetter. Update
the signatures to match the spec.
- page/DOMWindow.idl:
Add LegacyUnenumerableNamedProperties matching the spec.
- plugins/DOMMimeTypeArray.idl:
- plugins/DOMPlugin.idl:
- plugins/DOMPluginArray.idl:
Add LegacyUnenumerableNamedProperties and add nullability to return types.
LayoutTests:
- fast/dom/HTMLSelectElement/select-selectedIndex-expected.txt:
- fast/dom/HTMLSelectElement/select-selectedIndex-multiple-expected.txt:
- js/dom/reflect-set-onto-dom-expected.txt:
Update exception text.
- 9:52 AM Changeset in webkit [210666] by
-
- 4 edits in trunk/Source/WebKit2
WebBackForwardListProxy should remove restored session history items from PageCache on close.
<https://webkit.org/b/166972>
<rdar://problem/28904157>
Reviewed by Brady Eidson.
Register history item ID's from the UIProcess with the associated-items map
so that we can remove any PageCache entries associated with them immediately
when closing a WebPage.
Otherwise they might not get removed until the next PageCache pruning happens.
This patch is a speculative fix for what looks like it might be weirdness
related to a PageCache entry outliving its originating Page.
- WebProcess/WebPage/WebBackForwardListProxy.cpp:
(WebKit::WebBackForwardListProxy::addItemFromUIProcess):
- WebProcess/WebPage/WebBackForwardListProxy.h:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::restoreSessionInternal):
- 9:49 AM Changeset in webkit [210665] by
-
- 2 edits in trunk/LayoutTests
Rebaseline inspector/dom/getAccessibilityPropertiesForNode.html after r210605.
Unreviewed test gardening.
- inspector/dom/getAccessibilityPropertiesForNode-expected.txt:
- 9:31 AM Changeset in webkit [210664] by
-
- 4 edits in trunk/Source/WebKit2
[GTK] Correct license on WebKitSecurityOrigin headers
These ought to be LGPLv2+, because the rest of the GTK+ API is LPGLv2+.
- UIProcess/API/gtk/WebKitSecurityOrigin.cpp:
- UIProcess/API/gtk/WebKitSecurityOrigin.h:
- UIProcess/API/gtk/WebKitSecurityOriginPrivate.h:
- 9:06 AM Changeset in webkit [210663] by
-
- 2 edits in trunk/Source/WebCore
[iOS][WK1] Fix initialization of CADisplayLink::preferredFramesPerSecond
https://bugs.webkit.org/show_bug.cgi?id=166956
Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2017-01-12
Reviewed by Tim Horton.
Set this option to 60fps instead of leaving set to the default.
- platform/graphics/ios/DisplayRefreshMonitorIOS.mm:
(-[WebDisplayLinkHandler initWithMonitor:]):
- 8:46 AM Changeset in webkit [210662] by
-
- 13 edits2 deletes in branches/safari-603-branch/Source/JavaScriptCore
Merge r210565. rdar://problem/29942167
- 8:46 AM Changeset in webkit [210661] by
-
- 6 edits4 adds in branches/safari-603-branch
Merge r210564. rdar://problem/29944582
- 8:46 AM Changeset in webkit [210660] by
-
- 5 edits1 add in branches/safari-603-branch
Merge r210563. rdar://problem/29940224
- 8:46 AM Changeset in webkit [210659] by
-
- 5 edits in branches/safari-603-branch/Source/JavaScriptCore
Merge r210553. rdar://problem/29941356
- 8:46 AM Changeset in webkit [210658] by
-
- 2 edits in branches/safari-603-branch/Source/WebKit/mac
Merge r210550. rdar://problem/29944874
- 8:45 AM Changeset in webkit [210657] by
-
- 7 edits in branches/safari-603-branch
Merge r210546. rdar://problem/29491188
- 8:45 AM Changeset in webkit [210656] by
-
- 4 edits2 adds in branches/safari-603-branch/LayoutTests
Merge r210538. rdar://problem/29941747
- 8:45 AM Changeset in webkit [210655] by
-
- 2 edits in branches/safari-603-branch/Source/JavaScriptCore
Merge r210530. rdar://problem/29909896
- 8:45 AM Changeset in webkit [210654] by
-
- 2 edits in branches/safari-603-branch/Source/WebKit2
Merge r210525. rdar://problem/29931470
- 8:45 AM Changeset in webkit [210653] by
-
- 16 edits2 copies1 move10 adds1 delete in branches/safari-603-branch/Source/JavaScriptCore
Merge r210521. rdar://problem/29909896
- 8:45 AM Changeset in webkit [210652] by
-
- 1 edit2 adds in branches/safari-603-branch/LayoutTests
Merge r210516. rdar://problem/28693432
- 8:45 AM Changeset in webkit [210651] by
-
- 2 edits in branches/safari-603-branch/Source/WebCore
Merge r210508. rdar://problem/29801059
- 8:45 AM Changeset in webkit [210650] by
-
- 2 edits in branches/safari-603-branch/Source/WebCore
Merge r210472. rdar://problem/29767412
- 8:45 AM Changeset in webkit [210649] by
-
- 2 edits in branches/safari-603-branch/LayoutTests/imported/w3c
Merge r210471. rdar://problem/29859121
- 8:45 AM Changeset in webkit [210648] by
-
- 8 edits3 adds in branches/safari-603-branch
Merge r210468. rdar://problem/29859121
- 8:45 AM Changeset in webkit [210647] by
-
- 3 edits1 add in branches/safari-603-branch
Merge r210457. rdar://problem/27330808
- 8:45 AM Changeset in webkit [210646] by
-
- 2 edits in branches/safari-603-branch/LayoutTests
Merge r210443. rdar://problem/28215999
- 8:45 AM Changeset in webkit [210645] by
-
- 3 edits in branches/safari-603-branch/Source/WebCore
Merge r210425. rdar://problem/29872021
- 8:45 AM Changeset in webkit [210644] by
-
- 2 edits in branches/safari-603-branch/Source/WebCore
Merge r210378. rdar://problem/29024384
- 8:45 AM Changeset in webkit [210643] by
-
- 2 edits in branches/safari-603-branch/Source/WebCore
Merge r210376. rdar://problem/29763079
- 8:45 AM Changeset in webkit [210642] by
-
- 4 edits in branches/safari-603-branch/LayoutTests
Merge r210371. rdar://problem/29851126
- 8:45 AM Changeset in webkit [210641] by
-
- 2 edits in branches/safari-603-branch/Source/WebKit2
Merge r210281. rdar://problem/29849769
- 8:45 AM Changeset in webkit [210640] by
-
- 10 edits10 adds in branches/safari-603-branch
Merge r210147. rdar://problem/29675551
- 8:45 AM Changeset in webkit [210639] by
-
- 2 edits in branches/safari-603-branch/Source/WebCore
Merge r210095. rdar://problem/29912221
- 8:44 AM Changeset in webkit [210638] by
-
- 24 edits2 adds in branches/safari-603-branch
Merge r210432. rdar://problem/29633667
- 8:44 AM Changeset in webkit [210637] by
-
- 3 edits in branches/safari-603-branch/Source/WebCore
Merge r210131. rdar://problem/29633667
- 8:44 AM Changeset in webkit [210636] by
-
- 2 edits in branches/safari-603-branch/Source/WebCore
Merge r210094. rdar://problem/29912214
- 8:44 AM Changeset in webkit [210635] by
-
- 2 edits in branches/safari-603-branch/Source/WebCore
Merge r210078. rdar://problem/29633667
- 8:44 AM Changeset in webkit [210634] by
-
- 10 edits in branches/safari-603-branch
Merge r210451. rdar://problem/29909812
- 8:44 AM Changeset in webkit [210633] by
-
- 5 edits in branches/safari-603-branch/Source
Merge r210398. rdar://problem/29229439
- 8:07 AM Changeset in webkit [210632] by
-
- 2 edits in trunk/LayoutTests
[EFL] Gardening on 13th Jan.
Unreviewed EFL Gardening. Update crash and timeout tests after bumping Ubuntu version.
- platform/efl/TestExpectations:
- 5:56 AM Changeset in webkit [210631] by
-
- 2 edits in trunk/Source/WebKit2
[MediaStream, Mac] Render media stream audio buffers
https://bugs.webkit.org/show_bug.cgi?id=159836
<rdar://problem/27380390>
Unreviewed, revert accidental change.
- WebProcess/com.apple.WebProcess.sb.in:
- 3:49 AM Changeset in webkit [210630] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, build fix for macOS ports
https://bugs.webkit.org/show_bug.cgi?id=166925
- WebCore.xcodeproj/project.pbxproj:
- 3:26 AM Changeset in webkit [210629] by
-
- 2 edits in trunk/LayoutTests
[EFL] Second update TestExpectation file for Ubuntu 16.04.
Unreviewed EFL gardening.
- platform/efl/TestExpectations: Need to update this file for EFL bot again.
- 1:22 AM Changeset in webkit [210628] by
-
- 8 edits in trunk/Tools
Followup fix after r210503.
https://bugs.webkit.org/show_bug.cgi?id=166887
Reviewed by Alex Christensen.
After <http://trac.webkit.org/changeset/210503>, test results are written to a
duplicated file handle on Windows. This patch fixes the remaining call sites.
- DumpRenderTree/PixelDumpSupport.cpp:
- DumpRenderTree/TestRunner.cpp:
(TestRunner::waitToDumpWatchdogTimerFired):
- DumpRenderTree/TestRunner.h:
- DumpRenderTree/win/AccessibilityControllerWin.cpp:
- DumpRenderTree/win/DumpRenderTree.cpp:
- DumpRenderTree/win/DumpRenderTreeWin.h:
- DumpRenderTree/win/TestRunnerWin.cpp:
(TestRunner::setSpellCheckerLoggingEnabled):
- 1:01 AM Changeset in webkit [210627] by
-
- 19 edits2 copies2 adds in trunk/Source
Implement InlineClassicScript
https://bugs.webkit.org/show_bug.cgi?id=166925
Reviewed by Ryosuke Niwa.
Source/JavaScriptCore:
Add ScriptFetcher field for SourceOrigin.
- runtime/SourceOrigin.h:
(JSC::SourceOrigin::SourceOrigin):
(JSC::SourceOrigin::fetcher):
Source/WebCore:
As of r210585, ScriptFetcher functionality is decoupled from ScriptElement.
This patch is a further cleanup. We introduce InlineClassicScript, which is
similar to LoadableClassicScript / LoadableModuleScript. And we move ScriptFetcher
functionality from LoadableScript to CachedScriptFetcher, which is the base
class of InlineClassicScript and LoadableScript.
And we start setting this CachedScriptFetcher to the member of JSC::SourceOrigin.
This allows us to examine the ScriptFetcher from the SourceOrigin.
When dynamic-import operator is called, we need to get the ScriptFetcher from the
caller script SourceOrigin since the subsequent module loading needs to know the
metadata about fetching and ScriptFetcher delivers it.
No behavior change.
- CMakeLists.txt:
- bindings/js/CachedModuleScript.cpp:
(WebCore::CachedModuleScript::load):
- bindings/js/CachedModuleScript.h:
- bindings/js/CachedModuleScriptLoader.cpp:
(WebCore::CachedModuleScriptLoader::create):
(WebCore::CachedModuleScriptLoader::CachedModuleScriptLoader):
(WebCore::CachedModuleScriptLoader::load):
- bindings/js/CachedModuleScriptLoader.h:
- bindings/js/CachedScriptFetcher.cpp: Copied from Source/WebCore/dom/LoadableScript.cpp.
(WebCore::CachedScriptFetcher::requestScriptWithCache):
- bindings/js/CachedScriptFetcher.h: Copied from Source/JavaScriptCore/runtime/SourceOrigin.h.
(WebCore::CachedScriptFetcher::CachedScriptFetcher):
- bindings/js/CachedScriptSourceProvider.h:
(WebCore::CachedScriptSourceProvider::create):
(WebCore::CachedScriptSourceProvider::CachedScriptSourceProvider):
(WebCore::makeSource): Deleted.
- bindings/js/ScriptController.cpp:
(WebCore::ScriptController::loadModuleScriptInWorld):
(WebCore::ScriptController::loadModuleScript):
- bindings/js/ScriptController.h:
- bindings/js/ScriptModuleLoader.cpp:
(WebCore::ScriptModuleLoader::fetch):
(WebCore::ScriptModuleLoader::notifyFinished):
- bindings/js/ScriptSourceCode.h:
(WebCore::ScriptSourceCode::ScriptSourceCode):
(WebCore::ScriptSourceCode::m_url):
- dom/InlineClassicScript.cpp: Added.
(WebCore::InlineClassicScript::create):
- dom/InlineClassicScript.h: Added.
- dom/LoadableClassicScript.cpp:
(WebCore::LoadableClassicScript::execute):
- dom/LoadableScript.cpp:
(WebCore::LoadableScript::requestScriptWithCache): Deleted.
- dom/LoadableScript.h:
(WebCore::LoadableScript::LoadableScript):
(): Deleted.
- dom/ScriptElement.cpp:
(WebCore::ScriptElement::prepareScript):
(WebCore::ScriptElement::requestModuleScript):
(WebCore::ScriptElement::executePendingScript):
- html/parser/HTMLScriptRunner.cpp:
(WebCore::HTMLScriptRunner::runScript):
- xml/parser/XMLDocumentParserLibxml2.cpp:
(WebCore::XMLDocumentParser::endElementNs):
Jan 11, 2017:
- 11:18 PM Changeset in webkit [210626] by
-
- 16 edits1 move1 add in trunk/Websites/perf.webkit.org
Hide the UI to trigger an A/B testing when there are no triggerables
https://bugs.webkit.org/show_bug.cgi?id=166964
Reviewed by Yusuke Suzuki.
Hide the "Start A/B Testing" button on analysis task pages instead of showing it and failing later
when the user tries to create one it with a TriggerableNotFound error.
Added the list of triggerables to the manifest JSON so that we can determine this condition without
having to fetch /api/triggerable for each analysis task as done in v2 UI.
- public/admin/reprocess-report.php:
- public/api/manifest.php:
- public/api/report.php:
- public/include/admin-header.php:
- public/include/manifest-generator.php: Moved from public/include/manifest.php.
(ManifestGenerator::generate):
(ManifestGenerator::triggerables): Added. Include the list of repositories this triggerable accepts
as well as the list of (test, platform) pairs on which this triggerable is available.
Use [testId, platformId] instead of a dictionary to reduce the file size.
- public/v3/components/customizable-test-group-form.js:
(CustomizableTestGroupForm): Removed this._disabled. This variable was used in TestGroupFrom to
disable the "Start A/B Testing" button when no range is selected but this ended up racy. Compute
the visibility of the button in render() function instead.
(CustomizableTestGroupForm.prototype.setRootSetMap):
(CustomizableTestGroupForm.prototype._submitted):
(CustomizableTestGroupForm.prototype.render): Hide the customize link and the button as needed.
The "Start A/B Testing" button must be hidden when either no range is selected or no title is typed.
"Customize" button must be hidden when no range is selected.
- public/v3/components/test-group-form.js:
(TestGroupForm): Removed _disabled since it's no longer used.
(TestGroupForm.prototype.setDisabled): Ditto.
(TestGroupForm.prototype.render): Ditto.
- public/v3/index.html: Include triggerable.js.
- public/v3/models/manifest.js:
(Manifest._didFetchManifest): Modernized. Create Triggerable objects from the manifest JSON.
- public/v3/models/triggerable.js: Added.
(Triggerable): Add this triggerable object to the static map of (test id, platform id) pair.
(Triggerable.prototype.acceptedRepositories): Added.
(Triggerable.findByTestConfiguration): Added. Finds a triggerable in the aforementioned static map.
- public/v3/pages/analysis-task-page.js:
(AnalysisTaskChartPane.prototype._updateStatus): Added. Re-render the page since time series data
points that were previously not available may have become available. The lack of this update was
causing a race condition in which the "Start A/B Testing" button for the charts is disabled even
after a group name had been specified because setRootSetMap was never called with a valid set.
(AnalysisTaskPage): Added this._triggerable.
(AnalysisTaskPage.prototype._didFetchTask): Find the triggerable now that we've fetched the task.
(AnalysisTaskPage.prototype.render): Hide the group view (the table of A/B testing results) entirely
when there are no groups to show. Also hide the forms to start A/B testing when there are no matching
triggerable, which is the main feature of this patch.
- server-tests/api-manifest.js: Added a test for including a list of triggerables in the manifest JSON.
- server-tests/resources/mock-data.js:
(MockData.resetV3Models): Reset Triggerable's static map.
- server-tests/tools-buildbot-triggerable-tests.js: Assert that Triggerable objects are constructed
with appropriate list of repositories and (test, platform) associations.
- tools/js/database.js:
(tableToPrefixMap): Added triggerable_repositories's prefix.
- tools/js/remote.js:
(RemoteAPI.prototype.getJSON): Log the entire response to stderr when JSON.parse fails to aid debugging.
- tools/js/v3-models.js: Import triggerable.js.
- 10:50 PM Changeset in webkit [210625] by
-
- 2 edits in trunk/Websites/perf.webkit.org
fetch-from-remote doesn’t work with some websites
https://bugs.webkit.org/show_bug.cgi?id=166963
Reviewed by Yusuke Suzuki.
Apparently file_get_contents is not compatible with some SSL/TLS connections.
Use curl_* functions to access remote servers instead.
- public/admin/fetch-from-remote.php:
(fetch_remote):
- 10:16 PM Changeset in webkit [210624] by
-
- 2 edits in trunk/Source/WebKit2
Add IconLoadingDelegate functionality to WKView.
https://bugs.webkit.org/show_bug.cgi?id=166951
Reviewed by Tim Horton.
- UIProcess/API/mac/WKView.mm:
(-[WKView dealloc]):
(-[WKView maybeInstallIconLoadingClient]): If the subclass implements the delegate method, install the
icon loading client. Otherwise, maintain the normal IconDatabase loading behavior.
(-[WKView initWithFrame:processPool:configuration:webView:]):
- 9:59 PM Changeset in webkit [210623] by
-
- 1 edit3 adds in trunk/Source/WebInspectorUI
Web Inspector: Add another Protocol Version
https://bugs.webkit.org/show_bug.cgi?id=166953
<rdar://problem/29980631>
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2017-01-11
Reviewed by Timothy Hatcher.
- UserInterface/Protocol/Legacy/10.3/InspectorBackendCommands.js: Added.
- Versions/Inspector-iOS-10.3.json: Added.
- 9:56 PM Changeset in webkit [210622] by
-
- 4 edits in trunk/LayoutTests
REGRESSION(r206133): LayoutTest inspector/css/manager-preferredInspectorStyleSheetForFrame.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=162305
<rdar://problem/28389364>
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2017-01-11
Reviewed by Timothy Hatcher.
- inspector/css/manager-preferredInspectorStyleSheetForFrame-expected.txt:
- inspector/css/manager-preferredInspectorStyleSheetForFrame.html:
Revert the change that broke this and move to more deterministic callbacks
that don't include the extra variance in producing output.
- 9:22 PM Changeset in webkit [210621] by
-
- 24 edits1 delete in trunk/Source
[MediaStream, Mac] Render media stream audio buffers
https://bugs.webkit.org/show_bug.cgi?id=159836
<rdar://problem/27380390>
Reviewed by Jer Noble.
No new tests, it isn't possible to test audio rendering directly. A follow-up patch will
add a mock audio source that will enable audio testing.
- platform/cf/CoreMediaSoftLink.cpp: Include new functions used.
- platform/cf/CoreMediaSoftLink.h:
- WebCore.xcodeproj/project.pbxproj: Remove references to the deleted previews.
- platform/Logging.h: Add MediaCaptureSamples.
- platform/MediaSample.h: Add outputPresentationTime and outputDuration.
- platform/cf/CoreMediaSoftLink.cpp: Add CMSampleBufferGetOutputDuration, CMSampleBufferGetOutputPresentationTimeStamp,
CMTimeConvertScale, CMTimebaseGetEffectiveRate, CMAudioSampleBufferCreateWithPacketDescriptions,
CMSampleBufferSetDataBufferFromAudioBufferList, CMSampleBufferSetDataReady,
CMAudioFormatDescriptionCreate, CMClockGetHostTimeClock, and CMClockGetTime.
- platform/cf/CoreMediaSoftLink.h:
Create and use an AVSampleBufferAudioRenderer each audio stream track, when it is available,
to render for audio samples. Store the offset between the first sample received from a track's
output presentation and the synchronizer time so we can adjust sample timestamps to be
relative to the synchronizer's timeline regardless of their source. Remove the use of source
previews because not all sources will have them.
- platform/graphics/avfoundation/MediaSampleAVFObjC.h:
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h:
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:
Add an ObjC helper to catch renderer status changes.
(-[WebAVSampleBufferStatusChangeListener initWithParent:]):
(-[WebAVSampleBufferStatusChangeListener dealloc]):
(-[WebAVSampleBufferStatusChangeListener invalidate]):
(-[WebAVSampleBufferStatusChangeListener beginObservingLayer:]):
(-[WebAVSampleBufferStatusChangeListener stopObservingLayer:]):
(-[WebAVSampleBufferStatusChangeListener beginObservingRenderer:]):
(-[WebAVSampleBufferStatusChangeListener stopObservingRenderer:]):
(-[WebAVSampleBufferStatusChangeListener observeValueForKeyPath:ofObject:change:context:]):
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::MediaPlayerPrivateMediaStreamAVFObjC):
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::~MediaPlayerPrivateMediaStreamAVFObjC):
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::removeOldSamplesFromPendingQueue):
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::addSampleToPendingQueue):
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::updateSampleTimes):
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::enqueueAudioSample):
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::enqueueVideoSample):
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::requestNotificationWhenReadyForVideoData):
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::requestNotificationWhenReadyForAudioData):
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::createAudioRenderer):
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::destroyAudioRenderer):
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::destroyAudioRenderers):
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::audioSourceProvider):
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::rendererStatusDidChange):
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::layerStatusDidChange):
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::flushRenderers):
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::ensureLayer):
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::destroyLayer):
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::platformLayer):
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::currentDisplayMode):
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::play):
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::enqueueAudioSampleBufferFromTrack): Deleted.
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::requestNotificationWhenReadyForMediaData): Deleted.
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::enqueueVideoSampleBuffer): Deleted.
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::prepareVideoSampleBufferFromTrack): Deleted.
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::internalSetVolume): Deleted.
- platform/graphics/avfoundation/objc/MediaSampleAVFObjC.mm:
(WebCore::MediaSampleAVFObjC::outputPresentationTime): New.
(WebCore::MediaSampleAVFObjC::outputDuration): New.
(WebCore::MediaSampleAVFObjC::dump): Log outputPresentationTime.
- platform/mediastream/AudioTrackPrivateMediaStream.h: Add timelineOffset.
- platform/mediastream/MediaStreamTrackPrivate.cpp:
(WebCore::MediaStreamTrackPrivate::setEnabled): No more m_preview.
(WebCore::MediaStreamTrackPrivate::endTrack): Ditto.
(WebCore::MediaStreamTrackPrivate::preview): Deleted.
- platform/mediastream/MediaStreamTrackPrivate.h:
- platform/mediastream/RealtimeMediaSource.h:
(WebCore::RealtimeMediaSource::preview): Deleted.
- platform/mediastream/RealtimeMediaSourcePreview.h: Removed.
- platform/mediastream/VideoTrackPrivateMediaStream.h: Add timelineOffset.
- platform/mediastream/mac/AVAudioCaptureSource.h:
- platform/mediastream/mac/AVAudioCaptureSource.mm:
(WebCore::AVAudioCaptureSource::updateSettings):
(WebCore::AVAudioCaptureSource::captureOutputDidOutputSampleBufferFromConnection): Pass the
sample buffer up the chain.
(WebCore::AVAudioSourcePreview::create): Deleted.
(WebCore::AVAudioSourcePreview::AVAudioSourcePreview): Deleted.
(WebCore::AVAudioSourcePreview::invalidate): Deleted.
(WebCore::AVAudioSourcePreview::play): Deleted.
(WebCore::AVAudioSourcePreview::pause): Deleted.
(WebCore::AVAudioSourcePreview::setEnabled): Deleted.
(WebCore::AVAudioSourcePreview::setVolume): Deleted.
(WebCore::AVAudioSourcePreview::updateState): Deleted.
(WebCore::AVAudioCaptureSource::createPreview): Deleted.
- platform/mediastream/mac/AVMediaCaptureSource.h:
(WebCore::AVMediaSourcePreview): Deleted.
(WebCore::AVMediaCaptureSource::createWeakPtr): Deleted.
- platform/mediastream/mac/AVMediaCaptureSource.mm:
(WebCore::AVMediaCaptureSource::AVMediaCaptureSource): No more preview.
(WebCore::AVMediaCaptureSource::reset):
(WebCore::AVMediaCaptureSource::preview): Deleted.
(WebCore::AVMediaCaptureSource::removePreview): Deleted.
(WebCore::AVMediaSourcePreview::AVMediaSourcePreview): Deleted.
(WebCore::AVMediaSourcePreview::~AVMediaSourcePreview): Deleted.
(WebCore::AVMediaSourcePreview::invalidate): Deleted.
- platform/mediastream/mac/AVVideoCaptureSource.h:
- platform/mediastream/mac/AVVideoCaptureSource.mm:
(WebCore::AVVideoCaptureSource::processNewFrame): Don't set the "display immediately" attachment.
(WebCore::AVVideoSourcePreview::create): Deleted.
(WebCore::AVVideoSourcePreview::AVVideoSourcePreview): Deleted.
(WebCore::AVVideoSourcePreview::backgroundLayerBoundsChanged): Deleted.
(WebCore::AVVideoSourcePreview::invalidate): Deleted.
(WebCore::AVVideoSourcePreview::play): Deleted.
(WebCore::AVVideoSourcePreview::pause): Deleted.
(WebCore::AVVideoSourcePreview::setPaused): Deleted.
(WebCore::AVVideoSourcePreview::setEnabled): Deleted.
(WebCore::AVVideoCaptureSource::createPreview): Deleted.
(-[WebCoreAVVideoCaptureSourceObserver setParent:]): Deleted.
(-[WebCoreAVVideoCaptureSourceObserver observeValueForKeyPath:ofObject:change:context:]): Deleted.
- platform/mediastream/mac/MockRealtimeVideoSourceMac.mm:
(WebCore::MockRealtimeVideoSourceMac::CMSampleBufferFromPixelBuffer): Use a more typical video
time scale. Set the sample decode time.
(WebCore::MockRealtimeVideoSourceMac::pixelBufferFromCGImage): Use a static for colorspace
instead of fetching it for every frame.
- platform/mock/mediasource/MockSourceBufferPrivate.cpp: Add outputPresentationTime and outputDuration.
- 9:15 PM Changeset in webkit [210620] by
-
- 2 edits in trunk/LayoutTests
REGRESSION: [mac-wk2] LayoutTest inspector/debugger/breakpoint-columns.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=161774
<rdar://problem/28217256>
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2017-01-11
Reviewed by Mark Lam.
- platform/mac-wk2/TestExpectations:
Remove flaky expectations for a test that hasn't failed in a month.
- 9:03 PM Changeset in webkit [210619] by
-
- 2 edits in trunk/Source/WebKit2
[WK2][Cocoa] Avoid null dereference in FullScreen code.
https://bugs.webkit.org/show_bug.cgi?id=166957
<rdar://problem/27745004>
Reviewed by Eric Carlson.
- WebProcess/cocoa/WebVideoFullscreenManager.mm:
(WebKit::WebVideoFullscreenManager::didSetupFullscreen): Use protected reference to 'this', and check for valid
page before attempting to use it.
- 8:11 PM Changeset in webkit [210618] by
-
- 4 edits in trunk/Source/WebInspectorUI
Web Inspector: spring function editor has unusual layout, should have left-aligned labels and slider tracks
https://bugs.webkit.org/show_bug.cgi?id=166933
Patch by Devin Rousso <Devin Rousso> on 2017-01-11
Reviewed by Brian Burg.
- UserInterface/Views/Main.css:
(input[type=range]::-webkit-slider-thumb):
(input[type=range]::-webkit-slider-runnable-track):
(input[type=range]::-webkit-slider-runnable-track::before): Deleted.
Fix slider styles.
- UserInterface/Views/SpringEditor.css:
(.spring-editor):
(.spring-editor > .spring-preview):
(.spring-editor > .spring-timing):
(.spring-editor > .number-input-container > .number-input-row > .number-input-row-title):
(.spring-editor > .number-input-container > .number-input-row > input):
(.spring-editor > .number-input-container > .number-input-row > input::-webkit-inner-spin-button):
(.spring-editor > .number-input-container > .number-input-row > input[type="range"]):
Decrease spacing and left-align text.
- UserInterface/Views/SpringEditor.js:
(WebInspector.SpringEditor.prototype._handleNumberInputKeydown):
(WebInspector.SpringEditor.prototype._changeSpringForInput):
Only update editor values when the new value of any input has changed. This allows users to
enter decimal values ("." was being stripped byparseFloat).
- 8:03 PM Changeset in webkit [210617] by
-
- 2 edits in trunk/Tools
Add committer status for Megan
https://bugs.webkit.org/show_bug.cgi?id=166954
Reviewed by Tim Horton.
Add committer status for Megan Gardner
- Scripts/webkitpy/common/config/contributors.json:
- 6:44 PM Changeset in webkit [210616] by
-
- 7 edits in trunk
Remove request.formData property until it gets implemented
https://bugs.webkit.org/show_bug.cgi?id=166920
<rdar://problem/29971105>
Patch by Youenn Fablet <youenn@apple.com> on 2017-01-11
Reviewed by Chris Dumez.
LayoutTests/imported/w3c:
- web-platform-tests/fetch/api/request/request-consume-empty-expected.txt:
- web-platform-tests/fetch/api/request/request-consume-expected.txt:
- web-platform-tests/fetch/api/request/request-idl-expected.txt:
- web-platform-tests/fetch/api/request/request-structure-expected.txt:
Source/WebCore:
Covered by rebased tests.
- Modules/fetch/FetchBody.idl:
- 6:08 PM Changeset in webkit [210615] by
-
- 3 edits in trunk/Source/WebInspectorUI
Web Inspector: color, gradient, cubic-bezier, spring editors should be dismissable using ESC
https://bugs.webkit.org/show_bug.cgi?id=166934
Patch by Devin Rousso <Devin Rousso> on 2017-01-11
Reviewed by Brian Burg.
- UserInterface/Views/Popover.js:
(WebInspector.Popover):
(WebInspector.Popover.prototype.dismiss):
(WebInspector.Popover.prototype.handleEvent):
(WebInspector.Popover.prototype._addListenersIfNeeded):
Adds a keydown listener while visible for the Escape key that dismisses the popover.
- UserInterface/Views/QuickConsole.js:
(WebInspector.QuickConsole.prototype.set keyboardShortcutDisabled):
Expose the ability to disable the global keyboard shortcut. This allows the Popover to have
its own Escape keyboard shortcut to take precedence.
- 5:57 PM Changeset in webkit [210614] by
-
- 1 copy in tags/Safari-604.1.3
New tag.
- 5:55 PM Changeset in webkit [210613] by
-
- 5 edits in trunk/Source
Versioning.
- 5:52 PM Changeset in webkit [210612] by
-
- 2 edits in trunk/Source/WebCore
Reverting r210598, r210597, and r210591 to fix the iOS simulator build.
https://bugs.webkit.org/show_bug.cgi?id=166672
Unreviewed build fix.
- platform/graphics/cocoa/FontCacheCoreText.cpp:
(WebCore::preparePlatformFont):
(WebCore::fontIsSystemFont): Deleted.
- 5:24 PM Changeset in webkit [210611] by
-
- 5 edits in trunk/LayoutTests
REGRESSION: LayoutTest inspector/debugger/csp-exceptions.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=165292
<rdar://problem/29471892>
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2017-01-11
Reviewed by Geoffrey Garen.
- inspector/debugger/csp-exceptions-expected.txt:
- inspector/debugger/csp-exceptions.html:
- inspector/debugger/resources/csp-exception-iframe.html:
Improve the test to handle all console messages more carefully,
including outputing the console messages to test them as well.
- platform/mac-wk2/TestExpectations:
Unskip the test, it should no longer be flakey.
- 5:18 PM Changeset in webkit [210610] by
-
- 3 edits in trunk/LayoutTests
Rebaseline two tests after r210599.
- fast/xmlhttprequest/xmlhttprequest-nonexistent-file-expected.txt:
- storage/domstorage/sessionstorage/blocked-file-access-expected.txt:
- 4:55 PM Changeset in webkit [210609] by
-
- 7 edits in trunk/Source
Crash when WebCore's GC heap grows way too large.
<https://webkit.org/b/166875>
<rdar://problem/27896585>
Reviewed by Mark Lam.
Source/JavaScriptCore:
Add a simple API to JSC::Heap that allows setting a hard limit on the amount
of live bytes. If this is exceeded, we crash with a recognizable signature.
By default there is no limit.
- heap/Heap.cpp:
(JSC::Heap::didExceedMaxLiveSize):
(JSC::Heap::updateAllocationLimits):
- heap/Heap.h:
(JSC::Heap::setMaxLiveSize):
Source/WebCore:
Cap the common WebCore VM at 4 GB of live JavaScript heap objects.
- bindings/js/CommonVM.cpp:
(WebCore::commonVMSlow):
Source/WTF:
Publish the WTF::GB constant.
- wtf/StdLibExtras.h:
- 4:44 PM Changeset in webkit [210608] by
-
- 2 edits in trunk/Tools
Unreviewed test fix after r210599.
- TestWebKitAPI/Tests/WebKit2/WKPageIsPlayingAudio.cpp:
(TestWebKitAPI::TEST): Remove debugging code that was causing a timeout.
- 4:38 PM Changeset in webkit [210607] by
-
- 5 edits in tags/Safari-602.4.8.0.1/Source
Versioning.
- 4:35 PM Changeset in webkit [210606] by
-
- 1 copy in tags/Safari-602.4.8.0.1
New tag.
- 4:11 PM Changeset in webkit [210605] by
-
- 3 edits2 adds in trunk
AX: role=treeitem accessible name not spoken to VoiceOver macOS when using string contained inside element
https://bugs.webkit.org/show_bug.cgi?id=164950
<rdar://problem/29337573>
Reviewed by Chris Fleizach.
Source/WebCore:
From the spec: https://www.w3.org/TR/wai-aria-practices/#TreeView
The element with role treeitem missing a label is labeled by its child elements.
Test: accessibility/mac/aria-tree-item-name.html
- accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::alternativeText):
LayoutTests:
- accessibility/mac/aria-tree-item-name-expected.txt: Added.
- accessibility/mac/aria-tree-item-name.html: Added.
- 4:05 PM Changeset in webkit [210604] by
-
- 2 edits in trunk/Source/WebCore
[GTK] Unreviewed build fix after r210600.
- platform/glib/FileSystemGlib.cpp:
(WebCore::getFileDeviceId): Attempting to use proper API here.
- 3:55 PM Changeset in webkit [210603] by
-
- 4 edits in trunk/Source
navigator.plugins.refresh and WKContextRefreshPlugIns doesn't pick up changes to already-present plug-ins
https://bugs.webkit.org/show_bug.cgi?id=166942
rdar://problem/29839194
Reviewed by Sam Weinig.
Source/WebKit2:
Use _CFBundleCreateUnique so the resulting bundle won't be cached.
- Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm:
(WebKit::NetscapePluginModule::getPluginInfo):
Source/WTF:
- wtf/spi/cf/CFBundleSPI.h:
Add SPI declaration.
- 3:07 PM Changeset in webkit [210602] by
-
- 2 edits in trunk/Source/WebCore
[GTK] Unreviewed build fix after r210599.
- platform/glib/FileSystemGlib.cpp:
(WebCore::getFileDeviceId): Revise for new signature.
- 3:06 PM Changeset in webkit [210601] by
-
- 3 edits2 adds in trunk
ASSERTION FAILED: run->m_stop > 0 in *WebCore::RenderBlockFlow::computeInlineDirectionPositionsForSegment
https://bugs.webkit.org/show_bug.cgi?id=166030
Reviewed by Ryosuke Niwa.
Source/WebCore:
Ordinarily, we don't process empty BiDi runs (because we filter them out).
However, when using isolates, we invoke extra machinery to create a
placeholder BiDi run, and replace it with the runs for the isolate. The
isolate's runs, though, can be empty, and rather than just deleting the
placeholder run, we will keep it around so that the m_logicallyLastRun is
still valid. This means that it is possible when all is said and done to
have empty runs, and computeInlineDirectionPositionsForSegment() needs to
not ASSERT() in this case.
Test: fast/text/bidi-isolate-empty-run.html
- rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlockFlow::computeInlineDirectionPositionsForSegment):
LayoutTests:
- fast/text/bidi-isolate-empty-run-expected.txt: Added.
- fast/text/bidi-isolate-empty-run.html: Added.
- 2:44 PM Changeset in webkit [210600] by
-
- 1 edit2 adds in trunk/Tools
Unreviewed build fix after r210599.
Add missing files.
- TestWebKitAPI/Tests/mac/CrossPartitionFileSchemeAccess.html: Added.
- TestWebKitAPI/Tests/mac/CrossPartitionFileSchemeAccess.mm: Added.
- 1:55 PM Changeset in webkit [210599] by
-
- 11 edits in trunk
File scheme should not allow access of a resource on a different volume.
https://bugs.webkit.org/show_bug.cgi?id=158552
<rdar://problem/15307582>
Reviewed by Alex Christensen.
Source/WebCore:
Revise SecurityOrigin to prevent files from one storage device (volume) from accessing content
on a different storage device (volume) unless universal access is enabled.
Pass the current file device as part of the NSURLRequest so that CFNetwork can reject loads
where the device changes in the midst of a load.
Also properly reflect that SecurityOrigin is never null by passing as a reference,
rather than as a pointer.
Tests: Tools/TestWebKitAPI/Tests/mac/CrossPartitionFileSchemeAccess.mm
- page/SecurityOrigin.cpp:
(WebCore::SecurityOrigin::canAccess): Pass argument as reference.
(WebCore::SecurityOrigin::canDisplay): Add check that files share the same volume.
(WebCore::SecurityOrigin::isSameSchemeHostPort): Pass argument as reference.
- page/SecurityOrigin.h:
- platform/FileSystem.cpp:
(WebCore::filesHaveSameVolume): Added.
- platform/FileSystem.h:
- platform/network/cocoa/ResourceRequestCocoa.mm:
(WebCore::ResourceRequest::doUpdatePlatformRequest): If loading a file URL, tell CFNetwork
the storage device at the time of the start of the load so we can trigger a failure if this
changes during the load operation.
- platform/posix/FileSystemPOSIX.cpp:
(WebCore::getFileDeviceId): Added.
- platform/win/FileSystemWin.cpp:
(WebCore::getFileDeviceId): Added.
Tools:
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add new files.
- TestWebKitAPI/Tests/mac/CrossPartitionFileSchemeAccess.html: Added.
- TestWebKitAPI/Tests/mac/CrossPartitionFileSchemeAccess.mm: Added.
- 1:46 PM Changeset in webkit [210598] by
-
- 2 edits in trunk/Source/WebCore
[Cocoa] Testing fix after r210597
https://bugs.webkit.org/show_bug.cgi?id=166672
Unreviewed.
- platform/graphics/cocoa/FontCacheCoreText.cpp:
(WebCore::preparePlatformFont):
- 1:40 PM Changeset in webkit [210597] by
-
- 2 edits in trunk/Source/WebCore
[Cocoa] Testing fix after r210591
https://bugs.webkit.org/show_bug.cgi?id=166672
Unreviewed.
Fixes fast/text/trak-optimizeLegibility.html and
fast/text/system-font-features.html
- platform/graphics/cocoa/FontCacheCoreText.cpp:
(WebCore::fontIsSystemFont):
(WebCore::preparePlatformFont):
- 1:28 PM Changeset in webkit [210596] by
-
- 2 edits in trunk/Source/WebKit2
REGRESSION: Crash in com.apple.WebKit: IPC::Connection::sendMessage(std::1::unique_ptr<IPC::MachMessage, std::__1::default_delete<IPC::MachMessage> >) + 27
https://bugs.webkit.org/show_bug.cgi?id=165854
rdar://problem/29757269
Reviewed by Tim Horton.
- Platform/IPC/mac/ConnectionMac.mm:
(IPC::Connection::sendMessage):
Add assertion.
(IPC::Connection::initializeSendSource):
Turns out the event handler can be called spuriously, so guard against that.
- 1:07 PM Changeset in webkit [210595] by
-
- 8 copies1 add in releases/Apple/Safari Technology Preview 21
Added a tag for Safari Technology Preview release 21.
- 12:30 PM Changeset in webkit [210594] by
-
- 3 edits in trunk/Source/WebInspectorUI
Web Inspector: fix UIString for Print Styles button
https://bugs.webkit.org/show_bug.cgi?id=166892
Patch by Devin Rousso <Devin Rousso> on 2017-01-11
Reviewed by Brian Burg.
- Localizations/en.lproj/localizedStrings.js:
- UserInterface/Views/DOMTreeContentView.js:
(WebInspector.DOMTreeContentView):
Changed UIString to better match documentation.
- 11:18 AM Changeset in webkit [210593] by
-
- 7 edits2 adds in trunk
Iterating over URLSearchParams does not work
https://bugs.webkit.org/show_bug.cgi?id=166921
<rdar://problem/29970907>
Reviewed by Alex Christensen.
LayoutTests/imported/w3c:
Rebaseline W3C test now that more checks are passing.
- web-platform-tests/url/urlsearchparams-foreach-expected.txt:
Source/WebCore:
Make URLSearchParams iterable, as per:
Test: fast/dom/DOMURL/searchparams-iterable.html
- html/URLSearchParams.cpp:
(WebCore::URLSearchParams::Iterator::next):
(WebCore::URLSearchParams::Iterator::Iterator):
- html/URLSearchParams.h:
(WebCore::URLSearchParams::createIterator):
- html/URLSearchParams.idl:
LayoutTests:
Add layout test coverage.
- fast/dom/DOMURL/searchparams-iterable-expected.txt: Added.
- fast/dom/DOMURL/searchparams-iterable.html: Added.
- 10:48 AM Changeset in webkit [210592] by
-
- 2 edits in trunk/JSTests
Mark es6/typed_arrays_correct_prototype_chains.js as failing after r210570.
https://bugs.webkit.org/show_bug.cgi?id=166931i
Unreviewed test gardening.
- es6.yaml:
- 10:26 AM Changeset in webkit [210591] by
-
- 2 edits in trunk/Source/WebCore
[Cocoa] Variation fonts without variations specified are not rendered as if the default variations were specified
https://bugs.webkit.org/show_bug.cgi?id=166672
<rdar://problem/29779119>
<rdar://problem/29848883>
Reviewed by Simon Fraser.
CoreText has a bug (<rdar://problem/29859207>) where variation fonts without
a specified variation value are rendered as if the minimum value is specified,
rather than the default value. The solution is to apply default values where
they are omitted.
Test: fast/text/variations/advances.html
- platform/graphics/cocoa/FontCacheCoreText.cpp:
(WebCore::preparePlatformFont):
- 10:08 AM Changeset in webkit [210590] by
-
- 2 edits in trunk/Source/WebCore
Attempt to fix the Windows build after r210588.
Unreviewed build fix.
- bindings/js/JSBindingsAllInOne.cpp:
- 9:42 AM Changeset in webkit [210589] by
-
- 2 edits in trunk/Source/WebCore
Address some feedback from r210567.
- bindings/scripts/CodeGeneratorJS.pm:
(NativeToJSValueDOMConvertNeedsState):
(NativeToJSValueDOMConvertNeedsGlobalObject):
Fix typo. robost -> robust.
- 9:38 AM Changeset in webkit [210588] by
-
- 3 edits1 move in trunk/Source/WebCore
Rename JSCustomSQLStatementErrorCallback.cpp to JSSQLStatementErrorCallbackCustom.cpp
https://bugs.webkit.org/show_bug.cgi?id=166913
Reviewed by Alex Christensen.
- CMakeLists.txt:
- WebCore.xcodeproj/project.pbxproj:
- bindings/js/JSCustomSQLStatementErrorCallback.cpp: Removed.
- bindings/js/JSSQLStatementErrorCallbackCustom.cpp: Copied from Source/WebCore/bindings/js/JSCustomSQLStatementErrorCallback.cpp.
Rename to match conventions.
- 8:00 AM Changeset in webkit [210587] by
-
- 10 edits2 deletes in trunk
Unreviewed, rolling out r210571.
This change broke the 32-bit macOS build and caused LayoutTest
failures.
Reverted changeset:
"File scheme should not allow access of a resource on a
different volume."
https://bugs.webkit.org/show_bug.cgi?id=158552
http://trac.webkit.org/changeset/210571
- 7:45 AM Changeset in webkit [210586] by
-
- 5 edits2 adds in trunk
[iOS][WK2] KeyboardEvent.key always returns an empty string
https://bugs.webkit.org/show_bug.cgi?id=166918
<rdar://problem/29861147>
Reviewed by Wenson Hsieh.
Source/WebKit2:
Make sure that KeyboardEvent.key gets properly initialized on iOS / WK2.
- Shared/WebEvent.h:
- Shared/WebKeyboardEvent.cpp:
(WebKit::WebKeyboardEvent::WebKeyboardEvent):
- Shared/ios/WebIOSEventFactory.mm:
(WebIOSEventFactory::createWebKeyboardEvent):
LayoutTests:
Add layout test coverage.
- fast/events/ios/keyboard-event-key-attribute-expected.txt: Added.
- fast/events/ios/keyboard-event-key-attribute.html: Added.
- 4:12 AM Changeset in webkit [210585] by
-
- 32 edits4 copies1 add in trunk/Source
Decouple module loading initiator from ScriptElement
https://bugs.webkit.org/show_bug.cgi?id=166888
Reviewed by Saam Barati and Ryosuke Niwa.
Source/JavaScriptCore:
Add ScriptFetcher and JSScriptFetcher.
- CMakeLists.txt:
- JavaScriptCore.xcodeproj/project.pbxproj:
- builtins/ModuleLoaderPrototype.js:
(requestFetch):
(requestInstantiate):
(requestSatisfy):
(requestInstantiateAll):
(requestLink):
(moduleEvaluation):
(loadAndEvaluateModule):
(importModule):
- llint/LLIntData.cpp:
(JSC::LLInt::Data::performAssertions):
- llint/LowLevelInterpreter.asm:
- runtime/Completion.cpp:
(JSC::loadAndEvaluateModule):
(JSC::loadModule):
(JSC::linkAndEvaluateModule):
- runtime/Completion.h:
- runtime/JSModuleLoader.cpp:
(JSC::JSModuleLoader::loadAndEvaluateModule):
(JSC::JSModuleLoader::loadModule):
(JSC::JSModuleLoader::linkAndEvaluateModule):
(JSC::JSModuleLoader::resolve):
(JSC::JSModuleLoader::fetch):
(JSC::JSModuleLoader::instantiate):
(JSC::JSModuleLoader::evaluate):
- runtime/JSModuleLoader.h:
- runtime/JSScriptFetcher.cpp: Copied from Source/WebCore/dom/LoadableScript.cpp.
(JSC::JSScriptFetcher::destroy):
- runtime/JSScriptFetcher.h: Added.
(JSC::JSScriptFetcher::createStructure):
(JSC::JSScriptFetcher::create):
(JSC::JSScriptFetcher::fetcher):
(JSC::JSScriptFetcher::JSScriptFetcher):
- runtime/JSType.h:
- runtime/ScriptFetcher.h: Copied from Source/WebCore/dom/LoadableScript.cpp.
(JSC::ScriptFetcher::~ScriptFetcher):
- runtime/VM.cpp:
(JSC::VM::VM):
- runtime/VM.h:
Source/WebCore:
Previously, we use ScriptElement (JSElement for ScriptElement) as the module loading initiator.
This element is used to transfer the metadata like charset throughout the module pipeline.
As a result, our module loader in the browser side is tightly coupled with ScriptElement.
It is not good since it prevent us from using the module loader in the non-DOM environment like
Web Workers.
So we decouple the necessary informations from ScriptElement. We move these information to
LoadableScript. And we use JSScriptFetcher to transfer LoadableScript through the JS implemented
module loader pipeline. We select LoadableScript instead of LoadableModuleScript since this initiator
information will be leveraged even in classic scripts once we implement the dynamic import.
No behavior change.
- ForwardingHeaders/runtime/JSScriptFetcher.h: Copied from Source/WebCore/dom/LoadableScript.cpp.
- ForwardingHeaders/runtime/ScriptFetcher.h: Copied from Source/WebCore/dom/LoadableScript.cpp.
- bindings/js/CachedModuleScript.cpp:
(WebCore::CachedModuleScript::create):
(WebCore::CachedModuleScript::load):
(WebCore::CachedModuleScript::CachedModuleScript): Deleted.
- bindings/js/CachedModuleScript.h:
Now we can merge CachedModuleScript to LoadableScript. But we do not do this in this patch since
we focus on decoupling the initiator information from ScriptElement.
(WebCore::CachedModuleScript::nonce): Deleted.
(WebCore::CachedModuleScript::crossOriginMode): Deleted.
- bindings/js/CachedModuleScriptLoader.cpp:
(WebCore::CachedModuleScriptLoader::load):
- bindings/js/CachedModuleScriptLoader.h:
- bindings/js/JSDOMWindowBase.cpp:
(WebCore::JSDOMWindowBase::moduleLoaderResolve):
(WebCore::JSDOMWindowBase::moduleLoaderFetch):
(WebCore::JSDOMWindowBase::moduleLoaderEvaluate):
- bindings/js/JSMainThreadExecState.h:
(WebCore::JSMainThreadExecState::loadModule):
(WebCore::JSMainThreadExecState::linkAndEvaluateModule):
- bindings/js/ScriptController.cpp:
(WebCore::ScriptController::loadModuleScriptInWorld):
(WebCore::ScriptController::loadModuleScript):
(WebCore::ScriptController::linkAndEvaluateModuleScriptInWorld):
(WebCore::ScriptController::linkAndEvaluateModuleScript):
- bindings/js/ScriptController.h:
- bindings/js/ScriptModuleLoader.cpp:
(WebCore::ScriptModuleLoader::fetch):
- bindings/js/ScriptModuleLoader.h:
- dom/LoadableClassicScript.cpp:
(WebCore::LoadableClassicScript::create):
(WebCore::LoadableClassicScript::~LoadableClassicScript):
(WebCore::LoadableClassicScript::isLoaded):
(WebCore::LoadableClassicScript::error):
(WebCore::LoadableClassicScript::wasCanceled):
(WebCore::LoadableClassicScript::notifyFinished):
(WebCore::LoadableClassicScript::load):
- dom/LoadableClassicScript.h:
- dom/LoadableModuleScript.cpp:
(WebCore::LoadableModuleScript::create):
(WebCore::LoadableModuleScript::LoadableModuleScript):
(WebCore::LoadableModuleScript::load):
- dom/LoadableModuleScript.h:
- dom/LoadableScript.cpp:
(WebCore::LoadableScript::requestScriptWithCache):
- dom/LoadableScript.h:
(WebCore::LoadableScript::LoadableScript):
- dom/ScriptElement.cpp:
(WebCore::ScriptElement::requestClassicScript):
(WebCore::ScriptElement::requestModuleScript):
(WebCore::ScriptElement::executeModuleScript):
(WebCore::ScriptElement::requestScriptWithCacheForModuleScript): Deleted.
(WebCore::ScriptElement::requestScriptWithCache): Deleted.
- dom/ScriptElement.h:
- 3:27 AM Changeset in webkit [210584] by
-
- 7 edits in trunk/Source/WebCore
[GStreamer] Use smart pointers and modernize code in WebKitWebAudioSourceGStreamer
https://bugs.webkit.org/show_bug.cgi?id=166886
Reviewed by Xabier Rodriguez-Calvar.
This patch doesn't change the behavior, so it's covered by existing Web Audio tests. It replaces pointers with
smart pointers, uses WTF::Vector instead of GSList and simplifies the code to map/unmap GstBuffers.
- platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:
(webKitWebAudioSrcConstructed):
(webKitWebAudioSrcFinalize):
(webKitWebAudioSrcLoop):
(webKitWebAudioSrcChangeState):
- platform/graphics/gstreamer/GRefPtrGStreamer.cpp:
(WTF::derefGPtr<GstBufferList>):
(WTF::adoptGRef):
(WTF::refGPtr<GstBufferPool>):
(WTF::derefGPtr<GstBufferPool>):
- platform/graphics/gstreamer/GRefPtrGStreamer.h:
- platform/graphics/gstreamer/GStreamerUtilities.cpp:
(WebCore::mapGstBuffer):
- platform/graphics/gstreamer/GStreamerUtilities.h:
- platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
(StreamingClient::createReadBuffer):
- 2:08 AM WebKitGTK edited by
- Link to WebKitGTK/Debugging (diff)
- 1:08 AM Changeset in webkit [210583] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, rolling out r182947.
https://bugs.webkit.org/show_bug.cgi?id=166922
Caused huge memory leak see https://webkit.org/b/166884
(Requested by KaL on #webkit).
Reverted changeset:
"[GStreamer] Silent WebAudio buffers support"
https://bugs.webkit.org/show_bug.cgi?id=143869
http://trac.webkit.org/changeset/182947
- 12:55 AM Changeset in webkit [210582] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, rolling out r210579.
That was not the right fix
Reverted changeset:
"Unreviewed GTK buildfix after r210571."
http://trac.webkit.org/changeset/210579
- 12:53 AM Changeset in webkit [210581] by
-
- 2 edits in trunk/LayoutTests
[EFL] Update TestExpectation file for Ubuntu 16.04.
Unreviewed EFL gardening.
After bumping Ubuntu version to 16.04, there are many tests are failed.
This gardening is to update all failure tests on Ubuntu 16.04.
- platform/efl/TestExpectations:
- 12:52 AM Changeset in webkit [210580] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed. Fix GTK+ build after r210571.
Add getFileDeviceId implementation to FileSystemGlib.cpp.
- platform/glib/FileSystemGlib.cpp:
(WebCore::getFileDeviceId):
- 12:47 AM Changeset in webkit [210579] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed GTK buildfix after r210571.
- PlatformGTK.cmake: