Timeline


and

02/06/16: Yesterday

22:34 Changeset [196237] by cdumez@apple.com
  • 9 edits in trunk/LayoutTests

Unreviewed, update several layout tests for WK1 after r196227.

  • http/tests/security/cross-frame-access-enumeration-expected.txt:
  • http/tests/security/cross-frame-access-enumeration.html:
  • http/tests/security/cross-frame-access-get-expected.txt:
  • http/tests/security/cross-frame-access-get.html:
  • http/tests/security/cross-frame-access-history-get-expected.txt:
  • http/tests/security/cross-frame-access-history-get-override-expected.txt:
  • http/tests/security/cross-frame-access-history-get-override.html:
  • http/tests/security/cross-frame-access-history-get.html:
21:55 Changeset [196236] by nvasilyev@apple.com
  • 2 edits in trunk/Source/WebInspectorUI

REGRESSION (r195432): Web Inspector: bottom right section of the styles sidebar is 1px taller than the console prompt
https://bugs.webkit.org/show_bug.cgi?id=153959
<rdar://problem/24541053>

Reviewed by Timothy Hatcher.

  • UserInterface/Views/CSSStyleDetailsSidebarPanel.css:

(.sidebar > .panel.details.css-style > .content ~ .options-container):
(.sidebar > .panel.details.css-style > .content ~ .class-list-container)::
Revert the height to what it used to be prior r195432.

18:21 WebKitGTK/Gardening/Calendar edited by mcatanzaro@igalia.com
(diff)
18:17 Changeset [196235] by mcatanzaro@igalia.com
  • 5 edits in trunk/LayoutTests

[GTK] Rebaseline some tests and update expectations after r196222

Unreviewed test gardening.

  • platform/gtk/TestExpectations:
  • platform/gtk/fast/clip/outline-overflowClip-expected.txt:
  • platform/gtk/fast/repaint/layer-outline-expected.txt:
  • platform/gtk/fast/repaint/layer-outline-horizontal-expected.txt:
18:03 Changeset [196234] by dbates@webkit.org
  • 2 edits in trunk/Source/WebKit2

Call CFRelease() on SecRequirementRef when no longer needed
https://bugs.webkit.org/show_bug.cgi?id=153954
<rdar://problem/24540259>

Reviewed by Dan Bernstein.

  • Shared/mac/ChildProcessMac.mm:

(WebKit::ChildProcess::initializeSandbox):

17:52 Changeset [196233] by mcatanzaro@igalia.com
  • 2 edits in trunk/LayoutTests

[GTK] imported/blink/compositing/squashing/abspos-under-abspos-overflow-scroll.html is flaky

Unreviewed test gardening.

  • platform/gtk/TestExpectations:
17:51 Changeset [196232] by fpizlo@apple.com
  • 2 edits
    1 add in trunk/Source/JavaScriptCore

FTL must store the call site index before runtime calls, even if it's the tail call slow path
https://bugs.webkit.org/show_bug.cgi?id=153955
rdar://problem/24290970

Reviewed by Saam Barati.

This is necessary because you could throw an exception in a host call on the tail call's slow
path. That'll route us to lookupExceptionHandler(), which unwinds starting with the call site
index of our frame. Bad things happen if it's not set. Prior to this patch it was possible
for the call site index field to be uninitialized, which meant that the throwing machinery
was making a wild guess about where we are.

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::DFG::LowerDFGToLLVM::compileTailCall):

  • tests/stress/tail-call-host-call-throw.js: Added.
16:45 Changeset [196231] by jonlee@apple.com
  • 2 edits in trunk/PerformanceTests

Code clean up: Move Rotater function closer to Stage static methods.
The Rotater is used together with those methods; keep them close.

  • Animometer/tests/resources/main.js:
16:39 Changeset [196230] by jonlee@apple.com
  • 3 edits in trunk/PerformanceTests

Update the JS includes due to ResultsTable move.

  • Animometer/developer.html:
  • Animometer/index.html:
16:34 Changeset [196229] by jonlee@apple.com
  • 7 edits in trunk/PerformanceTests

Move createElement and createSVGElement to Utilities.

  • Animometer/resources/extensions.js:

(Utilities.createElement): Added.
(Utilities.createSVGElement): Added.
(DocumentExtension.createElement): Deleted.
(DocumentExtension.createSvgElement): Deleted.

  • Animometer/resources/debug-runner/animometer.js:
  • Animometer/resources/runner/animometer.js:
  • Animometer/tests/bouncing-particles/resources/bouncing-svg-images.js:
  • Animometer/tests/bouncing-particles/resources/bouncing-svg-particles.js:
  • Animometer/tests/bouncing-particles/resources/bouncing-svg-shapes.js:
16:27 Changeset [196228] by jonlee@apple.com
  • 10 edits in trunk/PerformanceTests

Add a convenience function for creating a class.

The pattern for creating a class is common enough to add as a Utilities
helper function. It also makes it easy to collapse class definitions when
editing.

  • Animometer/resources/debug-runner/animometer.js: Move ProgressBar definition,

since it is only used here.

  • Animometer/resources/runner/animometer.js: Move ResultsDashboard and

ResultsTable definition, since it is only used here.

  • Animometer/resources/extensions.js: Move Utilities definition to the top. Convert

Point, Insets, SimplePromise.
(ProgressBar): Moved to animometer.js.
(ResultsDashboard): Moved to animometer.js.
(ResultsTable): Moved to animometer.js.

  • Animometer/resources/runner/benchmark-runner.js: Convert BenchmarkRunnerState,

BenchmarkRunner.

  • Animometer/tests/resources/main.js: Convert Rotater, Stage, Animator, Benchmark.
  • Animometer/tests/resources/sampler.js: Convert Experiment, Sampler.

Convert test primitives.

  • Animometer/tests/master/resources/canvas-tests.js: Convert CanvasLineSegment,

CanvasArc, CanvasLinePoint.

  • Animometer/tests/simple/resources/simple-canvas-paths.js: Convert CanvasLineSegment,

CanvasLinePoint, CanvasQuadraticSegment, CanvasQuadraticPoint, CanvasBezierSegment,
CanvasBezierPoint, CanvasArcToSegment, CanvasArcToSegmentFill, CanvasArcSegment,
CanvasArcSegmentFill, CanvasRect, CanvasRectFill.

  • Animometer/tests/simple/resources/tiled-canvas-image.js: Convert CanvasImageTile.
16:18 Changeset [196227] by cdumez@apple.com
  • 18 edits
    2 deletes in trunk

Prevent cross-origin access to window.history
https://bugs.webkit.org/show_bug.cgi?id=153931

Reviewed by Darin Adler.

Source/WebCore:

Prevent cross-origin access to window.history to match the specification [1]
and the behavior of other browsers (tested Firefox and Chrome).

[1] https://html.spec.whatwg.org/multipage/browsers.html#security-window

No new tests, already covered by existing tests that
were updated in this patch.

  • bindings/js/JSHistoryCustom.cpp:

(WebCore::JSHistory::pushState):
(WebCore::JSHistory::replaceState):
(WebCore::JSHistory::state): Deleted.

  • page/DOMWindow.idl:
  • page/History.idl:

LayoutTests:

Update / rebaseline several layout tests now that cross-origin access to
window.history is prevented.

  • fast/frames/sandboxed-iframe-history-denied-expected.txt:
  • http/tests/history/cross-origin-replace-history-object-child-expected.txt:
  • http/tests/security/cross-frame-access-call-expected.txt:
  • http/tests/security/cross-frame-access-call.html:
  • http/tests/security/cross-frame-access-delete-expected.txt:
  • http/tests/security/cross-frame-access-delete.html:
  • http/tests/security/cross-frame-access-history-prototype-expected.txt:
  • http/tests/security/cross-frame-access-history-put.html: Removed.
  • http/tests/security/cross-frame-access-object-getPrototypeOf-expected.txt:
  • http/tests/security/cross-frame-access-object-getPrototypeOf.html:
  • http/tests/security/cross-frame-access-object-setPrototypeOf-expected.txt:
  • http/tests/security/cross-frame-access-object-setPrototypeOf.html:
  • http/tests/security/resources/cross-frame-iframe-for-history-put-test.html: Removed.
15:41 Changeset [196226] by bdakin@apple.com
  • 3 edits in trunk/Source/WebCore

ScrollbarPainters needs to be deallocated on the main thread
https://bugs.webkit.org/show_bug.cgi?id=153932
-and corresponding-
rdar://problem/24015483

Reviewed by Dan Bernstein.

Darin pointed out that this was still race-y. There was still a race
condition between the destruction of the two local variables and the
destruction of the lambda on the main thread. This should fix that.

  • page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.h:
  • page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm:

(WebCore::ScrollingTreeFrameScrollingNodeMac::~ScrollingTreeFrameScrollingNodeMac):
(WebCore::ScrollingTreeFrameScrollingNodeMac::releaseReferencesToScrollbarPaintersOnTheMainThread):
(WebCore::ScrollingTreeFrameScrollingNodeMac::updateBeforeChildren):

15:36 Changeset [196225] by jonlee@apple.com
  • 5 edits in trunk/PerformanceTests

Minor improvements to debug harness.

  • Animometer/developer.html:
  • Animometer/resources/debug-runner/animometer.css:

(#suites): Put the complexity text boxes closer to the test names.
(#options):
(#rawFPS circle): Make the interval FPS appear as a separate data series, with a line.
(#intervalFPS path):
(#intervalFPS circle):

  • Animometer/resources/debug-runner/animometer.js:

(window.optionsManager.updateLocalStorageFromUI): Convert number inputs from text.
(window.suitesManager._onChangeTestCheckbox): Refactor to take a checkbox.
(window.suitesManager._createTestElement): Enhance such that typing into the complexity
input will automatically select that test for running.
(window.suitesManager.updateLocalStorageFromJSON): Make the harness work for private
browsing.

  • Animometer/resources/debug-runner/graph.js: Separate the intervalFPS data, and show

more accuracy in timestamps.

15:31 Changeset [196224] by jonlee@apple.com
  • 12 edits in trunk/PerformanceTests

Refactor helper methods for getting random values for a stage.

Instead of requiring a Stage instance, just attach it to the Stage object.

  • Animometer/tests/bouncing-particles/resources/bouncing-canvas-shapes.js:
  • Animometer/tests/bouncing-particles/resources/bouncing-css-shapes.js:
  • Animometer/tests/bouncing-particles/resources/bouncing-particles.js:
  • Animometer/tests/bouncing-particles/resources/bouncing-svg-shapes.js:
  • Animometer/tests/master/resources/canvas-tests.js:
  • Animometer/tests/master/resources/particles.js:
  • Animometer/tests/misc/resources/canvas-electrons.js:
  • Animometer/tests/misc/resources/canvas-stars.js:
  • Animometer/tests/misc/resources/compositing-transforms.js:
  • Animometer/tests/resources/main.js:
  • Animometer/tests/simple/resources/simple-canvas-paths.js:
15:18 Changeset [196223] by darin@apple.com
  • 57 edits in trunk/Source

Finish auditing call sites of upper() and lower(), eliminate many, and rename the functions
https://bugs.webkit.org/show_bug.cgi?id=153905

Reviewed by Sam Weinig.

Source/JavaScriptCore:

  • runtime/IntlObject.cpp:

(JSC::canonicalLangTag): Use converToASCIIUppercase on the language tag.

  • runtime/StringPrototype.cpp:

(JSC::stringProtoFuncToLowerCase): Tweak style and update for name change.
(JSC::stringProtoFuncToUpperCase): Ditto.

Source/WebCore:

  • Modules/mediasource/MediaSource.cpp:

(WebCore::MediaSource::isTypeSupported): Use convertToASCIILowercase on MIME type.

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::selectText): Use new names for lower and upper. Also
tweaked style a tiny bit and used u_toupper rather than converting an entire
string to uppercase.

  • dom/Document.cpp:

(WebCore::Document::addImageElementByCaseFoldedUsemap): Renamed to reflect the use
of case folding rather than lowercasing.
(WebCore::Document::removeImageElementByCaseFoldedUsemap): Ditto.
(WebCore::Document::imageElementByCaseFoldedUsemap): Ditto.

  • dom/Document.h: Ditto.
  • dom/DocumentOrderedMap.cpp:

(WebCore::DocumentOrderedMap::getElementByCaseFoldedMapName): Ditto.
(WebCore::DocumentOrderedMap::getElementByCaseFoldedUsemap): Ditto.

  • dom/DocumentOrderedMap.h: Ditto.
  • dom/TreeScope.cpp:

(WebCore::TreeScope::getImageMap): Removed unneeded special case for null string.
Simplified logic for cases where the URL does not have a "#" character in it.
Use case folding instead of lowercase.

  • editing/cocoa/HTMLConverter.mm:

(HTMLConverter::_processText): Removed unneded special case for the empty string.
Use makCapitalized instead of Cocoa function for "capitalize". Use upper and lower
functions by their new names.

  • html/HTMLImageElement.cpp:

(WebCore::HTMLImageElement::parseAttribute): Use case folding instead of
lowerasing for the usemap attribute.
(WebCore::HTMLImageElement::insertedInto): Ditto.
(WebCore::HTMLImageElement::removedFrom): Ditto.
(WebCore::HTMLImageElement::matchesCaseFoldedUsemap): Ditto.

  • html/HTMLImageElement.h: Rename since usemap is case folded now, not lowercased.
  • html/HTMLMapElement.cpp:

(WebCore::HTMLMapElement::imageElement): Use case folding instead of lowercasing
for usemap.
(WebCore::HTMLMapElement::parseAttribute): Ditto.

  • platform/Language.cpp:

(WebCore::canonicalLanguageIdentifier): Use convertToASCIILowercase for language code.
(WebCore::indexOfBestMatchingLanguageInList): Ditto.

  • platform/graphics/harfbuzz/HarfBuzzShaper.cpp:

(WebCore::HarfBuzzShaper::shapeHarfBuzzRuns): Use new name for the upper function.

  • platform/network/HTTPParsers.cpp:

(WebCore::parseContentTypeOptionsHeader): Use equalLettersIgnoringASCIICase instead
of lowercasing to check for a specific header value.

  • platform/network/MIMEHeader.cpp:

(WebCore::retrieveKeyValuePairs): Use convertToASCIILowercase for MIME header name.
(WebCore::MIMEHeader::parseContentTransferEncoding): Use equalLettersIgnoringASCIICase
instead of lowercasing.

  • platform/network/cf/ResourceHandleCFNet.cpp:

(WebCore::allowsAnyHTTPSCertificateHosts): Make this hash ASCII case-insensitive.
(WebCore::clientCertificates): Ditto.
(WebCore::ResourceHandle::createCFURLConnection): Remove call to lower since the
set is now ASCII case-insensitive.
(WebCore::ResourceHandle::setHostAllowsAnyHTTPSCertificate): Ditto.
(WebCore::ResourceHandle::setClientCertificate): Ditto.

  • platform/network/curl/CookieJarCurl.cpp:

(WebCore::getNetscapeCookieFormat): Use equalLettersIgnoringASCIICase instead of
lowercasing.

  • platform/network/curl/MultipartHandle.cpp:

(WebCore::MultipartHandle::didReceiveResponse): Use convertToASCIILowercase to
make a MIME type lowercase.

  • platform/network/curl/ResourceHandleCurl.cpp:

(WebCore::ResourceHandle::setHostAllowsAnyHTTPSCertificate): Removed unneeded
conversion to lowercase now that the set is ASCII case-insensitive.
(WebCore::ResourceHandle::setClientCertificate): Removed code that populates a map
that is then never used for anything.

  • platform/network/curl/ResourceHandleManager.cpp:

(WebCore::headerCallback): Use convertToASCIILowercase for MIME type.

  • platform/network/curl/SSLHandle.cpp: Made hash maps keyed by host names

ASCII case-insensitive.
(WebCore::addAllowedClientCertificate): Removed lowercasing since the map itself
is now ASCII case insensitve.
(WebCore::setSSLClientCertificate): Ditto. Also use auto for iterator type so we
don't have to write out the map type.
(WebCore::sslIgnoreHTTPSCertificate): Ditto.
(WebCore::certVerifyCallback): Ditto.

  • platform/network/soup/ResourceHandleSoup.cpp: Made hash maps keyed by host names

ASCII case-insensitive.
(WebCore::allowsAnyHTTPSCertificateHosts): Ditto.
(WebCore::handleUnignoredTLSErrors): Ditto.
(WebCore::ResourceHandle::setHostAllowsAnyHTTPSCertificate): Ditto.
(WebCore::ResourceHandle::setClientCertificate): Ditto.

  • platform/text/LocaleToScriptMappingDefault.cpp: Made hash maps keyed by script

names ASCII case-insensitive. USE WTF_ARRAY_LENGTH as appropriate.
(WebCore::scriptNameToCode): Use modern style to initialize the map. Removed
unnecessary lowercasing of the script name before looking at the map.
(WebCore::localeToScriptCodeForFontSelection): Ditto.

  • platform/text/win/LocaleWin.cpp:

(WebCore::convertLocaleNameToLCID): Made map ASCII case-insensitive and removed
unneeded lowercasing.

  • platform/win/PasteboardWin.cpp:

(WebCore::clipboardTypeFromMIMEType): Use equalLettersIgnoringASCIICase instead
of lowercasing.

  • rendering/RenderText.cpp:

(WebCore::applyTextTransform): Use new names for the upper and lower functions.

  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::responseIsXML): Remove unneeded lowercasing, since
DOMImplementation now has ASCII case-insensitive handling of MIME types.

Source/WebKit/mac:

  • Plugins/WebBasePluginPackage.mm:

(-[WebBasePluginPackage getPluginInfoFromPLists]): Use modern for loops.
(-[WebBasePluginPackage supportsExtension:]): Use convertToASCIILowercase for extension assert.
Also use modern for loop.
(-[WebBasePluginPackage supportsMIMEType:]): Ditto.
(-[WebBasePluginPackage MIMETypeForExtension:]): Ditto.

Source/WebKit/win:

  • Plugins/PluginDatabase.cpp:

(WebCore::PluginDatabase::pluginForMIMEType): Use ASCII case-insensitive map rather
than lowercasing the MIME type.
(WebCore::PluginDatabase::setPreferredPluginForMIMEType): Ditto.

  • Plugins/PluginDatabase.h: Make m_preferredPlugins use an ASCII case-insensitive hash.
  • Plugins/PluginPackage.h: Use ASCII case-insensitive hash for maps keyed by MIME type.
  • Plugins/PluginPackageWin.cpp:

(WebCore::PluginPackage::fetchInfo): Use convertToASCIILowercase to lowercase a MIME type.

Source/WebKit2:

  • NetworkProcess/CustomProtocols/CustomProtocolManager.h: Use ASCII case-insensitive hash

for set of registered schemes.

  • Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm:

(WebKit::getPluginInfoFromPropertyLists): Use convertToASCIILowercase for MIME type and
for file extensions.

  • Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:

(WebKit::NetscapePluginModule::parseMIMEDescription): Use convertToASCIILowercase for
MIME description.

  • UIProcess/API/efl/ewk_context.cpp:

(ewk_context_preferred_languages_set): Use convertToASCIILowercase for language.

  • UIProcess/API/gtk/WebKitWebContext.cpp:

(webkit_web_context_set_preferred_languages): Use convertToASCIILowercase for language.

  • UIProcess/Plugins/PluginInfoStore.cpp:

(WebKit::PluginInfoStore::findPluginForExtension): Use Vector::contains instead of
writing it out using std::find.
(WebKit::pathExtension): Lowercase the result with convertToASCIILowercase instead of
leaving that to the caller.
(WebKit::PluginInfoStore::findPlugin): Removed call to lower since pathExtension
handles that now.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::findPlugin): Use convertToASCIILowercase for MIME type.

  • UIProcess/WebProcessPool.cpp:

(WebKit::WebProcessPool::globalURLSchemesWithCustomProtocolHandlers): Use
an ASCII case-insensitive hash.
(WebKit::WebProcessPool::registerGlobalURLSchemeAsHavingCustomProtocolHandlers):
Remove lowercasing, since the hash is now ASCII case-insensitive.
(WebKit::WebProcessPool::unregisterGlobalURLSchemeAsHavingCustomProtocolHandlers):
Ditto.

  • UIProcess/WebProcessPool.h: Use an ASCII case-insensitive hash.
  • WebProcess/Plugins/Netscape/NetscapePlugin.cpp:

(WebKit::NetscapePlugin::initialize): Use convertToASCIILowercase on parameter names
and values.

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::pluginSupportsExtension): Use convertToASCIILowercase for extension assertion.
Also use a modern for loop.
(WebKit::WebFrameLoaderClient::objectContentType): Make the checks for empty MIME types
a little less redundant. Reordered logic to avoid checking the list of supported MIME
types extra times, and to eliminate the need for a boolean. Use convertToASCIILowercase
on the extension.

Source/WTF:

  • wtf/text/AtomicString.cpp:

(WTF::AtomicString::lower): Deleted.

  • wtf/text/AtomicString.h: Deleted the lower function.
  • wtf/text/StringImpl.cpp:

(WTF::StringImpl::convertToLowercaseWithoutLocale): Renamed from lower.
(WTF::StringImpl::convertToUppercaseWithoutLocale): Renamed from upper.
(WTF::StringImpl::convertToLowercaseWithLocale): Renamed from lower.
(WTF::StringImpl::convertToUppercaseWithLocale): Renamed from upper.
(WTF::StringImpl::foldCase): Added fast cases for ASCII since this is
now used in some more-performance-critical code.

  • wtf/text/StringImpl.h: Renamed lower and upper.
  • wtf/text/WTFString.cpp:

(WTF::String::convertToLowercaseWithoutLocale): Renamed from lower.
(WTF::String::convertToUppercaseWithoutLocale): Renamed from upper.
(WTF::String::convertToLowercaseWithLocale): Renamed from lower.
(WTF::String::convertToUppercaseWithLocale): Renamed from upper.

  • wtf/text/WTFString.h: Renamed lower and upper. Removed unneeded comment.
15:07 Changeset [196222] by zalan@apple.com
  • 46 edits
    4 adds in trunk

Outline should contribute to visual overflow.
https://bugs.webkit.org/show_bug.cgi?id=153299

This patch eliminates the special outline handling (RenderView::setMaximalOutlineSize).
Now that outline is part of visual overflow, we don't have to inflate the layers to accomodate
outline borders.
This patch fixes several focusring related repaint issues. However when both the outline: auto
and the descendant renderer are composited, we still don't paint properly in certain cases. -not a regression.
(Also when parent renderer has overflow: hidden repaint does not take outline into account. -regression.)
It changes column behavior (see TestExpectations) since outline behaves now like any other visual overflow properties.

Reviewed by David Hyatt.

Source/WebCore:

Test: fast/repaint/focus-ring-repaint.html

fast/repaint/focus-ring-repaint-with-negative-offset.html

  • css/html.css: resetting to old behavior.

(:focus):
(input:focus, textarea:focus, isindex:focus, keygen:focus, select:focus):

  • rendering/InlineFlowBox.cpp:

(WebCore::InlineFlowBox::addToLine):
(WebCore::InlineFlowBox::addOutlineVisualOverflow):
(WebCore::InlineFlowBox::computeOverflow):
(WebCore::InlineFlowBox::paint): Deleted.

  • rendering/InlineFlowBox.h:
  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::computeOverflow):
(WebCore::RenderBlock::outlineStyleForRepaint):
(WebCore::RenderBlock::paint): Deleted.

  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::layoutBlock): Deleted.
(WebCore::RenderBlockFlow::addFocusRingRectsForInlineChildren): Deleted.

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlockFlow::addOverflowFromInlineChildren):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::addVisualEffectOverflow):
(WebCore::RenderBox::applyVisualEffectOverflow):
(WebCore::RenderBox::clippedOverflowRectForRepaint): Deleted.

  • rendering/RenderBoxModelObject.h:
  • rendering/RenderDetailsMarker.cpp:

(WebCore::RenderDetailsMarker::paint): Deleted.

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::insertChildInternal):
(WebCore::RenderElement::styleDidChange):
(WebCore::RenderElement::repaintAfterLayoutIfNeeded):
(WebCore::RenderElement::issueRepaintForOutlineAuto):
(WebCore::RenderElement::updateOutlineAutoAncestor):
(WebCore::RenderElement::computeMaxOutlineSize): Deleted.
(WebCore::RenderElement::styleWillChange): Deleted.

  • rendering/RenderElement.h:

(WebCore::RenderElement::hasContinuation):

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::paintOutlineForLine): Deleted.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::calculateClipRects):

  • rendering/RenderLineBoxList.cpp:

(WebCore::RenderLineBoxList::anyLineIntersectsRect):
(WebCore::RenderLineBoxList::lineIntersectsDirtyRect):
(WebCore::RenderLineBoxList::paint):
(WebCore::isOutlinePhase): Deleted.

  • rendering/RenderLineBoxList.h:
  • rendering/RenderListBox.cpp:

(WebCore::RenderListBox::computePreferredLogicalWidths):

  • rendering/RenderListMarker.cpp:

(WebCore::RenderListMarker::paint): Deleted.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::propagateRepaintToParentWithOutlineAutoIfNeeded): The renderer with outline: auto is responsible for
painting focusring around the descendants. If we issued repaint only on the descendant when it changes,
the focusring would not refresh properly. We have to find the ancestor with outline: auto, inflate the repaint rect and
issue the repaint on the ancestor if we crossed repaint container.

(WebCore::RenderObject::repaintUsingContainer):
(WebCore::RenderObject::adjustRectForOutlineAndShadow):
(WebCore::RenderObject::setHasOutlineAutoAncestor):
(WebCore::RenderObject::adjustRectWithMaximumOutline): Deleted.

  • rendering/RenderObject.h: We mark the descendants of outline: auto so that

when a child renderer changes we can propagate the repaint to the ancestor with outline.

(WebCore::RenderObject::hasOutlineAutoAncestor):
(WebCore::RenderObject::RenderObjectRareData::RenderObjectRareData):

  • rendering/RenderRegion.cpp:

(WebCore::RenderRegion::overflowRectForFlowThreadPortion):

  • rendering/RenderReplaced.cpp:

(WebCore::RenderReplaced::shouldPaint): Deleted.
(WebCore::RenderReplaced::clippedOverflowRectForRepaint): Deleted.

  • rendering/RenderTable.cpp:

(WebCore::RenderTable::paint): Deleted.

  • rendering/RenderTableCell.cpp:

(WebCore::RenderTableCell::clippedOverflowRectForRepaint): Deleted.
(WebCore::RenderTableCell::paintCollapsedBorders): Deleted.

  • rendering/RenderTableRow.cpp:

(WebCore::RenderTableRow::layout):
(WebCore::RenderTableRow::clippedOverflowRectForRepaint): Deleted.

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::layoutRows):
(WebCore::RenderTableSection::computeOverflowFromCells): Deleted.
(WebCore::RenderTableSection::paintObject): Deleted.

  • rendering/RenderTheme.h:

(WebCore::RenderTheme::platformFocusRingWidth):

  • rendering/RenderView.cpp:

(WebCore::RenderView::setMaximalOutlineSize): Deleted.

  • rendering/RenderView.h:
  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::changeAffectsVisualOverflow):
(WebCore::RenderStyle::outlineWidth):

  • rendering/style/RenderStyle.h:

LayoutTests:

  • fast/repaint/focus-ring-repaint-expected.txt: Added.
  • fast/repaint/focus-ring-repaint.html: Added.
  • fast/repaint/focus-ring-repaint-expected-with-negative-offset.txt: Added.
  • fast/repaint/focus-ring-repaint-with-negative-offset.html: Added.
  • TestExpectations:
  • platform/mac/TestExpectations:
  • platform/mac/compositing/geometry/ancestor-overflow-change-expected.txt:
  • platform/mac/compositing/geometry/composited-in-columns-expected.txt:
  • platform/mac/compositing/layer-creation/overlap-animation-container-expected.txt:
  • platform/mac/compositing/layer-creation/stacking-context-overlap-nested-expected.txt:
  • platform/mac/compositing/visibility/visibility-image-layers-dynamic-expected.txt:
  • platform/mac/fast/clip/outline-overflowClip-expected.txt:
  • platform/mac/fast/inline/continuation-outlines-with-layers-expected.txt:
  • platform/mac/fast/repaint/4776765-expected.txt: Added.
  • platform/mac/fast/repaint/focus-ring-expected.txt: Added.
  • platform/mac/fast/repaint/layer-outline-expected.txt:
  • platform/mac/fast/repaint/layer-outline-horizontal-expected.txt:
  • platform/mac/svg/custom/focus-ring-expected.txt:
10:14 Changeset [196221] by mcatanzaro@igalia.com
  • 2 edits in trunk/LayoutTests

[GTK] Various tests are flaky

More unreviewed test gardening.

  • platform/gtk/TestExpectations:
10:13 WebKitGTK/Gardening/Calendar edited by mcatanzaro@igalia.com
(diff)
10:12 Changeset [196220] by cdumez@apple.com
  • 7 edits
    2 adds in trunk

Object.getOwnPropertyDescriptor() does not work on sub-frame's window
https://bugs.webkit.org/show_bug.cgi?id=153925

Reviewed by Darin Adler.

Source/JavaScriptCore:

Calling Object.getOwnPropertyDescriptor() on a sub-frame's window was
returning undefined for that window's own properties. The reason was
that the check getOwnPropertySlot() is using to make sure the
PropertySlot is not for a property coming from the prototype was wrong.

The check was checking that 'this != slotBase' which works fine unless
this is a JSProxy (e.g. JSDOMWindowShell). To handle proxies, the code
was also checking that 'slotBase.toThis() != this', attempting to
get the slotBase/Window's proxy. However, due to the implementation of
toThis(), we were getting the lexical global object's proxy instead of
slotBase's proxy. To avoid this issue, the new code explicitly checks
if 'this' is a JSProxy and makes sure 'JSProxy::target() != slotBase',
instead of using toThis().

  • runtime/JSObject.cpp:

(JSC::JSObject::getOwnPropertyDescriptor):

LayoutTests:

  • fast/dom/Window/getOwnPropertyDescriptor-other-window-expected.txt: Added.
  • fast/dom/Window/getOwnPropertyDescriptor-other-window.html: Added.

Add test case to test calling Object.getOwnPropertyDescriptor() on a
sub-frame's window.

  • http/tests/security/cross-origin-window-property-access-expected.txt:
  • http/tests/security/cross-origin-window-property-access.html:
  • Update test use use an iframe instead of opening a Window for convenience.
  • Use an actual cross-origin URL. The previous URL was same-origin and therefore the test would have failed if window.location was a proper getter/setter instead of a 'value' descriptor.
  • Add more tests to cover other Window properties (such as 'name') which are actual getter / setters to make sure using the current window's getter on a cross origin window does not bypass the security origin checks.
  • http/tests/security/cross-frame-access-getOwnPropertyDescriptor-expected.txt:
  • http/tests/security/cross-frame-access-getOwnPropertyDescriptor.html:
  • Drop checks for properties for which cross-origin access via

getOwnPropertyDescriptor() now works. They used to not work because of the bug
this patch fixes, and not due to security checks.

  • Most of these properties are part of the properties that the specification

states can be accessed cross-origin:

https://html.spec.whatwg.org/multipage/browsers.html#security-window

  • ALL of these properties could already be accessed cross origin via regular

property getters (e.g. crossOriginWindow.blur) in Safari 9 so there should not
be any reason for getOwnPropertyDescriptor() not to work.

  • I have also verified that Firefox allows cross-origin access for all these properties (via regular getters or getOwnPropertyDescriptor), except for the 'history' property. We may want to align our behavior here and prevent cross-origin access to 'window.history' but this is not a regression in this patch. You could already access crossOriginWindow.history in Safari 9.
09:33 WebKitGTK/Gardening/Calendar edited by mcatanzaro@igalia.com
(diff)
09:26 Changeset [196219] by mcatanzaro@igalia.com
  • 2 edits in trunk/LayoutTests

[GTK] Various tests are flaky

Unreviewed test gardening.

  • platform/gtk/TestExpectations:
09:26 WebKitGTK/Gardening/Calendar edited by mcatanzaro@igalia.com
(diff)
09:01 Changeset [196218] by mcatanzaro@igalia.com
  • 2 edits in trunk/LayoutTests

[GTK] Gardening for unexpected passes

Unreviewed test gardening.

  • platform/gtk/TestExpectations:
09:00 Changeset [196217] by akling@apple.com
  • 7 edits in trunk/Source

[iOS] Throw away linked code when navigating to a new page.
<https://webkit.org/b/153851>

Reviewed by Gavin Barraclough.

Source/JavaScriptCore:

Add a VM API for throwing away linked code only.

  • runtime/VM.cpp:

(JSC::VM::deleteAllLinkedCode):

  • runtime/VM.h:

Source/WebCore:

When navigating to a new page, tell JSC to throw out any linked code it has lying around.
Linked code is tied to a specific global object, and as we're creating a new one for the
new page, none of it is useful to us here.

In the event that the user navigates back, the cost of relinking some code will be far
lower than the memory cost of keeping all of it around.

This landed previously but was rolled out due to a Speedometer regression. I've made one
minor but important change here: only throw away code if we're navigating away from an
existing history item. Or in other words, don't throw away code for "force peeks" or any
other navigations that are not traditional top-level main frame navigations.

  • bindings/js/GCController.cpp:

(WebCore::GCController::deleteAllLinkedCode):

  • bindings/js/GCController.h:
  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::commitProvisionalLoad):

07:55 WebKitGTK/Gardening/Calendar edited by mcatanzaro@igalia.com
Move myself to Saturday because Friday gardening sucks (diff)
05:44 Changeset [196216] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Added implementations of AXObjectCache methods for !HAVE(ACCESSIBILITY).
https://bugs.webkit.org/show_bug.cgi?id=153924

Patch by Konstantin Tokarev <annulen@yandex.ru> on 2016-02-06
Reviewed by Andreas Kling.

No new tests needed.

  • accessibility/AXObjectCache.h:

(WebCore::AXObjectCache::ariaModalNode): Added stub implementation.
(WebCore::AXObjectCache::postLiveRegionChangeNotification): Ditto.
(WebCore::AXObjectCache::rangeForNodeContents): Ditto.
(WebCore::AXObjectCache::setIsSynchronizingSelection): Ditto.
(WebCore::AXObjectCache::setTextSelectionIntent): Ditto.
(WebCore::AXAttributeCacheEnabler::AXAttributeCacheEnabler): Ditto.
(WebCore::AXAttributeCacheEnabler::~AXAttributeCacheEnabler): Ditto.

04:51 Changeset [196215] by antti@apple.com
  • 3 edits in trunk/Source/WebCore

Use scope stack instead of nested TreeResolvers for shadow trees
https://bugs.webkit.org/show_bug.cgi?id=153893

Reviewed by Andreas Kling.

Make TreeResolver per-document. This is a step towards iterative style resolve.

This is done replacing use of nested TreeResolvers with a scope stack that maintains
the style resolver and the selector filter for the current tree scope.

  • style/StyleTreeResolver.cpp:

(WebCore::Style::ensurePlaceholderStyle):
(WebCore::Style::TreeResolver::Scope::Scope):
(WebCore::Style::TreeResolver::TreeResolver):
(WebCore::Style::shouldCreateRenderer):
(WebCore::Style::TreeResolver::styleForElement):
(WebCore::Style::TreeResolver::createRenderTreeForShadowRoot):
(WebCore::Style::TreeResolver::createRenderTreeForSlotAssignees):
(WebCore::Style::TreeResolver::createRenderTreeRecursively):
(WebCore::Style::TreeResolver::resolveLocally):
(WebCore::Style::TreeResolver::resolveShadowTree):
(WebCore::Style::TreeResolver::resolveBeforeOrAfterPseudoElement):
(WebCore::Style::TreeResolver::resolveChildren):
(WebCore::Style::TreeResolver::resolveSlotAssignees):
(WebCore::Style::TreeResolver::resolveRecursively):
(WebCore::Style::TreeResolver::resolve):
(WebCore::Style::detachRenderTree):

  • style/StyleTreeResolver.h:

(WebCore::Style::TreeResolver::scope):
(WebCore::Style::TreeResolver::pushScope):
(WebCore::Style::TreeResolver::pushEnclosingScope):
(WebCore::Style::TreeResolver::popScope):

03:29 Changeset [196214] by carlosgc@webkit.org
  • 2 edits in trunk/Source/WebKit2

Unreviewed. Fix more incorrect ASSERT introduced in r196053.

  • WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:

(WebKit::NetscapePluginX11::handleMouseEvent):
(WebKit::NetscapePluginX11::handleWheelEvent):
(WebKit::NetscapePluginX11::setFocus):
(WebKit::NetscapePluginX11::handleMouseEnterEvent):
(WebKit::NetscapePluginX11::handleMouseLeaveEvent):
(WebKit::NetscapePluginX11::handleKeyboardEvent):

02:12 Changeset [196213] by commit-queue@webkit.org
  • 7 edits in trunk/Source

Unreviewed, rolling out r196104.
https://bugs.webkit.org/show_bug.cgi?id=153940

Regressed Speedometer on iOS (Requested by kling on #webkit).

Reverted changeset:

"[iOS] Throw away linked code when navigating to a new page."
https://bugs.webkit.org/show_bug.cgi?id=153851
http://trac.webkit.org/changeset/196104

02/05/16:

23:00 Changeset [196212] by aakash_jain@apple.com
  • 2 edits in trunk/Tools

tests fail if display sleeps while run-webkit-tests is running
https://bugs.webkit.org/show_bug.cgi?id=153919

Reviewed by Alexey Proskuryakov.

  • DumpRenderTree/mac/LayoutTestHelper.m:

(addDisplaySleepAssertion): Add the assertion so that the display doesn't turn off.
(releaseDisplaySleepAssertion): Release the DisplaySleep Assertion.
(simpleSignalHandler): Release the DisplaySleepAssertion in case of any iterrupt.

22:21 Changeset [196211] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk/PerformanceTests

Add a new graphics test for CanvasRenderingContext2D functions: getImageData and putImageData
https://bugs.webkit.org/show_bug.cgi?id=151716

Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2016-02-05
Reviewed by Darin Adler.

The purpose of this test is to measure the performance of getImageData
and putImageData functions. This test draws a background on the canvas
and then gets some random tiles from this background and draw them in
destinations different from their original sources.

  • Animometer/resources/debug-runner/tests.js: Adding the new test to the canvas simple tests suite.
  • Animometer/resources/extensions.js:

(Array.prototype.shuffle): Shuffles the elements of an array.

(Point.zero): Returns a new Point object whose x and y are equal zero.
(Point.prototype.str): Used for debugging the Point object.

  • Animometer/tests/simple/resources/tiled-canvas-image.js: Added.

(CanvasImageTile):
(CanvasImageTile.prototype.getImageData):
(CanvasImageTile.prototype.putImageData):
(Stage.call.initialize):
(Stage.call._createTiles):
(Stage.call._nextTilePosition):
(Stage.call.tune):
(Stage.call._drawBackground):
(Stage.call.animate):
(Stage.call.complexity):
(Stage.call):

  • Animometer/tests/simple/tiled-canvas-image.html: Added.
20:53 Changeset [196210] by mcatanzaro@igalia.com
  • 2 edits in trunk/LayoutTests

[GTK] Unreviewed test expectations gardening.

  • platform/gtk/TestExpectations:
20:51 WebKitGTK/Gardening/Calendar edited by mcatanzaro@igalia.com
(diff)
17:56 Changeset [196209] by matthew_hanson@apple.com
  • 1 edit in branches/safari-601-branch/LayoutTests/platform/mac/TestExpectations

Skip ES6-related Layout Tests. rdar://problem/24190123

17:24 Changeset [196208] by bdakin@apple.com
  • 2 edits in trunk/Source/WebCore

ScrollbarPainters needs to be deallocated on the main thread
https://bugs.webkit.org/show_bug.cgi?id=153932
-and corresponding-
rdar://problem/24015483

Reviewed by Geoff Garen.

Follow-up fix since the first one was still race-y.

  • page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm:

(WebCore::ScrollingTreeFrameScrollingNodeMac::~ScrollingTreeFrameScrollingNodeMac):
(WebCore::ScrollingTreeFrameScrollingNodeMac::updateBeforeChildren):

17:15 Changeset [196207] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebInspectorUI

Web Inspector: Visual Styles sidebar should be more forgiving to long labels
https://bugs.webkit.org/show_bug.cgi?id=153927
<rdar://problem/24343897>

Patch by Devin Rousso <dcrousso+webkit@gmail.com> on 2016-02-05
Reviewed by Timothy Hatcher.

If a label is too long for it's container, it overflows and is visible
above the rest of the elements nearby.

  • UserInterface/Views/VisualStylePropertyEditor.css:

(.visual-style-property-container > .visual-style-property-title):
Adds text overflow to properties that extend beyond the container's width.

  • UserInterface/Views/VisualStylePropertyEditor.js:

(WebInspector.VisualStylePropertyEditor):
Now also adds the label value as a title attribute to the element, just in
case the content overflows.

17:08 Changeset [196206] by bdakin@apple.com
  • 2 edits in trunk/Source/WebCore

ScrollbarPainters needs to be deallocated on the main thread
https://bugs.webkit.org/show_bug.cgi?id=153932
-and corresponding-
rdar://problem/24015483

Reviewed by Tim Horton.

Ensure the the destructor of ScrollingTreeFrameScrollingNodeMac and the
assignments done in this class are not responsible for deallocating the
ScrollbarPainter.

  • page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm:

(WebCore::ScrollingTreeFrameScrollingNodeMac::~ScrollingTreeFrameScrollingNodeMac):
(WebCore::ScrollingTreeFrameScrollingNodeMac::updateBeforeChildren):

17:08 Changeset [196205] by ryanhaddad@apple.com
  • 2 edits in trunk/LayoutTests

Mark css3/filters/multiple-filters-invalidation.html as flaky on ios-simulator
https://bugs.webkit.org/show_bug.cgi?id=153933

Unreviewed test gardening.

  • platform/ios-simulator/TestExpectations:
16:49 Changeset [196204] by ryanhaddad@apple.com
  • 2 edits in trunk/LayoutTests

Marking pageoverlay/overlay-small-frame-paints.html as flaky on ios-simulator
https://bugs.webkit.org/show_bug.cgi?id=153898

Unreviewed test gardening.

  • platform/ios-simulator/TestExpectations:
16:20 Changeset [196203] by bshafiei@apple.com
  • 2 edits in tags/Safari-602.1.18.5/Source/JavaScriptCore

Merged r196197. rdar://problem/24534864

16:20 Changeset [196202] by ryanhaddad@apple.com
  • 2 edits in trunk/LayoutTests

Marking css3-text-decoration/text-underline-position/underline-visual-overflow-with-subpixel-position.html as failing on ios-simulator
https://bugs.webkit.org/show_bug.cgi?id=153315

Unreviewed test gardening.

  • platform/ios-simulator/TestExpectations:
16:19 Changeset [196201] by bshafiei@apple.com
  • 5 edits in tags/Safari-602.1.18.5/Source

Versioning.

16:18 Changeset [196200] by cdumez@apple.com
  • 17 edits
    3 adds in trunk

Instance property getters / setters cannot be called on another instance of the same type
https://bugs.webkit.org/show_bug.cgi?id=153895

Reviewed by Gavin Barraclough.

Source/WebCore:

It should be possible to call instance property getters / setters on
other instances of the same type, as per the WEB IDL specification:

This matches the behavior of Firefox.

The issue without our bindings was that the getters / setters were
using |slotBase| instead of |thisValue| and therefore ended up using
the instance the getter was taken from instead of the actual target
object.

Test:
js/instance-property-getter-other-instance.html
js/instance-property-setter-other-instance.html

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):

  • Have instance getters / setters use thisValue instead of slotBase.
  • In the case of interfaces that have attributes on the instance for compatibility reasons, try the prototype object if |thisValue| does does have the right type, instead of using slotBase like previously. I believe this maintains the original compatibility intention while also behaving correctly when called on another instance.
  • bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
  • bindings/scripts/test/JS/JSTestEventConstructor.cpp:
  • bindings/scripts/test/JS/JSTestException.cpp:
  • bindings/scripts/test/JS/JSTestInterface.cpp:
  • bindings/scripts/test/JS/JSTestJSBuiltinConstructor.cpp:
  • bindings/scripts/test/JS/JSTestNode.cpp:
  • bindings/scripts/test/JS/JSTestNondeterministic.cpp:
  • bindings/scripts/test/JS/JSTestObj.cpp:
  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
  • bindings/scripts/test/JS/JSTestTypedefs.cpp:
  • bindings/scripts/test/JS/JSattribute.cpp:

Rebaseline bindings tests.

LayoutTests:

  • js/dom/script-tests/shadow-navigator-geolocation-in-strict-mode-does-not-throw.js:
  • js/dom/shadow-navigator-geolocation-in-strict-mode-does-not-throw-expected.txt:

Extend this layout test coverage to cover the getter case in addition to the
setter case. This test covers the compatibility mode where we don't throw.
I made sure to maintain this behavior when refactoring the bindings to avoid
breakage.

  • js/instance-property-getter-other-instance-expected.txt:

Rebaseline now that this test passes.

  • js/instance-property-setter-other-instance-expected.txt: Added.
  • js/instance-property-setter-other-instance.html: Added.

Add test to cover the setter case.

16:13 Changeset [196199] by bshafiei@apple.com
  • 1 copy in tags/Safari-602.1.18.5

New tag.

16:13 Changeset [196198] by ryanhaddad@apple.com
  • 2 edits in trunk/LayoutTests

Mark http/tests/security/cross-frame-access-custom.html as flaky on ios-simulator-wk2
https://bugs.webkit.org/show_bug.cgi?id=153050

Unreviewed test gardening.

  • platform/ios-simulator-wk2/TestExpectations:
16:07 Changeset [196197] by achristensen@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix internal Windows build
https://bugs.webkit.org/show_bug.cgi?id=153930
<rdar://problem/24534864>

Reviewed by Mark Lam.

I made a typo in r196144.

16:06 Changeset [196196] by ryanhaddad@apple.com
  • 2 edits in trunk/LayoutTests

Skipping js/basic-set.html on Mac since it is already runs as a part of run-jsc-stress-tests
https://bugs.webkit.org/show_bug.cgi?id=153879

Unreviewed test gardening.

  • platform/mac/TestExpectations:
15:55 Changeset [196195] by rniwa@webkit.org
  • 4 edits
    1 move in trunk/Websites/perf.webkit.org

Testing with remote server cache is unusably slow
https://bugs.webkit.org/show_bug.cgi?id=153928

Reviewed by Chris Dumez.

Don't use the single process mode of httpd as it's way too slow even for testing.
Also we'll hit a null pointer crash (http://svn.apache.org/viewvc?view=revision&revision=1711479)

Since httpd exits immediately when launched in multi-process mode, remote-cache-server.py (renamed from
run-with-remote-server.py) now has "start" and "stop" commands to start/stop the Apache. Also added
"reset" command to reset the cache for convenience.

  • Install.md: Updated the instruction.
  • config.json: Fixed a typo: httpdErro*r*Log.
  • tools/remote-cache-server.py: Copied from Websites/perf.webkit.org/tools/run-with-remote-server.py.

Now takes one of the following commands: "start", "stop", and "reset".
(main):
(start_httpd): Extracted from main.
(stop_httpd): Added.

  • tools/remote-server-relay.conf: Removed redundant (duplicate) LoadModule's.
  • tools/run-with-remote-server.py: Removed.
15:32 Changeset [196194] by ryanhaddad@apple.com
  • 2 edits in trunk/LayoutTests

Marking imported/w3c/web-platform-tests/html/semantics/document-metadata/styling/LinkStyle.html as flaky on ios-simulator
https://bugs.webkit.org/show_bug.cgi?id=153929

Unreviewed test gardening.

  • platform/ios-simulator/TestExpectations:
15:25 Changeset [196193] by sbarati@apple.com
  • 7 edits
    2 adds in trunk

Web Inspector: Include SamplingProfiler's expression-level data for stack frames in the protocol
https://bugs.webkit.org/show_bug.cgi?id=153455
<rdar://problem/24335884>

Reviewed by Joseph Pecoraro.

Source/JavaScriptCore:

We now send the sampling profiler's expression-level
line/column info in the inspector protocol.

  • inspector/agents/InspectorScriptProfilerAgent.cpp:

(Inspector::buildSamples):

  • inspector/protocol/ScriptProfiler.json:
  • runtime/SamplingProfiler.h:

(JSC::SamplingProfiler::StackFrame::hasExpressionInfo):

Source/WebInspectorUI:

JSC has been collecting expression-level data in the sampling
profiler, and with this patch, we now get that information
in the inspector. With this information, we probably have
all the data we need to make real heat maps.

  • UserInterface/Models/CallingContextTree.js:

(WebInspector.CallingContextTree.prototype.updateTreeWithStackTrace):
(WebInspector.CCTNode):
(WebInspector.CCTNode.prototype.findOrMakeChild):
(WebInspector.CCTNode.prototype.addTimestampAndExpressionLocation):
(WebInspector.CCTNode.prototype.addTimestamp): Deleted.

LayoutTests:

  • inspector/sampling-profiler/expression-location-info-expected.txt: Added.
  • inspector/sampling-profiler/expression-location-info.html: Added.
15:16 Changeset [196192] by bshafiei@apple.com
  • 4 edits in tags/Safari-602.1.18.0.2/Source/bmalloc

Merged r196186. rdar://problem/18620635

14:30 Changeset [196191] by beidson@apple.com
  • 7 edits in trunk/Source/WebCore

Modern IDB: UniqueIDBDatabase's m_databaseInfo is unsafely used from multiple threads.
https://bugs.webkit.org/show_bug.cgi?id=153912

Reviewed by Alex Christensen.

No new tests (Anything testable about this patch is already covered by existing tests).

  • Modules/indexeddb/server/IDBBackingStore.h:
  • Modules/indexeddb/server/MemoryIDBBackingStore.cpp:

(WebCore::IDBServer::MemoryIDBBackingStore::infoForObjectStore):

  • Modules/indexeddb/server/MemoryIDBBackingStore.h:

Teach the SQLiteIDBBackingStore to actually keep its m_databaseInfo up to date as it changes,
and to revert it when version change transactions abort:

  • Modules/indexeddb/server/SQLiteIDBBackingStore.cpp:

(WebCore::IDBServer::SQLiteIDBBackingStore::beginTransaction):
(WebCore::IDBServer::SQLiteIDBBackingStore::abortTransaction):
(WebCore::IDBServer::SQLiteIDBBackingStore::commitTransaction):
(WebCore::IDBServer::SQLiteIDBBackingStore::createObjectStore):
(WebCore::IDBServer::SQLiteIDBBackingStore::deleteObjectStore):
(WebCore::IDBServer::SQLiteIDBBackingStore::createIndex):
(WebCore::IDBServer::SQLiteIDBBackingStore::deleteIndex):
(WebCore::IDBServer::SQLiteIDBBackingStore::infoForObjectStore):

  • Modules/indexeddb/server/SQLiteIDBBackingStore.h:
  • Modules/indexeddb/server/UniqueIDBDatabase.cpp:

(WebCore::IDBServer::UniqueIDBDatabase::performPutOrAdd): Use the IDBBackingStore's copy of the

IDBObjectStoreInfo, meant only for the database thread, instead of the UniqueIDBDatabase's copy,
which is meant only for the main thread.

14:28 Changeset [196190] by rniwa@webkit.org
  • 2 edits
    1 add in trunk/Websites/perf.webkit.org

Perf dashboard should have a script to setup database
https://bugs.webkit.org/show_bug.cgi?id=153906

Reviewed by Chris Dumez.

Added tools/setup-database.py to setup the database. It retrieves the database name, username, password
and initializes a database at the specified location.

  • Install.md: Updated instruction to setup postgres to use setup-database.py.
  • tools/setup-database.py: Added.

(main):
(load_database_config):
(determine_psql_dir):
(start_or_stop_database):
(execute_psql_command):

13:53 Changeset [196189] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Fix iOS API tests after r196082
https://bugs.webkit.org/show_bug.cgi?id=153900

Patch by Alex Christensen <achristensen@webkit.org> on 2016-02-05
Reviewed by Jer Noble.

  • TestWebKitAPI/Tests/WebCore/WebCoreNSURLSession.mm:

(TestWebKitAPI::WebCoreNSURLSessionTest::SetUp):
[WebView initialize] doesn't call JSC::initializeThreading on iOS.

13:41 Changeset [196188] by sbarati@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

follow-up to: JSC Sampling Profiler: (host) is confusing in cases where I would expect to see JS name
https://bugs.webkit.org/show_bug.cgi?id=153663
<rdar://problem/24415092>

Rubber stamped by Joseph Pecoraro.

We were performing operations that required us to
hold the VM lock even when we might not have been holding it.
We now ensure we're holding it.

  • inspector/agents/InspectorScriptProfilerAgent.cpp:

(Inspector::InspectorScriptProfilerAgent::trackingComplete):

13:38 Changeset [196187] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Navigation bar in sidebars should always fit on a single line
https://bugs.webkit.org/show_bug.cgi?id=153412
<rdar://problem/24318706>

Patch by Devin Rousso <dcrousso+webkit@gmail.com> on 2016-02-05
Reviewed by Timothy Hatcher.

This happened because the allowed maximum width of the sidebar was greater
than the minimum width derived from the currently visible sidebar.

  • UserInterface/Base/Utilities.js:

(Number.constrain):
Added logic to reverse the values of min and max if max is less than min.

13:34 Changeset [196186] by sbarati@apple.com
  • 4 edits in trunk/Source/bmalloc

bmalloc: largeMax calculation is wrong on iOS
https://bugs.webkit.org/show_bug.cgi?id=153923

Reviewed by Mark Lam.

Our number for largeMax was larger than what we had
space to actually allocate inside the LargeChunk. This made
it so that we would allocate a large object for something
that really should be extra large. Previously:
largeMax + sizeof(LargeChunk) > 1MB
which meant that when we would grow() to accommodate an allocation
of a particular size inside a LargeObject despite the fact that
the allocation size would be too large to actually fit in the LargeObject.
This would manifest when we had an allocation size in the range:
1MB - sizeof(LargeChunk) < allocation size < largeMax

We fix this bug by being precise in our calculation of largeMax
instead of just assuming largeChunkSize * 99/100 is enough
space for the metadata.

  • bmalloc/LargeChunk.h:

(bmalloc::LargeChunk::get):

  • bmalloc/Sizes.h:
13:22 Changeset [196185] by timothy@apple.com
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Don't wrap labels in Breakpoint Editor popover
https://bugs.webkit.org/show_bug.cgi?id=153926
rdar://problem/24149542

Reviewed by Brian Burg.

  • UserInterface/Views/BreakpointPopoverController.css:

(.popover .edit-breakpoint-popover-content > table > tr > th): Added white-space: nowrap.

13:20 Changeset [196184] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebInspectorUI

Web Inspector: Replace all instances of '%s' with “%s“
https://bugs.webkit.org/show_bug.cgi?id=153891
<rdar://problem/24510236>

Patch by Devin Rousso <dcrousso+webkit@gmail.com> on 2016-02-05
Reviewed by Timothy Hatcher.

Switched all WebInspector.UIString() from using to ““.

  • Localizations/en.lproj/localizedStrings.js:
  • UserInterface/Views/CSSStyleDeclarationSection.js:

(WebInspector.CSSStyleDeclarationSection.prototype._handleSelectorPaste):

  • UserInterface/Views/CSSStyleDeclarationTextEditor.js:

(WebInspector.CSSStyleDeclarationTextEditor.prototype._createTextMarkerForPropertyIfNeeded):

  • UserInterface/Views/VisualStylePropertyEditor.js:

(WebInspector.VisualStylePropertyEditor.prototype.update):

  • UserInterface/Views/VisualStyleSelectorTreeItem.js:

(WebInspector.VisualStyleSelectorTreeItem.prototype._updateSelectorIcon):

13:19 Changeset [196183] by timothy@apple.com
  • 2 edits in trunk/Source/WebKit2

Web Inspector: Error when closing page with WebInspector open
https://bugs.webkit.org/show_bug.cgi?id=152867
rdar://problem/24099423

Reviewed by Brian Burg.

  • UIProcess/WebInspectorProxy.cpp:

(WebKit::WebInspectorProxy::didClose): Null out m_inspectorPage after platformDetach(),
so the views can be cleaned up correctly.

12:52 Changeset [196182] by bshafiei@apple.com
  • 2 edits in tags/Safari-602.1.18.4/Source/JavaScriptCore

Merged r196144. rdar://problem/24499887

12:51 Changeset [196181] by bshafiei@apple.com
  • 5 edits in tags/Safari-602.1.18.4/Source

Versioning.

12:49 Changeset [196180] by bshafiei@apple.com
  • 1 copy in tags/Safari-602.1.18.4

New tag.

11:52 Changeset [196179] by fpizlo@apple.com
  • 6 edits
    2 adds in trunk/Source/JavaScriptCore

Arrayify for a typed array shouldn't create a monster
https://bugs.webkit.org/show_bug.cgi?id=153908
rdar://problem/24290639

Reviewed by Mark Lam.

Previously if you convinced the DFG to emit an Arrayify to ArrayStorage and then gave it a
typed array, you'd corrupt the object.

  • runtime/JSArrayBufferView.cpp:

(WTF::printInternal):

  • runtime/JSArrayBufferView.h:
  • runtime/JSGenericTypedArrayViewInlines.h:

(JSC::JSGenericTypedArrayView<Adaptor>::visitChildren):
(JSC::JSGenericTypedArrayView<Adaptor>::slowDownAndWasteMemory):

  • runtime/JSObject.cpp:

(JSC::JSObject::copyButterfly):
(JSC::JSObject::enterDictionaryIndexingMode):
(JSC::JSObject::ensureInt32Slow):
(JSC::JSObject::ensureDoubleSlow):
(JSC::JSObject::ensureContiguousSlow):
(JSC::JSObject::ensureArrayStorageSlow):
(JSC::JSObject::growOutOfLineStorage):
(JSC::getBoundSlotBaseFunctionForGetterSetter):

  • runtime/Structure.h:
  • tests/stress/arrayify-array-storage-typed-array.js: Added. This test failed.
  • tests/stress/arrayify-int32-typed-array.js: Added. This test case already had other protections, but we beefed them up.
11:51 Changeset [196178] by achristensen@apple.com
  • 5 edits
    2 adds in trunk/Source/WebKit2

Move NetworkDataTask to its own header and source files
https://bugs.webkit.org/show_bug.cgi?id=153922

Reviewed by Tim Horton.

Also renamed NetworkSessionTaskClient to NetworkDataTaskClient.

  • NetworkProcess/NetworkDataTask.h: Added.

(WebKit::NetworkDataTaskClient::~NetworkDataTaskClient):
(WebKit::NetworkDataTask::create):
(WebKit::NetworkDataTask::client):
(WebKit::NetworkDataTask::pendingDownloadID):
(WebKit::NetworkDataTask::pendingDownload):
(WebKit::NetworkDataTask::setPendingDownloadID):
(WebKit::NetworkDataTask::setPendingDownload):

  • NetworkProcess/NetworkLoad.h:
  • NetworkProcess/NetworkSession.h:

(WebKit::NetworkSessionTaskClient::~NetworkSessionTaskClient): Deleted.
(WebKit::NetworkDataTask::create): Deleted.
(WebKit::NetworkDataTask::client): Deleted.
(WebKit::NetworkDataTask::pendingDownloadID): Deleted.
(WebKit::NetworkDataTask::pendingDownload): Deleted.
(WebKit::NetworkDataTask::setPendingDownloadID): Deleted.
(WebKit::NetworkDataTask::setPendingDownload): Deleted.

  • NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: Added.

(WebKit::NetworkDataTask::NetworkDataTask):
(WebKit::NetworkDataTask::~NetworkDataTask):
(WebKit::NetworkDataTask::scheduleFailure):
(WebKit::NetworkDataTask::failureTimerFired):
(WebKit::NetworkDataTask::tryPasswordBasedAuthentication):
(WebKit::NetworkDataTask::cancel):
(WebKit::NetworkDataTask::resume):
(WebKit::NetworkDataTask::suspend):

  • NetworkProcess/cocoa/NetworkSessionCocoa.mm:

(WebKit::NetworkSession::takeDownloadID):
(WebKit::NetworkDataTask::NetworkDataTask): Deleted.
(WebKit::NetworkDataTask::~NetworkDataTask): Deleted.
(WebKit::NetworkDataTask::scheduleFailure): Deleted.
(WebKit::NetworkDataTask::failureTimerFired): Deleted.
(WebKit::NetworkDataTask::tryPasswordBasedAuthentication): Deleted.
(WebKit::NetworkDataTask::cancel): Deleted.
(WebKit::NetworkDataTask::resume): Deleted.
(WebKit::NetworkDataTask::suspend): Deleted.

  • WebKit2.xcodeproj/project.pbxproj:
10:52 Changeset [196177] by bshafiei@apple.com
  • 3 edits in tags/Safari-602.1.18.0.2/Source/WebKit2

Merged r196037. rdar://problem/24399218

10:51 Changeset [196176] by bshafiei@apple.com
  • 5 edits in tags/Safari-602.1.18.0.2/Source

Versioning.

10:49 Changeset [196175] by bshafiei@apple.com
  • 1 copy in tags/Safari-602.1.18.0.2

New tag.

08:57 Changeset [196174] by achristensen@apple.com
  • 20 edits in trunk/Source

Clean up Blob code
https://bugs.webkit.org/show_bug.cgi?id=153910

Reviewed by Alexey Proskuryakov.

Source/WebCore:

No new tests, no change in behavior.

  • css/StyleSheet.h:
  • fileapi/Blob.cpp:

(WebCore::Blob::Blob):
(WebCore::Blob::normalizedContentType):
(WebCore::Blob::isNormalizedContentType):
(WebCore::Blob::registry):

  • fileapi/Blob.h:
  • fileapi/BlobURL.cpp:

(WebCore::BlobURL::createPublicURL):

  • fileapi/BlobURL.h:

(WebCore::BlobURL::BlobURL):
(WebCore::BlobURL::blobProtocol): Deleted.

  • platform/PlatformStrategies.cpp:

(WebCore::setPlatformStrategies):
(WebCore::hasPlatformStrategies): Deleted.

  • platform/PlatformStrategies.h:
  • platform/network/BlobRegistry.cpp:

(WebCore::blobRegistry):

  • platform/network/BlobRegistry.h:
  • platform/network/BlobRegistryImpl.cpp:

(WebCore::BlobRegistryImpl::~BlobRegistryImpl):
(WebCore::createResourceHandle):
(WebCore::registerBlobResourceHandleConstructor):
(WebCore::BlobRegistryImpl::createResourceHandle):
(WebCore::BlobRegistryImpl::appendStorageItems):
(WebCore::BlobRegistryImpl::registerFileBlobURL):
(WebCore::BlobRegistryImpl::registerBlobURL):

  • platform/network/BlobRegistryImpl.h:
  • platform/network/BlobResourceHandle.cpp:

(WebCore::BlobResourceHandle::loadResourceSynchronously):
(WebCore::BlobResourceHandle::BlobResourceHandle):

  • platform/network/ResourceHandle.h:

Source/WebKit2:

  • NetworkProcess/FileAPI/NetworkBlobRegistry.cpp:

(WebKit::NetworkBlobRegistry::NetworkBlobRegistry):
(WebKit::NetworkBlobRegistry::registerFileBlobURL):

  • NetworkProcess/FileAPI/NetworkBlobRegistry.h:
  • NetworkProcess/NetworkConnectionToWebProcess.cpp:

(WebKit::NetworkConnectionToWebProcess::registerFileBlobURL):
(WebKit::NetworkConnectionToWebProcess::registerBlobURL):

  • WebProcess/FileAPI/BlobRegistryProxy.cpp:

(WebKit::BlobRegistryProxy::registerFileBlobURL):

  • WebProcess/FileAPI/BlobRegistryProxy.h:
07:38 Changeset [196173] by mitz@apple.com
  • 5 edits
    1 delete in trunk/Source/WebKit2

[Cocoa] Get rid of unused SPI declarations
https://bugs.webkit.org/show_bug.cgi?id=153915

Reviewed by Tim Horton.

  • Platform/spi/Cocoa/NSInvocationSPI.h: Removed NSInvocation SPI method declaration.
  • Platform/spi/ios/SafariServicesSPI.h: Removed.
  • UIProcess/API/Cocoa/WKSecurityOrigin.mm:

(-[WKSecurityOrigin methodSignatureForSelector:]): Deleted.
(-[WKSecurityOrigin forwardInvocation:]): Deleted.

  • UIProcess/ios/WKContentViewInteraction.mm: Removed unused #import.
  • WebKit2.xcodeproj/project.pbxproj: Removed reference to deleted header.
06:04 Changeset [196172] by carlosgc@webkit.org
  • 2 edits in trunk/Source/WebCore

[GTK] Scrollbars incorrectly rendered with older versions of GTK+
https://bugs.webkit.org/show_bug.cgi?id=153861

Reviewed by Michael Catanzaro.

The theme doesn't really know it's a scrollbar. Older versions of
GTK+ require to explicitly add the scrollbar style class to the
child GtkStyleContext.

  • platform/gtk/ScrollbarThemeGtk.cpp:

(WebCore::createChildStyleContext):

06:02 WebKitGTK/2.10.x edited by agomez@igalia.com
(diff)
06:01 WebKitGTK/2.10.x edited by agomez@igalia.com
(diff)
05:58 Changeset [196171] by carlosgc@webkit.org
  • 3 edits in trunk/Source/WebCore

[GTK] Scrollbars not correctly rendered in non GNOME environments
https://bugs.webkit.org/show_bug.cgi?id=153860

Reviewed by Michael Catanzaro.

I noticed this in a matchbox environment, where there's no
gnome-setting-daemon running. The problem is only with the
scrollbars, because we initialize the GtkSettings in
RenderThemeGtk and notify the ScrollbarTheme when it changes, but
ScrollbarTheme is created before RenderThemeGtk so we initialize
the theme properties before the GtkSettings have been
initialized. We can just let the ScrollbarTheme monitor the
theme itself instead of relying on being notified by the WebCore
layer.

  • platform/gtk/ScrollbarThemeGtk.cpp:

(WebCore::themeChangedCallback):
(WebCore::ScrollbarThemeGtk::ScrollbarThemeGtk):

  • rendering/RenderThemeGtk.cpp:

(WebCore::gtkStyleChangedCallback): Deleted.

01:59 Changeset [196170] by youenn.fablet@crf.canon.fr
  • 3 edits in trunk/Source/WebCore

Remove DOMWrapped parameter from JSKeyValueIterator
https://bugs.webkit.org/show_bug.cgi?id=153859

Reviewed by Sam Weinig.

No change in behavior.

Using std::declval to infer DOMWrapped from JSWrapper::wrapped.

  • bindings/js/JSFetchHeadersCustom.cpp:

(WebCore::JSFetchHeaders::entries):
(WebCore::JSFetchHeaders::keys):
(WebCore::JSFetchHeaders::values):

  • bindings/js/JSKeyValueIterator.h:

(WebCore::createIterator):
(WebCore::JSKeyValueIterator<JSWrapper>::destroy):
(WebCore::JSKeyValueIterator<JSWrapper>::next):
(WebCore::JSKeyValueIteratorPrototypeFunctionNext):
(WebCore::JSKeyValueIteratorPrototype<JSWrapper>::finishCreation):

01:03 Changeset [196169] by nvasilyev@apple.com
  • 2 edits in trunk/Source/WebInspectorUI

REGRESSION (r193913): Web Inspector: Wrong z-index of inner sections
https://bugs.webkit.org/show_bug.cgi?id=153914

Reviewed by Timothy Hatcher.

  • UserInterface/Views/DetailsSection.css:

(.details-section .details-section > .header):

01:01 Changeset [196168] by nvasilyev@apple.com
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Decrease font-weight of inner sections
https://bugs.webkit.org/show_bug.cgi?id=153913
<rdar://problem/24520326>

Reviewed by Timothy Hatcher.

  • UserInterface/Views/DetailsSection.css:

(.details-section .details-section > .header):

00:53 Changeset [196167] by n_wang@apple.com
  • 3 edits
    2 adds in trunk

AX: WebKit hanging when VoiceOver attempts to focus in on page
https://bugs.webkit.org/show_bug.cgi?id=153899
<rdar://problem/24506603>

Reviewed by Chris Fleizach.

Source/WebCore:

The VisiblePosition to CharacterOffset conversion will lead to an infinite loop if the
nextVisiblePostion call is returning the original VisiblePosition. Fixed it by breaking out
of the loop early in that situation.

Test: accessibility/text-marker/character-offset-visible-position-conversion-hang.html

  • accessibility/AXObjectCache.cpp:

(WebCore::AXObjectCache::characterOffsetFromVisiblePosition):

LayoutTests:

  • accessibility/text-marker/character-offset-visible-position-conversion-hang-expected.txt: Added.
  • accessibility/text-marker/character-offset-visible-position-conversion-hang.html: Added.

02/04/16:

21:57 Changeset [196166] by nvasilyev@apple.com
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: console.table background stripes are misaligned
https://bugs.webkit.org/show_bug.cgi?id=152954
<rdar://problem/24197735>

Reviewed by Timothy Hatcher.

  • UserInterface/Views/LogContentView.css:

(.console-item .data-grid table.data):
(.console-item .data-grid table.data tr:nth-child(even)):
Replace CSS gradient that produces fixed height stripes with
a rule that sets background only on even table rows.

21:24 Changeset [196165] by commit-queue@webkit.org
  • 64 edits in trunk

Web Inspector: InspectorTimelineAgent doesn't need to recompile functions because it now uses the sampling profiler
https://bugs.webkit.org/show_bug.cgi?id=153500
<rdar://problem/24352458>

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2016-02-04
Reviewed by Timothy Hatcher.

Source/JavaScriptCore:

Be more explicit about enabling legacy profiling.

  • jsc.cpp:
  • runtime/Executable.cpp:

(JSC::ScriptExecutable::newCodeBlockFor):

  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::hasLegacyProfiler):
(JSC::JSGlobalObject::createProgramCodeBlock):
(JSC::JSGlobalObject::createEvalCodeBlock):
(JSC::JSGlobalObject::createModuleProgramCodeBlock):
(JSC::JSGlobalObject::hasProfiler): Deleted.

  • runtime/JSGlobalObject.h:

(JSC::JSGlobalObject::supportsLegacyProfiling):
(JSC::JSGlobalObject::supportsProfiling): Deleted.

Source/WebCore:

  • bindings/js/JSDOMWindowBase.cpp:

(WebCore::JSDOMWindowBase::supportsLegacyProfiling):
(WebCore::JSDOMWindowBase::supportsRichSourceInfo):
(WebCore::JSDOMWindowBase::supportsProfiling): Deleted.

  • bindings/js/JSDOMWindowBase.h:
  • bindings/js/JSWorkerGlobalScopeBase.cpp:

(WebCore::JSWorkerGlobalScopeBase::supportsLegacyProfiling):
(WebCore::JSWorkerGlobalScopeBase::supportsProfiling): Deleted.

  • bindings/js/JSWorkerGlobalScopeBase.h:
  • inspector/InspectorController.h:
  • inspector/InspectorController.cpp:

(WebCore::InspectorController::legacyProfilerEnabled):
(WebCore::InspectorController::setLegacyProfilerEnabled):
Be more explicit about enabling legacy profiling.

  • inspector/InspectorTimelineAgent.cpp:

(WebCore::InspectorTimelineAgent::willDestroyFrontendAndBackend):
(WebCore::InspectorTimelineAgent::didCreateFrontendAndBackend): Deleted.
TimelineAgent doesn't need to recompile if using the sampling profiler.
This breaks console.profile, but console.profile should move to using
the sampling profiler as well.

(WebCore::InspectorTimelineAgent::startFromConsole):
(WebCore::InspectorTimelineAgent::stopFromConsole):
(WebCore::startProfiling): Deleted.
(WebCore::stopProfiling): Deleted.
Inlined the use once static functions.

  • page/PageConsoleClient.cpp:

(WebCore::PageConsoleClient::profile):
(WebCore::PageConsoleClient::profileEnd):
Added FIXMEs for improving console.profile and profileEnd.

  • testing/Internals.cpp:

(WebCore::Internals::resetToConsistentState):
(WebCore::Internals::setLegacyJavaScriptProfilingEnabled):
(WebCore::Internals::setJavaScriptProfilingEnabled): Deleted.

  • testing/Internals.h:
  • testing/Internals.idl:

Be more explicit about enabling legacy profiling.

Source/WebKit/win:

(WebInspector::isJavaScriptProfilingEnabled):
(WebInspector::setJavaScriptProfilingEnabled):
Switch to the new API names.

LayoutTests:

  • fast/profiler/*.html

Be more explicit about enabling legacy profiling.

  • inspector/sampling-profiler/eval-source-url.html

Remove an inner loop that was causing tail call optimizations
to eliminate the sourceURL we were expecting.

18:01 Changeset [196164] by bfulgham@apple.com
  • 2 edits in trunk/Source/WebCore

Follow-up: Add "WebKit built-in PDF" Plugin to set of publicly visible plugins
https://bugs.webkit.org/show_bug.cgi?id=153657
<rdar://problem/24413107>

Reviewed by Darin Adler.

  • plugins/PluginData.cpp:

(WebCore::shouldBePubliclyVisible): Revise comments to provide a
better explanation of the function and why it exists.

17:31 Changeset [196163] by joepeck@webkit.org
  • 2 edits
    6 deletes in trunk/Source/WebInspectorUI

Unreviewed, follow-up fix to r196151 that removes some more images.

  • UserInterface/Images/Colors.png: Removed.
  • UserInterface/Images/Colors@2x.png: Removed.
  • UserInterface/Images/Network.png: Removed.
  • UserInterface/Images/Network@2x.png: Removed.
  • UserInterface/Images/Script.png: Removed.
  • UserInterface/Images/Script@2x.png: Removed.

These images were supposed to also be removed.

  • WebInspectorUI.vcxproj/WebInspectorUI.vcxproj:

Also remove references to now removed images.

17:20 Changeset [196162] by bshafiei@apple.com
  • 5 edits in branches/safari-601-branch/Source

Versioning.

17:19 Changeset [196161] by bshafiei@apple.com
  • 5 edits in branches/safari-601.1.46-branch/Source

Versioning.

17:18 Changeset [196160] by bshafiei@apple.com
  • 1 copy in tags/Safari-601.1.46.97

New tag.

17:18 Changeset [196159] by bshafiei@apple.com
  • 1 copy in tags/Safari-601.5.15

New tag.

16:51 Changeset [196158] by jmarcell@apple.com
  • 2 edits in trunk/Tools

The status message for passing combined builder queues should say "all builds succeeded" when expanded. https://bugs.webkit.org/show_bug.cgi?id=153882

Reviewed by Alexey Proskuryakov.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotCombinedQueueView.js:

(BuildbotCombinedQueueView.prototype.update): Set status to "all builds succeeded" for combined builder queues
when expanded.

16:46 Changeset [196157] by hs85.jeong@samsung.com
  • 2 edits in trunk/LayoutTests

Unreviewed. EFL gardening. Mark some video tests to failure.

  • platform/efl/TestExpectations:
16:42 Changeset [196156] by ryanhaddad@apple.com
  • 1 edit
    1 delete in trunk/LayoutTests

Remove ios-simulator-wk2 specific expectation for imported/w3c/web-platform-tests/html/dom/interfaces.html
https://bugs.webkit.org/show_bug.cgi?id=153844

Unreviewed test gardening.

  • platform/ios-simulator-wk2/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt: Removed.
16:36 Changeset [196155] by keith_miller@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

ArrayPrototype should have a destroy function
https://bugs.webkit.org/show_bug.cgi?id=153847

Reviewed by Filip Pizlo.

ArrayPrototype should have an destroy function as it now has a unique_ptr member that
needs to be freed at the end of the object's life cycle. Also, this patch adds an
option, gcAtEnd, that will cause jsc.cpp to do a garbage collection before exiting.

  • jsc.cpp:

(runJSC):
(jscmain):

  • runtime/ArrayPrototype.cpp:

(JSC::ArrayPrototype::create):
(JSC::ArrayPrototype::destroy):

  • runtime/ArrayPrototype.h:
  • runtime/Options.h:
15:54 Changeset [196154] by jond@apple.com
  • 2 edits in trunk/Source/WebCore

Add Fetch API and CSS Variables to feature status
https://bugs.webkit.org/show_bug.cgi?id=153896

Reviewed by Timothy Hatcher.

  • features.json:
15:47 Changeset [196153] by ryanhaddad@apple.com
  • 2 edits in trunk/LayoutTests

Rebaseline imported/w3c/web-platform-tests/html/dom/interfaces.html for ios-simulator
https://bugs.webkit.org/show_bug.cgi?id=153844

Reviewed by Chris Dumez.

  • platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt:
15:23 Changeset [196152] by fpizlo@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

REGRESSION(192409): Cannot rely on add32() to zero-extend
https://bugs.webkit.org/show_bug.cgi?id=153897

Unreviewed rollout of r192409.

  • assembler/MacroAssemblerARM64.h:

(JSC::MacroAssemblerARM64::add32):
(JSC::MacroAssemblerARM64::add64):

  • assembler/MacroAssemblerARMv7.h:

(JSC::MacroAssemblerARMv7::add32):

  • assembler/MacroAssemblerX86.h:

(JSC::MacroAssemblerX86::add32):

  • assembler/MacroAssemblerX86Common.h:

(JSC::MacroAssemblerX86Common::add32):
(JSC::MacroAssemblerX86Common::add8):
(JSC::MacroAssemblerX86Common::branchAdd32):
(JSC::MacroAssemblerX86Common::generateTest32):
(JSC::MacroAssemblerX86Common::clz32AfterBsr):
(JSC::MacroAssemblerX86Common::add32AndSetFlags): Deleted.

  • assembler/MacroAssemblerX86_64.h:

(JSC::MacroAssemblerX86_64::add32):
(JSC::MacroAssemblerX86_64::add64):
(JSC::MacroAssemblerX86_64::branchAdd64):
(JSC::MacroAssemblerX86_64::repatchCall):
(JSC::MacroAssemblerX86_64::clz64AfterBsr):
(JSC::MacroAssemblerX86_64::add64AndSetFlags): Deleted.

15:13 Changeset [196151] by commit-queue@webkit.org
  • 4 edits
    5 adds
    8 deletes in trunk/Source/WebInspectorUI

Web Inspector: New timeline images for instruments
https://bugs.webkit.org/show_bug.cgi?id=153884
<rdar://problem/24509429>

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2016-02-04
Reviewed by Timothy Hatcher.

  • UserInterface/Views/TimelineTabContentView.js:

(WebInspector.TimelineTabContentView.iconClassNameForTimeline):
Better names and give Memory timeline a name for an icon.

  • UserInterface/Views/TreeOutline.css:

(.tree-outline.large .item .icon):
Add more padding next to large icons.

  • UserInterface/Images/ColorsLarge.png: Removed.
  • UserInterface/Images/ColorsLarge@2x.png: Removed.
  • UserInterface/Images/Frames.png: Removed.
  • UserInterface/Images/Frames@2x.png: Removed.
  • UserInterface/Images/LayoutInstrument.svg: Added.
  • UserInterface/Images/MemoryInstrument.svg: Added.
  • UserInterface/Images/NetworkInstrument.svg: Added.
  • UserInterface/Images/NetworkLarge.png: Removed.
  • UserInterface/Images/NetworkLarge@2x.png: Removed.
  • UserInterface/Images/RenderingFramesInstrument.svg: Added.
  • UserInterface/Images/ScriptLarge.png: Removed.
  • UserInterface/Images/ScriptLarge@2x.png: Removed.

Remove old timeline pngs.

  • UserInterface/Images/ScriptsInstrument.svg: Added.
  • UserInterface/Views/TimelineIcons.css:

(.network-icon .icon):
(.script-icon .icon):
(.memory-icon .icon):
(.layout-icon .icon):
(.rendering-frame-icon .icon):
Use the new SVGs.

(body:not(.mac-platform, .windows-platform) .network-icon .icon):
(body:not(.mac-platform, .windows-platform) .network-icon.large .icon):
(body:not(.mac-platform, .windows-platform) .layout-icon .icon):
(body:not(.mac-platform, .windows-platform) .layout-icon.large .icon):
(body:not(.mac-platform, .windows-platform) .script-icon .icon):
(body:not(.mac-platform, .windows-platform) .script-icon.large .icon):
(body:not(.mac-platform, .windows-platform) .rendering-frame-icon .icon):
Fallback to old icons for non-Mac/Windows ports using Images/gtk images.

14:54 Changeset [196150] by eric.carlson@apple.com
  • 2 edits in trunk/LayoutTests

media/video-size.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=124932
<rdar://problem/23336430>

Reviewed by Jer Noble.

  • media/video-size.html: Add logic to retry each stage silently twice before logging failure because we can't predict how long it will take to load the poster frame.
14:07 Changeset [196149] by akling@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Remove dead ENABLE(BYTECODE_COMMENTS) cruft.
<https://webkit.org/b/153888>

Reviewed by Antti Koivisto.

  • bytecode/UnlinkedCodeBlock.cpp:

(JSC::UnlinkedCodeBlock::UnlinkedCodeBlock): Deleted.

  • bytecode/UnlinkedCodeBlock.h:

(JSC::UnlinkedCodeBlock::shrinkToFit): Deleted.

13:52 Changeset [196148] by dbates@webkit.org
  • 4 edits in trunk/Source

WebKit for iOS Simulator fails to build with public iOS SDK
https://bugs.webkit.org/show_bug.cgi?id=153881

Reviewed by Alex Christensen.

Source/WebCore:

Make constants have internal linkage to match the Apple Internal SDK.

  • platform/spi/ios/MobileGestaltSPI.h:

Source/WebKit2:

Add version guards around SPI that is now API as of iOS SDK 9.2. Until we upgrade the iOS EWS
and iOS buildbots to use the 9.2 SDK we need to keep these SPI declarations to avoid breaking
the build.

  • Platform/spi/ios/UIKitSPI.h:
13:51 Changeset [196147] by sbarati@apple.com
  • 5 edits
    3 adds in trunk/Source/JavaScriptCore

JSC Sampling Profiler: (host) is confusing in cases where I would expect to see JS name
https://bugs.webkit.org/show_bug.cgi?id=153663
<rdar://problem/24415092>

Reviewed by Geoffrey Garen.

We now collect the Callee in the processed StackFrame
when the Callee is a valid GC object. We later ask
the Callee for it's .displayName or .name property.
When we don't have a valid callee, we will still
use the Executable for this information.

This helps us come up with good names for frames where
the Callee object is a bound function or an InternalFunction.

  • inspector/agents/InspectorScriptProfilerAgent.cpp:

(Inspector::InspectorScriptProfilerAgent::addEvent):
(Inspector::buildSamples):
(Inspector::InspectorScriptProfilerAgent::trackingComplete):

  • runtime/SamplingProfiler.cpp:

(JSC::reportStats):
(JSC::FrameWalker::walk):
(JSC::SamplingProfiler::processUnverifiedStackTraces):
(JSC::SamplingProfiler::visit):
(JSC::SamplingProfiler::shutdown):
(JSC::SamplingProfiler::clearData):
(JSC::SamplingProfiler::StackFrame::nameFromCallee):
(JSC::SamplingProfiler::StackFrame::displayName):
(JSC::SamplingProfiler::StackFrame::displayNameForJSONTests):
(JSC::SamplingProfiler::stackTracesAsJSON):

  • runtime/SamplingProfiler.h:

(JSC::SamplingProfiler::UnprocessedStackFrame::UnprocessedStackFrame):
(JSC::SamplingProfiler::StackFrame::StackFrame):

  • tests/stress/sampling-profiler-basic.js:

(platformSupportsSamplingProfiler.nothing):
(platformSupportsSamplingProfiler.top):

  • tests/stress/sampling-profiler-bound-function-name.js: Added.

(platformSupportsSamplingProfiler.foo):
(platformSupportsSamplingProfiler.bar):
(platformSupportsSamplingProfiler.let.baz):
(platformSupportsSamplingProfiler):

  • tests/stress/sampling-profiler-display-name.js: Added.

(platformSupportsSamplingProfiler.foo):
(platformSupportsSamplingProfiler.baz):
(platformSupportsSamplingProfiler.):
(platformSupportsSamplingProfiler.bar):
(platformSupportsSamplingProfiler.jaz):
(platformSupportsSamplingProfiler.makeFunction.let.result):
(platformSupportsSamplingProfiler.makeFunction):

  • tests/stress/sampling-profiler-internal-function-name.js: Added.

(platformSupportsSamplingProfiler.foo):
(platformSupportsSamplingProfiler.bar):
(platformSupportsSamplingProfiler):

13:51 Changeset [196146] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebInspectorUI

Web Inspector: Show error icons if invalid values already exist for properties in the Visual sidebar
https://bugs.webkit.org/show_bug.cgi?id=153702
<rdar://problem/24424025>

Patch by Devin Rousso <dcrousso+webkit@gmail.com> on 2016-02-04
Reviewed by Timothy Hatcher.

When CSS properties have invalid values, instead of displaying the computed
value for that property in the Visual sidebar, show an error icon with the
the invalid value.

  • Localizations/en.lproj/localizedStrings.js:
  • UserInterface/Views/VisualStyleNumberInputBox.css:

(.visual-style-property-container > .visual-style-property-value-container > .number-input-container > .number-input-value):
(.visual-style-property-container > .visual-style-property-value-container > .visual-style-special-property-placeholder[hidden] ~ .number-input-container > .number-input-value):
By default, do not allow any pointer events to interact with the input element.
Instead, only allow interaction when the placeholder element is hidden to ensure
that the user cannot add a value when the computed value is displayed.

  • UserInterface/Views/VisualStyleNumberInputBox.js:

(WebInspector.VisualStyleNumberInputBox.prototype.set specialPropertyPlaceholderElementText):
Reset the selected keyword to "Unchanged" since this is either a warning
message or the computed value.

  • UserInterface/Views/VisualStylePropertyEditor.css:

(.visual-style-property-container > .visual-style-property-editor-warning.missing-dependency):
(.visual-style-property-container > .visual-style-property-editor-warning.invalid-value):
(.visual-style-property-container > .visual-style-property-editor-warning):

  • UserInterface/Views/VisualStylePropertyEditor.js:

(WebInspector.VisualStylePropertyEditor):
Replaced document.createElement with [element].createChild for simplicity.

(WebInspector.VisualStylePropertyEditor.prototype.update):
Before assigning the value of the property to the editor, check to see if
the property is valid. If not, display an Error icon and message stating
that the current value is invalid.

(WebInspector.VisualStylePropertyEditor.prototype.updateEditorValues):
(WebInspector.VisualStylePropertyEditor.prototype.set specialPropertyPlaceholderElementText):
Unhides the special placeholder element with the given text as its content.

(WebInspector.VisualStylePropertyEditor.prototype._valueDidChange):
(WebInspector.VisualStylePropertyEditor.prototype._checkDependencies):
(WebInspector.VisualStylePropertyEditor.prototype.addDependency):

13:36 Changeset [196145] by cdumez@apple.com
  • 19 edits
    6 adds in trunk

Object.getOwnPropertyDescriptor() returns incomplete descriptor for instance properties
https://bugs.webkit.org/show_bug.cgi?id=153817

Reviewed by Geoffrey Garen.

LayoutTests/imported/w3c:

Rebaseline W3C HTML test now that more checks are passing. Some checks are still
failing because getter.call(undefined) / getter.call() currently throws an exception
for Window properties but shouldn't. Global object property getters should not require
an explicit |this|.

  • web-platform-tests/html/dom/interfaces-expected.txt:

Source/JavaScriptCore:

Extend support for Object.getOwnPropertyDescriptor() on native bindings
to instance properties (e.g. Unforgeable properties or Global object
properties) so that the returned descriptor has getter / setter
functions, as expected.

  • runtime/JSObject.cpp:

(JSC::JSObject::reifyAllStaticProperties):
Add method that reifies all static properties, including the custom
accessors. This is similar to what is done eagerly on the prototype
objects in the bindings code.

(JSC::JSObject::getOwnPropertyDescriptor):
getOwnPropertyDescriptor() would previously fails for custom accessors
that are on the instance because getDirect() does not check the static
property table and those custom accessors were not reified (We only
reified all properties eagerly - including custom accessors - on
prototype objects. To address this issue, we now call
reifyAllStaticProperties() if the call to getDirect() fails and then
call getDirect() again. This fix is however insufficient for Window
properties because |this| is a JSDOMWindowShell / JSProxy in this case
and getDirect() / reifyAllStaticProperties() would fail as the proxy
does not actually have the properties. This issue was addressed by
checking if |this| is a JSProxy and then using JSProxy::target() instead
of |this| for the calls to getDirect() and for the reification.

  • runtime/JSObject.h:
  • runtime/Lookup.h:

(JSC::reifyStaticProperty):
(JSC::reifyStaticProperties):
Move most code in reifyStaticProperties() to a separate function so the
code can be shared with JSObject::reifyAllStaticProperties().
reifyStaticProperties() is currently called by the bindings on the
prototype objects.

Source/WebCore:

Update the bindings generator so that property getters / setters now
make sure |this| has the right type and throw a TypeError if it does
not, as per:

This was an issue when doing something like:
Object.getOwnPropertyDescriptor(window, "location").get.call(nonWindow)

We would call toJSDOMWindow(thisValue), which would return null as
thisValue is not a JSDOMWindow. We would then dereference this null
pointer and crash. We now do a null check and throw a TypeError in
this case, as per the Web IDL specification.

The generated bindings still have some non-spec compliant behavior
though:

  1. The getters / setters of instance properties use slotBase instead of thisValue, which means that calling instanceA's getter on instanceB returns instanceA's property insteas of instanceB's.
  2. Global object property getters should not require an explicit |this| so calling the following should work:
    • Object.getOwnPropertyDescriptor(window, "location").get.call() We currently throw in this case.

These issues will be addressed in follow-up patches.

Tests: js/getOwnPropertyDescriptor-unforgeable-attributes.html

js/getOwnPropertyDescriptor-window-attributes.html
js/instance-property-getter-other-instance.html

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):

  • bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:

(WebCore::jsTestActiveDOMObjectExcitingAttr):

  • bindings/scripts/test/JS/JSTestException.cpp:

(WebCore::jsTestExceptionName):

  • bindings/scripts/test/JS/JSTestObj.cpp:

(WebCore::jsTestObjConstructorTestSubObj):
(WebCore::jsTestObjTestSubObjEnabledBySettingConstructor):
(WebCore::jsTestObjConditionalAttr4Constructor):
(WebCore::jsTestObjConditionalAttr5Constructor):
(WebCore::jsTestObjConditionalAttr6Constructor):
(WebCore::jsTestObjContentDocument):
(WebCore::setJSTestObjTestSubObjEnabledBySettingConstructor):
(WebCore::setJSTestObjConditionalAttr4Constructor):
(WebCore::setJSTestObjConditionalAttr5Constructor):
(WebCore::setJSTestObjConditionalAttr6Constructor):
(WebCore::setJSTestObjConstructor): Deleted.
(WebCore::setJSTestObjConstructorStaticStringAttr): Deleted.
(WebCore::setJSTestObjConditionalAttr3): Deleted.

  • bindings/scripts/test/JS/JSTestTypedefs.cpp:

(WebCore::jsTestTypedefsConstructorTestSubObj):

LayoutTests:

Add layout test coverage for calling Object.getOwnPropertyDescriptor()
on instance properties (e.g. Unforgeable properties and Window properties).

  • http/tests/security/cross-origin-window-property-access-expected.txt:
  • http/tests/security/cross-origin-window-property-access.html:
  • Fix bug causing the onload function to not find the crossOriginWindow variable.
  • Update the case for accessing crossOriginWindow.location property as this is actually expected to work as per the specification: https://html.spec.whatwg.org/multipage/browsers.html#security-window
  • js/dom/dom-as-prototype-assignment-exception-expected.txt:
  • js/dom/getOwnPropertyDescriptor-expected.txt:
  • js/dom/script-tests/dom-as-prototype-assignment-exception.js:
  • js/getOwnPropertyDescriptor-unforgeable-attributes-expected.txt: Added.
  • js/getOwnPropertyDescriptor-unforgeable-attributes.html: Added.
  • js/getOwnPropertyDescriptor-window-attributes-expected.txt: Added.
  • js/getOwnPropertyDescriptor-window-attributes.html: Added.
  • js/instance-property-getter-other-instance-expected.txt: Added.
  • js/instance-property-getter-other-instance.html: Added.
  • js/resources/getOwnPropertyDescriptor.js:
13:20 Changeset [196144] by achristensen@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix internal Windows build
https://bugs.webkit.org/show_bug.cgi?id=153886
<rdar://problem/24499887>

Reviewed by Mark Lam.

In r190253 I changed the directory of the headers from AppleInternal/include/JavaScriptCore
to AppleInternal/include/private/JavaScriptCore. This is ok for WebCore and WebKit, but not
other projects, such as CFNetwork, which expect the public API headers to be in the old location.
This used to be done by a combination of copy-files.cmd and the old JavaScriptCore.proj.
This change copies all the API headers, which copies everything in copy-files.cmd except APIShims.h
which does not exist any more. It copies additional headers that were not copied before, but
I think this is beneficial so we do not forget to add new public headers to a list of public headers
to be copied in the internal build. Having extra public headers in the internal Windows build is
not a problem because only internal clients use the internal Windows build.

13:14 Changeset [196143] by fpizlo@apple.com
  • 2 edits in trunk/Tools

run-jsc-stress-tests should be better at telling you details about test failures
https://bugs.webkit.org/show_bug.cgi?id=153845

Reviewed by Geoffrey Garen.

Here's an example of the contents of results/resultsByFamily, one of the new files that this
generates, for some local testing I'm doing. Notice how it groups families of tests together.

You won't see this unless you cat results/resultsByFamily.

regress.yaml/Regress/radar-24289839.js:

regress.yaml/Regress/radar-24289839.js.default: PASS
regress.yaml/Regress/radar-24289839.js.ftl: PASS
regress.yaml/Regress/radar-24289839.js.ftl-no-cjit: FAIL
regress.yaml/Regress/radar-24289839.js.ftl-eager-no-cjit: FAIL


regress.yaml/Regress/radar-24290639.js:

regress.yaml/Regress/radar-24290639.js.default: PASS
regress.yaml/Regress/radar-24290639.js.ftl: PASS
regress.yaml/Regress/radar-24290639.js.ftl-no-cjit: PASS
regress.yaml/Regress/radar-24290639.js.ftl-eager-no-cjit: FAIL


regress.yaml/Regress/radar-24290670.js: FAILED

  • Scripts/run-jsc-stress-tests:
13:02 Changeset [196142] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebKit2

Web Inspector: Give nested inspectors their own process pool
https://bugs.webkit.org/show_bug.cgi?id=153880
<rdar://problem/24508310>

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2016-02-04
Reviewed by Timothy Hatcher.

When inspecting the inspector both inspectors were using the same
Inspector process and sharing the same VM. This meant that profiling
information was confusing (memory and JavaScript sampling) because
it was showing data about both inspectors sharing the same process.

  • UIProcess/WebInspectorProxy.cpp:

(WebKit::WebInspectorProxy::inspectorProcessPool):
(WebKit::WebInspectorProxy::isInspectorProcessPool):
Have two process pools. The main inspector process pool (1st level inspectors)
and a nested inspector process pool (inspecting the inspector, only expected
by WebKit developers).

  • UIProcess/WebInspectorProxy.h:
  • UIProcess/efl/WebInspectorProxyEfl.cpp:

(WebKit::WebInspectorProxy::platformCreateInspectorPage):

  • UIProcess/gtk/WebInspectorProxyGtk.cpp:

(WebKit::WebInspectorProxy::platformCreateInspectorPage):

  • UIProcess/mac/WebInspectorProxyMac.mm:

(WebKit::WebInspectorProxy::platformCreateInspectorPage):
Pass the inspectionLevel to determine the appropriate pool to use.

12:38 Changeset [196141] by ryanhaddad@apple.com
  • 2 edits in trunk/LayoutTests

Marking imported/w3c/web-platform-tests/html/semantics/document-metadata/styling/LinkStyle.html as flaky on Mac
https://bugs.webkit.org/show_bug.cgi?id=153871

Unreviewed test gardening.

  • platform/mac/TestExpectations:
12:26 Changeset [196140] by ryanhaddad@apple.com
  • 2 edits in trunk/LayoutTests

Marking webgl/1.0.3/conformance/extensions/oes-texture-half-float-linear.html as flaky on mac
https://bugs.webkit.org/show_bug.cgi?id=153883

Unreviewed test gardening.

  • platform/mac/TestExpectations:
12:23 Changeset [196139] by jond@apple.com
  • 2 edits in trunk/Websites/webkit.org

Fix bad link on the Feature Status page.
https://bugs.webkit.org/show_bug.cgi?id=152086

Reviewed by Timothy Hatcher.

  • wp-content/themes/webkit/status.php:
12:06 Changeset [196138] by ossy@webkit.org
  • 2 edits in trunk/Source/WebKit2

Fix the !ENABLE(NETSCAPE_PLUGIN_API) build after r196053
https://bugs.webkit.org/show_bug.cgi?id=153878

Unreviewed buildfix.

  • WebProcess/Plugins/Netscape/x11/NetscapePluginX11.h:
11:46 Changeset [196137] by beidson@apple.com
  • 5 edits
    5 adds in trunk

Modern IDB: LayoutTest imported/w3c/indexeddb/keyorder-private.html is flaky.
https://bugs.webkit.org/show_bug.cgi?id=153438.

Reviewed by Alex Christensen.

Source/WebCore:

Tests: storage/indexeddb/modern/idbkey-array-equality-private.html

storage/indexeddb/modern/idbkey-array-equality.html

  • Modules/indexeddb/IDBKeyData.cpp:

(WebCore::IDBKeyData::loggingString):
(WebCore::IDBKeyData::operator==): Fix obvious bug.

LayoutTests:

  • platform/mac-wk1/TestExpectations: Re-enable the flaky test.
  • resources/js-test.js:
  • storage/indexeddb/modern/idbkey-array-equality-expected.txt: Added.
  • storage/indexeddb/modern/idbkey-array-equality-private-expected.txt: Added.
  • storage/indexeddb/modern/idbkey-array-equality-private.html: Added.
  • storage/indexeddb/modern/idbkey-array-equality.html: Added.
  • storage/indexeddb/modern/resources/idbkey-array-equality.js: Added.
11:38 Changeset [196136] by cdumez@apple.com
  • 7 edits in trunk/Source/WebCore

Unreviewed, fix the EFL clean build after r196123
https://bugs.webkit.org/show_bug.cgi?id=153875

  • CMakeLists.txt:
  • PlatformGTK.cmake:
  • PlatformMac.cmake:
  • html/DOMSettableTokenList.h:
  • html/DOMSettableTokenList.idl:
11:27 Changeset [196135] by eric.carlson@apple.com
  • 10 edits in trunk/Source/WebCore

PageGroup::captionPreferences should return a reference
https://bugs.webkit.org/show_bug.cgi?id=153877
<rdar://problem/24506917>

Reviewed by Jer Noble.

No new tests, no functional change.

  • Modules/mediacontrols/MediaControlsHost.cpp:

(WebCore::MediaControlsHost::sortedTrackListForMenu):
(WebCore::MediaControlsHost::displayNameForTrack):
(WebCore::MediaControlsHost::captionMenuOffItem):
(WebCore::MediaControlsHost::captionDisplayMode):

  • dom/Document.cpp:

(WebCore::Document::registerForCaptionPreferencesChangedCallbacks):

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::HTMLMediaElement):
(WebCore::HTMLMediaElement::addTextTrack):
(WebCore::HTMLMediaElement::configureTextTrackGroup):
(WebCore::HTMLMediaElement::setSelectedTextTrack):
(WebCore::HTMLMediaElement::configureTextTracks):
(WebCore::HTMLMediaElement::captionPreferencesChanged):
(WebCore::HTMLMediaElement::mediaPlayerPreferredAudioCharacteristics):

  • html/shadow/MediaControlElements.cpp:

(WebCore::MediaControlClosedCaptionsTrackListElement::updateDisplay):
(WebCore::MediaControlClosedCaptionsTrackListElement::rebuildTrackListMenu):
(WebCore::MediaControlTextTrackContainerElement::updateActiveCuesFontSize):

  • page/PageGroup.cpp:

(WebCore::PageGroup::captionPreferencesChanged):
(WebCore::PageGroup::captionPreferences):

  • page/PageGroup.h:
  • platform/cocoa/WebVideoFullscreenModelVideoElement.mm:

(WebVideoFullscreenModelVideoElement::updateLegibleOptions):

  • testing/InternalSettings.cpp:

(WebCore::InternalSettings::setShouldDisplayTrackKind):
(WebCore::InternalSettings::shouldDisplayTrackKind):

  • testing/Internals.cpp:

(WebCore::Internals::resetToConsistentState):
(WebCore::Internals::Internals):
(WebCore::Internals::userPreferredAudioCharacteristics):
(WebCore::Internals::setUserPreferredAudioCharacteristic):
(WebCore::Internals::captionsStyleSheetOverride):
(WebCore::Internals::setCaptionsStyleSheetOverride):
(WebCore::Internals::setPrimaryAudioTrackLanguageOverride):
(WebCore::Internals::setCaptionDisplayMode):

11:20 Changeset [196134] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Removed unused Settings::setPrivateBrowsingEnabled.
https://bugs.webkit.org/show_bug.cgi?id=153869

Patch by Konstantin Tokarev <annulen@yandex.ru> on 2016-02-04
Reviewed by Alexey Proskuryakov.

Implementation of Settings::setPrivateBrowsingEnabled was removed
in r166661, but declaration is still here.

No new tests needed.

  • page/Settings.h:

(WebCore::Settings::setPrivateBrowsingEnabled): Deleted.

11:12 Changeset [196133] by ryanhaddad@apple.com
  • 2 edits in trunk/LayoutTests

Skip two flaky indexeddb tests on Yosemite Release WK2

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
10:29 Changeset [196132] by matthew_hanson@apple.com
  • 1 edit in branches/safari-601-branch/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm

Guard use of MediaToolbox by ENABLE(AVF_CAPTIONS).

10:20 Changeset [196131] by eric.carlson@apple.com
  • 7 edits in trunk

Don't discard in-band cues with negative start times
https://bugs.webkit.org/show_bug.cgi?id=153867
<rdar://problem/19588632>

Reviewed by Jer Noble.

Source/WebCore:

No new tests, updated and un-skipped http/tests/media/track-in-band-hls-metadata.html.

  • platform/graphics/avfoundation/InbandMetadataTextTrackPrivateAVF.cpp:

(WebCore::InbandMetadataTextTrackPrivateAVF::addDataCue): ASSERT if passed negative time value.
(WebCore::InbandMetadataTextTrackPrivateAVF::updatePendingCueEndTimes): Ditto. Correct logging.

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:

(WebCore::MediaPlayerPrivateAVFoundationObjC::processCue): ASSERT if passed negative time value.
(WebCore::MediaPlayerPrivateAVFoundationObjC::metadataDidArrive): Convert negative cue times to zero.
(-[WebCoreAVFMovieObserver legibleOutput:didOutputAttributedStrings:nativeSampleBuffers:forItemTime:]):

Ditto.

LayoutTests:

  • http/tests/media/track-in-band-hls-metadata-expected.txt:
  • http/tests/media/track-in-band-hls-metadata.html: Test more attributes for correctness, fail test immediately if cue.value is undefined so the test doesn't generate an exception and exit without any results.
  • platform/mac/TestExpectations: Unskip test.
10:03 Changeset [196130] by commit-queue@webkit.org
  • 7 edits
    2 adds in trunk

Specify an exception for createChannelMerger, createChannelSplitter and createPeriodicWave
https://bugs.webkit.org/show_bug.cgi?id=150925

Patch by Hyemi Shin <hyemi.sin@samsung.com> on 2016-02-04
Reviewed by Darin Adler.

createChannelMerger and createChannelSplitter should throw INDEX_SIZE_ERR
for invalid numberOfInputs value.
createPeriodicWave should throw INDEX_SIZE_ERR for invalid lengths of parameters.

Source/WebCore:

Tests: webaudio/audiochannelmerger-basic.html

webaudio/audiochannelsplitter.html
webaudio/periodicwave-lengths.html

  • Modules/webaudio/AudioContext.cpp:

(WebCore::AudioContext::createChannelSplitter):
(WebCore::AudioContext::createChannelMerger):
(WebCore::AudioContext::createPeriodicWave):

LayoutTests:

  • webaudio/audiochannelmerger-basic-expected.txt: numberOfInputs could be 32.
  • webaudio/audiochannelmerger-basic.html: Ditto.
  • webaudio/audiochannelsplitter-expected.txt: Ditto.
  • webaudio/audiochannelsplitter.html: Ditto.
  • webaudio/periodicwave-lengths-expected.txt: Added.
  • webaudio/periodicwave-lengths.html: Added.
09:45 Changeset [196129] by matthew_hanson@apple.com
  • 1 edit in branches/safari-601-branch/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm

Use feature-based guards instead of OS-based guards, and wrap them around both MediaToolbox SOFT_LINK macros.

09:43 Changeset [196128] by youenn.fablet@crf.canon.fr
  • 15 edits
    1 copy
    1 add in trunk

[Fetch API] Add support for iterating over Headers
https://bugs.webkit.org/show_bug.cgi?id=153787

Reviewed by Darin Adler.

LayoutTests/imported/w3c:

Relanding.

  • web-platform-tests/fetch/api/headers/headers-basic-expected.txt:
  • web-platform-tests/fetch/api/headers/headers-basic.html:
  • web-platform-tests/fetch/api/headers/headers-structure-expected.txt:
  • web-platform-tests/fetch/api/request/request-clone.sub-expected.txt:
  • web-platform-tests/fetch/api/request/request-init-003.sub-expected.txt:
  • web-platform-tests/fetch/api/resources/utils.js:

(checkRequest):
(readTextStream):

Source/WebCore:

Relanding, updating bindings/js/JSKeyValueIterator.h for Windows bots.

Covered by updated tests.
Introducing template class (JSKeyValueIterator) to support key-value iterators in DOM classes.
Using JSKeyValueIterator to implement Headers entries(), keys() and values() as custom methods.
Binding generator should be updated to generate directly these custom methods and handle iterator Symbol.

  • CMakeLists.txt:
  • Modules/fetch/FetchHeaders.cpp:

(WebCore::FetchHeaders::Iterator::next):
(WebCore::FetchHeaders::Iterator::Iterator):

  • Modules/fetch/FetchHeaders.h:

(WebCore::FetchHeaders::createIterator):

  • Modules/fetch/FetchHeaders.idl:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSBindingsAllInOne.cpp:
  • bindings/js/JSDOMBinding.h:

(WebCore::jsPair):

  • bindings/js/JSFetchHeadersCustom.cpp: Added.

(WebCore::JSFetchHeaders::entries):
(WebCore::JSFetchHeaders::keys):
(WebCore::JSFetchHeaders::values):

  • bindings/js/JSKeyValueIterator.h: Added.

(WebCore::JSKeyValueIteratorPrototype::create):
(WebCore::JSKeyValueIteratorPrototype::createStructure):
(WebCore::JSKeyValueIteratorPrototype::JSKeyValueIteratorPrototype):
(WebCore::createIterator):
(WebCore::DOMWrapped>::destroy):
(WebCore::DOMWrapped>::next):
(WebCore::DOMWrapped>::finishCreation):

09:39 Changeset [196127] by matthew_hanson@apple.com
  • 1 edit in branches/safari-601-branch/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm

Build fix.

09:34 Changeset [196126] by ryanhaddad@apple.com
  • 2 edits
    2 adds in trunk/LayoutTests

Rebaseline imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/select-ask-for-reset.html for ios-simulator
https://bugs.webkit.org/show_bug.cgi?id=153850

Unreviewed test gardening.

  • platform/ios-simulator/TestExpectations:
  • platform/ios-simulator/imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/select-ask-for-reset-expected.txt: Added.
09:27 Changeset [196125] by matthew_hanson@apple.com
  • 1 edit in branches/safari-601-branch/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm

Speculative Mavericks Build Fix. rdar://problem/24417428

09:12 Changeset [196124] by cdumez@apple.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed, rolling out r196067.

Re-enable speculative revalidation now that we have measured
the impact on the perf bots

Reverted changeset:

"Unreviewed, rolling out r195555."
https://bugs.webkit.org/show_bug.cgi?id=153443
http://trac.webkit.org/changeset/196067

08:57 Changeset [196123] by cdumez@apple.com
  • 43 edits
    1 delete in trunk

Merge DOMTokenList and DOMSettableTokenList
https://bugs.webkit.org/show_bug.cgi?id=153677
<rdar://problem/24419675>

Reviewed by Sam Weinig.

LayoutTests/imported/w3c:

Rebaseline several W3C tests now that more checks are passing.

  • web-platform-tests/dom/historical-expected.txt:
  • web-platform-tests/dom/interfaces-expected.txt:
  • web-platform-tests/dom/nodes/Element-classlist-expected.txt:
  • web-platform-tests/html/dom/interfaces-expected.txt:
  • web-platform-tests/html/dom/interfaces.html:

Update HTMLAreaElement.relList to match the specification.

Source/WebCore:

Merge DOMTokenList and DOMSettableTokenList, as per a recent
specification change:

No new tests, already covered by existing tests.

  • CMakeLists.txt:
  • DerivedSources.cpp:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/Element.idl:
  • dom/Node.h:
  • dom/NodeRareData.h:
  • html/AttributeDOMTokenList.h:
  • html/DOMSettableTokenList.cpp: Removed.
  • html/DOMSettableTokenList.h:
  • html/DOMSettableTokenList.idl:
  • html/DOMTokenList.cpp:

(WebCore::DOMTokenList::setValue):

  • html/DOMTokenList.h:
  • html/DOMTokenList.idl:
  • html/HTMLAnchorElement.idl:
  • html/HTMLAreaElement.idl:
  • html/HTMLElement.cpp:
  • html/HTMLElement.idl:
  • html/HTMLIFrameElement.cpp:

(WebCore::HTMLIFrameElement::sandbox):

  • html/HTMLIFrameElement.h:
  • html/HTMLIFrameElement.idl:
  • html/HTMLLinkElement.cpp:

(WebCore::HTMLLinkElement::sizes):

  • html/HTMLLinkElement.h:
  • html/HTMLLinkElement.idl:
  • html/HTMLOutputElement.cpp:

(WebCore::HTMLOutputElement::htmlFor):

  • html/HTMLOutputElement.h:
  • html/HTMLOutputElement.idl:
  • html/HTMLTableCellElement.idl:
  • page/DOMWindow.cpp:
  • page/DOMWindow.idl:

LayoutTests:

Update / rebaseline several tests now that relList attributes
use [PutForward=value].

  • fast/dom/HTMLElement/class-list-expected.txt:
  • fast/dom/HTMLElement/class-list-quirks-expected.txt:
  • fast/dom/HTMLElement/script-tests/class-list.js:
  • fast/dom/rel-list-expected.txt:
  • fast/dom/rel-list.html:
08:22 Changeset [196122] by matthew_hanson@apple.com
  • 3 edits
    2 adds in branches/safari-601.1.46-branch

Merge r195837. rdar://problem/24001782

08:22 Changeset [196121] by matthew_hanson@apple.com
  • 14 edits
    2 adds in branches/safari-601.1.46-branch

Merge r196010. rdar://problem/24416768

08:22 Changeset [196120] by matthew_hanson@apple.com
  • 4 edits
    4 adds in branches/safari-601.1.46-branch

Merge r195912. rdar://problem/24416768

08:22 Changeset [196119] by matthew_hanson@apple.com
  • 4 edits
    2 adds in branches/safari-601.1.46-branch

Merge r192570. rdar://problem/24416768

04:46 Changeset [196118] by youenn.fablet@crf.canon.fr
  • 14 edits
    2 deletes in trunk

Unreviewed. Reverting r196115 and r19116, related tohttps://bugs.webkit.org/show_bug.cgi?id=153787.

03:39 Changeset [196117] by alex@webkit.org
  • 5 edits
    2 adds in trunk/Source/WebCore

[GTK] Implement mediastream mediaplayer
https://bugs.webkit.org/show_bug.cgi?id=153541

Reviewed by Martin Robinson.

Added the implementation of the mediaplayer for the
mediastream. The code was implemented by Philippe Normand and
Alessandro Decina.

  • PlatformGTK.cmake: Added the file to the compilation.
  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::setSrcObject): Set the src of the
media element to the mediastream.

  • platform/graphics/MediaPlayer.cpp:

(WebCore::buildMediaEnginesVector): Register the mediastream
mediaplayer as an option in the media engines vector.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerOwr.cpp: Added.

(WebCore::MediaPlayerPrivateGStreamerOwr::MediaPlayerPrivateGStreamerOwr):
(WebCore::MediaPlayerPrivateGStreamerOwr::~MediaPlayerPrivateGStreamerOwr):
(WebCore::MediaPlayerPrivateGStreamerOwr::play):
(WebCore::MediaPlayerPrivateGStreamerOwr::pause):
(WebCore::MediaPlayerPrivateGStreamerOwr::hasVideo):
(WebCore::MediaPlayerPrivateGStreamerOwr::hasAudio):
(WebCore::MediaPlayerPrivateGStreamerOwr::currentTime):
(WebCore::MediaPlayerPrivateGStreamerOwr::load):
(WebCore::MediaPlayerPrivateGStreamerOwr::loadingFailed):
(WebCore::MediaPlayerPrivateGStreamerOwr::didLoadingProgress):
(WebCore::MediaPlayerPrivateGStreamerOwr::internalLoad):
(WebCore::MediaPlayerPrivateGStreamerOwr::stop):
(WebCore::MediaPlayerPrivateGStreamerOwr::registerMediaEngine):
(WebCore::MediaPlayerPrivateGStreamerOwr::getSupportedTypes):
(WebCore::MediaPlayerPrivateGStreamerOwr::supportsType):
(WebCore::MediaPlayerPrivateGStreamerOwr::isAvailable):
(WebCore::MediaPlayerPrivateGStreamerOwr::createGSTAudioSinkBin):
(WebCore::MediaPlayerPrivateGStreamerOwr::sourceStopped):
(WebCore::MediaPlayerPrivateGStreamerOwr::sourceMutedChanged):
(WebCore::MediaPlayerPrivateGStreamerOwr::sourceSettingsChanged):
(WebCore::MediaPlayerPrivateGStreamerOwr::preventSourceFromStopping):
(WebCore::MediaPlayerPrivateGStreamerOwr::createVideoSink):

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerOwr.h: Added.

(WebCore::MediaPlayerPrivateGStreamerOwr::engineDescription):
(WebCore::MediaPlayerPrivateGStreamerOwr::load):
(WebCore::MediaPlayerPrivateGStreamerOwr::cancelLoad):
(WebCore::MediaPlayerPrivateGStreamerOwr::prepareToPlay):
(WebCore::MediaPlayerPrivateGStreamerOwr::duration):
(WebCore::MediaPlayerPrivateGStreamerOwr::seek):
(WebCore::MediaPlayerPrivateGStreamerOwr::seeking):
(WebCore::MediaPlayerPrivateGStreamerOwr::setRate):
(WebCore::MediaPlayerPrivateGStreamerOwr::setPreservesPitch):
(WebCore::MediaPlayerPrivateGStreamerOwr::paused):
(WebCore::MediaPlayerPrivateGStreamerOwr::hasClosedCaptions):
(WebCore::MediaPlayerPrivateGStreamerOwr::setClosedCaptionsVisible):
(WebCore::MediaPlayerPrivateGStreamerOwr::maxTimeSeekable):
(WebCore::MediaPlayerPrivateGStreamerOwr::buffered):
(WebCore::MediaPlayerPrivateGStreamerOwr::totalBytes):
(WebCore::MediaPlayerPrivateGStreamerOwr::bytesLoaded):
(WebCore::MediaPlayerPrivateGStreamerOwr::canLoadPoster):
(WebCore::MediaPlayerPrivateGStreamerOwr::setPoster):
(WebCore::MediaPlayerPrivateGStreamerOwr::isLiveStream):
(WebCore::MediaPlayerPrivateGStreamerOwr::audioSink):

03:14 Changeset [196116] by youenn.fablet@crf.canon.fr
  • 3 edits in trunk/Source/WebCore/bindings/js

Unreviewed. Speculative Win Build fix

02:39 Changeset [196115] by youenn.fablet@crf.canon.fr
  • 15 edits
    1 copy
    1 add in trunk

[Fetch API] Add support for iterating over Headers
https://bugs.webkit.org/show_bug.cgi?id=153787

Reviewed by Darin Adler.

LayoutTests/imported/w3c:

  • web-platform-tests/fetch/api/headers/headers-basic-expected.txt:
  • web-platform-tests/fetch/api/headers/headers-basic.html:
  • web-platform-tests/fetch/api/headers/headers-structure-expected.txt:
  • web-platform-tests/fetch/api/request/request-clone.sub-expected.txt:
  • web-platform-tests/fetch/api/request/request-init-003.sub-expected.txt:
  • web-platform-tests/fetch/api/resources/utils.js: fixed typo in test.

Source/WebCore:

Covered by updated tests.
Introducing template class (JSKeyValueIterator) to support key-value iterators in DOM classes.
Using JSKeyValueIterator to implement Headers entries(), keys() and values() as custom methods.
Binding generator should be updated to generate directly these custom methods and handle iterator Symbol.

  • CMakeLists.txt:
  • Modules/fetch/FetchHeaders.cpp:

(WebCore::FetchHeaders::Iterator::next):
(WebCore::FetchHeaders::Iterator::Iterator):

  • Modules/fetch/FetchHeaders.h:

(WebCore::FetchHeaders::createIterator):

  • Modules/fetch/FetchHeaders.idl:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSDOMBinding.h:

(WebCore::jsPair):

  • bindings/js/JSBindingsAllInOne.cpp:
  • bindings/js/JSFetchHeadersCustom.cpp: Added.

(WebCore::JSFetchHeaders::entries):
(WebCore::JSFetchHeaders::keys):
(WebCore::JSFetchHeaders::values):

  • bindings/js/JSKeyValueIterator.h: Added.

(WebCore::JSKeyValueIteratorPrototype::create):
(WebCore::JSKeyValueIteratorPrototype::createStructure):
(WebCore::JSKeyValueIteratorPrototype::JSKeyValueIteratorPrototype):
(WebCore::JSKeyValueIteratorPrototypeFuncNext):

02:10 Changeset [196114] by hs85.jeong@samsung.com
  • 15 edits in trunk/LayoutTests

Unreviewed. EFL gardening after r195740.

  • platform/efl/accessibility/table-attributes-expected.txt:
  • platform/efl/accessibility/table-cell-spans-expected.txt:
  • platform/efl/accessibility/table-cells-expected.txt:
  • platform/efl/accessibility/table-sections-expected.txt:
  • platform/efl/accessibility/table-with-rules-expected.txt:
  • platform/efl/css2.1/20110323/table-height-algorithm-023-expected.txt:
  • platform/efl/css2.1/20110323/table-height-algorithm-024-expected.txt:
  • platform/efl/css3/selectors3/xml/css3-modsel-43b-expected.txt:
  • platform/efl/editing/deleting/5099303-expected.txt:
  • platform/efl/editing/deleting/5144139-2-expected.txt:
  • platform/efl/editing/deleting/5483370-expected.txt:
  • platform/efl/editing/deleting/delete-to-select-table-expected.txt:
  • platform/efl/editing/deleting/table-cells-expected.txt:
  • platform/efl/fast/text/atsui-multiple-renderers-expected.txt:
02:05 Changeset [196113] by ossy@webkit.org
  • 3 edits in trunk

Unreviewed non X86_64 buildfix after r196077.

  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/OptionsGTK.cmake:
00:25 Changeset [196112] by carlosgc@webkit.org
  • 3 edits
    2 adds in trunk

Do not show context menu when right clicking on a scrollbar
https://bugs.webkit.org/show_bug.cgi?id=153493

Reviewed by Michael Catanzaro.

Source/WebCore:

Scrollbars don't currently handle right clicks, but we are showing
the context menu when they are right clicked. This is not desired
at least in GTK+ and I've checked that it isn't consistent with
other applications in Mac either.

Test: fast/events/contextmenu-on-scrollbars.html

  • page/EventHandler.cpp:

(WebCore::EventHandler::sendContextMenuEvent):

LayoutTests:

Add a test to check that context menu event is not sent when right
clicking on a scrollbar.

  • fast/events/contextmenu-on-scrollbars-expected.txt: Added.
  • fast/events/contextmenu-on-scrollbars.html: Added.

02/03/16:

23:37 Changeset [196111] by carlosgc@webkit.org
  • 1 edit in trunk/Tools/ChangeLog

Fix a typo in Tools/ChangeLog

23:34 Changeset [196110] by carlosgc@webkit.org
  • 2 edits in trunk/Tools

[WTR] Crash in EventSendingController::contextClick() when context menu event is not handled
https://bugs.webkit.org/show_bug.cgi?id=153835

Reviewed by Martin Robinson.

WKBundlePageCopyContextMenuAtPointInWindow() returns nullptr when
the context menu event is not hanlded, but we are using the
returned value without null checking it.

  • WebKitTestRunner/InjectedBundle/EventSendingController.cpp:

(WTR::EventSendingController::contextClick):

22:07 Changeset [196109] by jmarcell@apple.com
  • 3 edits in trunk/Tools

Format revisions for display according to repository type https://bugs.webkit.org/show_bug.cgi?id=153818

Reviewed by Alexey Proskuryakov.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueueView.js:

(BuildbotQueueView.prototype._popoverLinesForCommitRange): Use new _formatRevisionForDisplay to display revisions according
to repository type.
(BuildbotQueueView.prototype._revisionContentWithPopoverForIteration): Ditto.
(BuildbotQueueView.prototype._formatRevisionForDisplay): Formats revisions for display according to repository type.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/tests/tests.js: Added unit tests to test new

_formatRevisionForDisplay function.

21:41 Changeset [196108] by utatane.tea@gmail.com
  • 7 edits in trunk/Source/JavaScriptCore

[JSC] Make some classes non JSDestructibleObject
https://bugs.webkit.org/show_bug.cgi?id=153838

Reviewed by Geoffrey Garen.

SymbolPrototype, JSMapIterator and JSSetIterator are trivially destructible.
So there is no need to inherit JSDestructibleObject.

  • runtime/JSMapIterator.cpp:

(JSC::JSMapIterator::destroy): Deleted.

  • runtime/JSMapIterator.h:
  • runtime/JSSetIterator.cpp:

(JSC::JSSetIterator::destroy): Deleted.

  • runtime/JSSetIterator.h:
  • runtime/MapData.h:
  • runtime/SymbolPrototype.h:
21:38 Changeset [196107] by utatane.tea@gmail.com
  • 2 edits
    1 add in trunk/Source/JavaScriptCore

[JSC] Symbol structure has unnecessary flags
https://bugs.webkit.org/show_bug.cgi?id=153840

Reviewed by Saam Barati.

  • runtime/Symbol.h:
  • tests/stress/symbol-get-own-property.js: Added.

(shouldBe):

21:16 Changeset [196106] by aakash_jain@apple.com
  • 2 edits in trunk/Tools

Logs/CoreSimulator filling up OS disk on WebKit testers
https://bugs.webkit.org/show_bug.cgi?id=153853
<rdar://problem/24496003>

Reviewed by Alexey Proskuryakov.

  • Scripts/webkitpy/port/ios.py:

(IOSSimulatorPort.clean_up_test_run): Delete Logs during cleanup.

19:36 Changeset [196105] by bdakin@apple.com
  • 1 edit
    2 adds in trunk/LayoutTests

Accepted candidates should not be autocorrected
https://bugs.webkit.org/show_bug.cgi?id=153813
-and corresponding-
rdar://problem/24066924

Reviewed by Darin Adler.

  • editing/mac/spelling/accept-misspelled-candidate-expected.txt: Added.
  • editing/mac/spelling/accept-misspelled-candidate.html: Added.
19:12 Changeset [196104] by akling@apple.com
  • 7 edits in trunk/Source

[iOS] Throw away linked code when navigating to a new page.
<https://webkit.org/b/153851>

Reviewed by Gavin Barraclough.

Source/JavaScriptCore:

Add a VM API for throwing away linked code only.

  • runtime/VM.cpp:

(JSC::VM::deleteAllLinkedCode):

  • runtime/VM.h:

Source/WebCore:

When navigating to a new page, tell JSC to throw out any linked code it has lying around.
Linked code is tied to a specific global object, and as we're creating a new one for the
new page, none of it is useful to us here.
In the event that the user navigates back, the cost of relinking some code will be far
lower than the memory cost of keeping all of it around.

  • bindings/js/GCController.cpp:

(WebCore::GCController::deleteAllLinkedCode):

  • bindings/js/GCController.h:
  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::commitProvisionalLoad):

17:48 Changeset [196103] by ryanhaddad@apple.com
  • 2 edits in trunk/LayoutTests

Marking http/tests/history/back-to-post.php as flaky on ios-simulator
https://bugs.webkit.org/show_bug.cgi?id=153314

Unreviewed test gardening.

  • platform/ios-simulator/TestExpectations:
17:41 Changeset [196102] by ryanhaddad@apple.com
  • 2 edits in trunk/LayoutTests

Skip imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/select-ask-for-reset.html on ios-simulator
https://bugs.webkit.org/show_bug.cgi?id=153850

Unreviewed test gardening.

  • platform/ios-simulator/TestExpectations:
17:39 Changeset [196101] by achristensen@apple.com
  • 7 edits in trunk/Source

Report wasBlocked and cannotShowURL errors when using NetworkSession
https://bugs.webkit.org/show_bug.cgi?id=153846

Reviewed by Antti Koivisto.

Source/WebCore:

No new tests, but this fixes http/tests/xmlhttprequest/redirect-cross-origin-2.html
when using NetworkSession.

  • platform/URL.h:

WEBCORE_EXPORT because we are using portAllowed in WebKit2 now.

Source/WebKit2:

  • NetworkProcess/NetworkLoad.cpp:

(WebKit::NetworkLoad::NetworkLoad):
(WebKit::NetworkLoad::didSendData):
(WebKit::NetworkLoad::wasBlocked):
(WebKit::NetworkLoad::cannotShowURL):
(WebKit::NetworkLoad::didReceiveResponseAsync):

  • NetworkProcess/NetworkLoad.h:

NetworkDataTask is now RefCounted so we can protect it when reporting errors which delete the NetworkLoad.

  • NetworkProcess/NetworkSession.h:

(WebKit::NetworkSessionTaskClient::~NetworkSessionTaskClient):
(WebKit::NetworkDataTask::create):

  • NetworkProcess/cocoa/NetworkSessionCocoa.mm:

(WebKit::NetworkSession::takeDownloadID):
(WebKit::NetworkDataTask::NetworkDataTask):
Check the validity of the requested url and check if the port is allowed like we do in the ResourceHandle constructor.
(WebKit::NetworkDataTask::~NetworkDataTask):
Don't remove the task from the NetworkSession's map if we didn't make it because there was an error.
(WebKit::NetworkDataTask::scheduleFailure):
(WebKit::NetworkDataTask::failureTimerFired):
Implemented like ResourceHandle's.
(WebKit::NetworkDataTask::tryPasswordBasedAuthentication):
(WebKit::NetworkDataTask::resume):
(WebKit::NetworkDataTask::suspend):
Handle the failure timer like we do in ResourceHandle::setDefersLoading.

17:33 Changeset [196100] by ryanhaddad@apple.com
  • 2 edits in trunk/LayoutTests

Marking displaylists tests as flaky on ios-simulator. Previous attempt was unsuccessful.
https://bugs.webkit.org/show_bug.cgi?id=153656

Unreviewed test gardening.

  • platform/ios-simulator/TestExpectations:
16:57 Changeset [196099] by ryanhaddad@apple.com
  • 2 edits in trunk/LayoutTests

Marking transitions/clip-path-transitions.html and transitions/clip-path-path-transitions.html as flaky on Mac
https://bugs.webkit.org/show_bug.cgi?id=153809

Unreviewed test gardening.

  • platform/mac/TestExpectations:
16:56 Changeset [196098] by commit-queue@webkit.org
  • 5 edits
    2 adds in trunk

Web Inspector: JS PrettyPrinting unary - and + issues
https://bugs.webkit.org/show_bug.cgi?id=134007
<rdar://problem/17351953>

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2016-02-03
Reviewed by Timothy Hatcher.

Source/WebInspectorUI:

  • UserInterface/Views/CodeMirrorFormatters.js:

(shouldHaveSpaceBeforeToken):
(shouldHaveSpaceAfterLastToken):
(removeLastNewline):
(modifyStateForTokenPre):
(modifyStateForTokenPost):

LayoutTests:

  • inspector/codemirror/prettyprinting-javascript-expected.txt:
  • inspector/codemirror/prettyprinting-javascript.html:
  • inspector/codemirror/resources/prettyprinting/javascript-tests/unary-binary-operators-expected.js: Added.
  • inspector/codemirror/resources/prettyprinting/javascript-tests/unary-binary-operators.js: Added.

New tests for unary and some binary operators in JavaScript pretty printing.

16:35 Changeset [196097] by bburg@apple.com
  • 3 edits in trunk/Tools

git-add-reviewer should work when run from a subdirectory within the repository
https://bugs.webkit.org/show_bug.cgi?id=153842

Reviewed by David Kilzer.

There are two problems that needed to be fixed:

  • We can't assume .git is in $PWD/.git
  • We can't specify absolute paths to git commit

Fix these problems using the helpers in VCSUtils that were added to
fix this same issue for prepare-changeCogs.

  • Scripts/VCSUtils.pm: Export gitDirectory()
  • Scripts/git-add-reviewer:

(nonInteractive): Cache gitDirectory() result.
(addReviewer):
(commit):
(changeLogsForCommit): Make paths relative.

16:27 Changeset [196096] by matthew_hanson@apple.com
  • 14 edits
    2 adds in branches/safari-601-branch

Merge r196010. rdar://problem/24417428

16:26 Changeset [196095] by matthew_hanson@apple.com
  • 4 edits
    4 adds in branches/safari-601-branch

Merge r195912. rdar://problem/24417428

16:26 Changeset [196094] by matthew_hanson@apple.com
  • 4 edits
    2 adds in branches/safari-601-branch

Merge r192570. rdar://problem/24417428

16:16 Changeset [196093] by jer.noble@apple.com
  • 2 edits in trunk/Tools

Yet another Yosemite build fix.

  • TestWebKitAPI/Tests/WebCore/WebCoreNSURLSession.mm:
16:05 Changeset [196092] by jer.noble@apple.com
  • 5 edits in trunk

iOS build fix after Yosemite build fix broke iOS build.

Source/WebCore:

  • platform/network/cocoa/WebCoreNSURLSession.h:
  • platform/network/cocoa/WebCoreNSURLSession.mm:

Tools:

  • TestWebKitAPI/Tests/WebCore/WebCoreNSURLSession.mm:
16:04 Changeset [196091] by cdumez@apple.com
  • 25 edits
    5 copies
    56 adds in trunk/LayoutTests

Re-sync W3C HTML web-platform-tests
https://bugs.webkit.org/show_bug.cgi?id=153832

Reviewed by Sam Weinig.

Re-sync W3C HTML web-platform-tests from:
https://github.com/w3c/web-platform-tests/tree/master/html

  • web-platform-tests/html/dom/dynamic-markup-insertion/document-writeln/document.writeln-03-expected.txt: Added.
  • web-platform-tests/html/dom/dynamic-markup-insertion/document-writeln/document.writeln-03.html: Added.
  • web-platform-tests/html/dom/dynamic-markup-insertion/document-writeln/w3c-import.log:
  • web-platform-tests/html/dom/elements-obsolete.js:
  • web-platform-tests/html/dom/interfaces-expected.txt:
  • web-platform-tests/html/dom/interfaces.html:
  • web-platform-tests/html/semantics/document-metadata/styling/LinkStyle-expected.txt: Added.
  • web-platform-tests/html/semantics/document-metadata/styling/LinkStyle.html: Added.
  • web-platform-tests/html/semantics/document-metadata/styling/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/w3c-import.log.
  • web-platform-tests/html/semantics/embedded-content/media-elements/offsets-into-the-media-resource/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/media-elements/playing-the-media-resource/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/media-elements/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/the-area-element/area-coords-expected.txt: Added.
  • web-platform-tests/html/semantics/embedded-content/the-area-element/area-coords.html: Added.
  • web-platform-tests/html/semantics/embedded-content/the-area-element/area-processing-expected.txt: Added.
  • web-platform-tests/html/semantics/embedded-content/the-area-element/area-processing.html: Added.
  • web-platform-tests/html/semantics/embedded-content/the-area-element/area-shape-expected.txt: Added.
  • web-platform-tests/html/semantics/embedded-content/the-area-element/area-shape.html: Added.
  • web-platform-tests/html/semantics/embedded-content/the-area-element/support/hit-test.js: Added.

(onload):

  • web-platform-tests/html/semantics/embedded-content/the-area-element/support/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-area-element/w3c-import.log.
  • web-platform-tests/html/semantics/embedded-content/the-area-element/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/the-canvas-element/toDataURL.nocontext.html:
  • web-platform-tests/html/semantics/embedded-content/the-embed-element/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_javascript_url_01-expected.txt: Added.
  • web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_javascript_url_01.htm: Added.
  • web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_script-expected.txt: Added.
  • web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_script.html: Added.
  • web-platform-tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_01-expected.txt: Added.
  • web-platform-tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_01.html: Added.
  • web-platform-tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_02-expected.txt: Added.
  • web-platform-tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_02.html: Added.
  • web-platform-tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_03-expected.txt: Added.
  • web-platform-tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_03.html: Added.
  • web-platform-tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_04-expected.txt: Added.
  • web-platform-tests/html/semantics/embedded-content/the-iframe-element/move_iframe_in_dom_04.html: Added.
  • web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/blank.htm: Added.
  • web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/sandbox_allow_script.html: Added.
  • web-platform-tests/html/semantics/embedded-content/the-iframe-element/support/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/track/track-element/w3c-import.log.
  • web-platform-tests/html/semantics/embedded-content/the-iframe-element/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-object-element/w3c-import.log.
  • web-platform-tests/html/semantics/embedded-content/the-img-element/w3c-import.log:
  • web-platform-tests/html/semantics/embedded-content/the-object-element/w3c-import.log:
  • web-platform-tests/html/semantics/forms/form-submission-0/url-encoded-expected.txt: Added.
  • web-platform-tests/html/semantics/forms/form-submission-0/url-encoded.html: Added.
  • web-platform-tests/html/semantics/forms/form-submission-0/w3c-import.log:
  • web-platform-tests/html/semantics/forms/textfieldselection/w3c-import.log:
  • web-platform-tests/html/semantics/forms/the-button-element/button-activate-expected.txt: Added.
  • web-platform-tests/html/semantics/forms/the-button-element/button-activate-frame.html: Added.
  • web-platform-tests/html/semantics/forms/the-button-element/button-activate.html: Added.
  • web-platform-tests/html/semantics/forms/the-button-element/button-events-expected.txt:
  • web-platform-tests/html/semantics/forms/the-button-element/button-events.html:
  • web-platform-tests/html/semantics/forms/the-button-element/w3c-import.log:
  • web-platform-tests/html/semantics/forms/the-form-element/form-elements-sameobject-expected.txt: Added.
  • web-platform-tests/html/semantics/forms/the-form-element/form-elements-sameobject.html: Added.
  • web-platform-tests/html/semantics/forms/the-form-element/w3c-import.log:
  • web-platform-tests/html/semantics/forms/the-input-element/checkbox-expected.txt:
  • web-platform-tests/html/semantics/forms/the-input-element/checkbox.html:
  • web-platform-tests/html/semantics/forms/the-input-element/maxlength-expected.txt: Added.
  • web-platform-tests/html/semantics/forms/the-input-element/maxlength.html: Added.
  • web-platform-tests/html/semantics/forms/the-input-element/radio-expected.txt:
  • web-platform-tests/html/semantics/forms/the-input-element/radio.html:
  • web-platform-tests/html/semantics/forms/the-input-element/w3c-import.log:
  • web-platform-tests/html/semantics/forms/the-option-element/option-selected-expected.txt: Added.
  • web-platform-tests/html/semantics/forms/the-option-element/option-selected.html: Added.
  • web-platform-tests/html/semantics/forms/the-option-element/w3c-import.log:
  • web-platform-tests/html/semantics/forms/the-select-element/select-ask-for-reset-expected.txt: Added.
  • web-platform-tests/html/semantics/forms/the-select-element/select-ask-for-reset.html: Added.
  • web-platform-tests/html/semantics/forms/the-select-element/w3c-import.log:
  • web-platform-tests/html/semantics/interactive-elements/the-details-element/w3c-import.log:
  • web-platform-tests/html/semantics/scripting-1/the-script-element/script-text-expected.txt:
  • web-platform-tests/html/semantics/scripting-1/the-script-element/script-text.html:
  • web-platform-tests/html/semantics/scripting-1/the-script-element/w3c-import.log:
  • web-platform-tests/html/semantics/tabular-data/the-tbody-element/rows-expected.txt: Added.
  • web-platform-tests/html/semantics/tabular-data/the-tbody-element/rows.html: Added.
  • web-platform-tests/html/semantics/tabular-data/the-tbody-element/w3c-import.log:
  • web-platform-tests/html/semantics/tabular-data/the-tfoot-element/rows-expected.txt: Added.
  • web-platform-tests/html/semantics/tabular-data/the-tfoot-element/rows.html: Added.
  • web-platform-tests/html/semantics/tabular-data/the-tfoot-element/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/w3c-import.log.
  • web-platform-tests/html/semantics/tabular-data/the-thead-element/rows-expected.txt: Added.
  • web-platform-tests/html/semantics/tabular-data/the-thead-element/rows.html: Added.
  • web-platform-tests/html/semantics/tabular-data/the-thead-element/w3c-import.log: Copied from LayoutTests/imported/w3c/web-platform-tests/html/semantics/forms/form-submission-0/w3c-import.log.
  • web-platform-tests/html/semantics/tabular-data/the-tr-element/cells-expected.txt: Added.
  • web-platform-tests/html/semantics/tabular-data/the-tr-element/cells.html: Added.
  • web-platform-tests/html/semantics/tabular-data/the-tr-element/w3c-import.log:
16:01 Changeset [196090] by bdakin@apple.com
  • 9 edits in trunk/Source/WebCore

Accepted candidates should not be autocorrected
https://bugs.webkit.org/show_bug.cgi?id=153813
-and corresponding-
rdar://problem/24066924

Reviewed by Darin Adler.

New document marker to mark inserted candidates. This was we can treat
inserted candidates just like a RejectedCorrection and we won’t accidentally
autocorrect them later on.

  • dom/DocumentMarker.h:

(WebCore::DocumentMarker::AllMarkers::AllMarkers):

  • editing/AlternativeTextController.cpp:

(WebCore::AlternativeTextController::processMarkersOnTextToBeReplacedByResult):

When handling an acceptant candidate, set m_isHandlingAcceptedCandidate to
true while the text is being inserted, and then mark the range as an accepted
candidate.

  • editing/Editor.cpp:

(WebCore::Editor::handleAcceptedCandidate):

  • editing/Editor.h:

(WebCore::Editor::isHandlingAcceptedCandidate):

If frame.editor. isHandlingAcceptedCandidate() then return early from
markMisspellingsAfterTyping.

  • editing/TypingCommand.cpp:

(WebCore::TypingCommand::markMisspellingsAfterTyping):

Add some test infrastructure.

  • testing/Internals.cpp:

(WebCore::Internals::handleAcceptedCandidate):

  • testing/Internals.h:
  • testing/Internals.idl:
16:00 Changeset [196089] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

[Win] Pass entire request (rather than just URL) to clients of WebCoreAVCFResourceLoader
https://bugs.webkit.org/show_bug.cgi?id=153653

Reviewed by Brent Fulgham.

This will allow those clients to see the byte-range request ("Range:") header and respond
appropriately.

  • platform/graphics/avfoundation/cf/WebCoreAVCFResourceLoader.cpp:

(WebCore::WebCoreAVCFResourceLoader::startLoading):

15:53 Changeset [196088] by jer.noble@apple.com
  • 5 edits in trunk

Yosemite build fix; hide the entire WebCoreNSURLSessionDataTask class from Yosemite and prior.

Source/WebCore:

  • platform/network/cocoa/WebCoreNSURLSession.h:
  • platform/network/cocoa/WebCoreNSURLSession.mm:

(-[WebCoreNSURLSessionDataTask initWithSession:identifier:URL:]):
(-[WebCoreNSURLSessionDataTask initWithSession:identifier:request:]):

Tools:

  • TestWebKitAPI/Tests/WebCore/WebCoreNSURLSession.mm:
15:30 Changeset [196087] by bshafiei@apple.com
  • 5 edits in tags/Safari-602.1.18.1.1/Source

Versioning.

15:26 Changeset [196086] by bshafiei@apple.com
  • 1 copy in tags/Safari-602.1.18.1.1

New tag.

15:06 Changeset [196085] by jh718.park@samsung.com
  • 2 edits in trunk/Tools

[Tools] Remove $additionalCMakeArgs variable because without this variable --cmakeargs options works well
https://bugs.webkit.org/show_bug.cgi?id=153827

Reviewed by Michael Catanzaro.

When an array is passed to subroutines as argument in perl,
a list containing its element is returned from the array.
Currently @$ arguments are being passed, then it is going to be one list
including all the elements not only from @ but also from $.
As a result, --cmakeargs option's value is included in @cmakeArgs
at generateBuildSystemFromCMakeProject subroutine,
so $additionalCMakeArgs doesn't needed anymore.

  • Scripts/webkitdirs.pm:

(generateBuildSystemFromCMakeProject):

15:01 Changeset [196084] by bfulgham@apple.com
  • 3 edits
    1 delete in trunk/LayoutTests

REGRESSION: LayoutTest http/tests/plugins/visible_plugins.html failing on Yosemite WK1
https://bugs.webkit.org/show_bug.cgi?id=153752

Reviewed by Alexey Proskuryakov.

Revise test to skip the plugins we expect to be displayed, and only display plugins
that are surprising.

  • http/tests/plugins/visible_plugins.html:
  • http/tests/plugins/visible_plugins-expected.txt:
  • platform/mac-wk2/http/tests/plugins/visible_plugins-expected.txt: Removed.
14:59 Changeset [196083] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

[EME][Mac] MediaKeys.createSession() fails with initData containing a contentId whose length is > 1/2 the initData.
https://bugs.webkit.org/show_bug.cgi?id=153517
<rdar://problem/24303782>

Reviewed by Eric Carlson.

The length of contentId is given in bytes, not Uint16 characters. Use the former when extracting
the contentId string from the initData.

  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:

(WebCore::MediaPlayerPrivateAVFoundation::extractKeyURIKeyIDAndCertificateFromInitData):

14:57 Changeset [196082] by jer.noble@apple.com
  • 5 edits
    4 adds in trunk

[Mac] Wrap a resource and resource loader in a NSURLSession-like object for use by lower level frameworks
https://bugs.webkit.org/show_bug.cgi?id=153669

Reviewed by Alex Christensen.

Source/WebCore:

API Test: WebCore.WebCoreNSURLSession

Add a NSURLSession-like object, which wraps a CachedResourceLoader and CachedRawResource, which we can
hand to lower-level frameworks, so that network loads by those frameworks use WebKit's loader.

  • platform/network/cocoa/WebCoreNSURLSession.h: Added.
  • platform/network/cocoa/WebCoreNSURLSession.mm: Added.

(-[WebCoreNSURLSession initWithResourceLoader:delegate:delegateQueue:]):
(-[WebCoreNSURLSession dealloc]):
(-[WebCoreNSURLSession copyWithZone:]):
(-[WebCoreNSURLSession delegateQueue]):
(-[WebCoreNSURLSession configuration]):
(-[WebCoreNSURLSession loader]):
(-[WebCoreNSURLSession finishTasksAndInvalidate]):
(-[WebCoreNSURLSession invalidateAndCancel]):
(-[WebCoreNSURLSession resetWithCompletionHandler:]):
(-[WebCoreNSURLSession flushWithCompletionHandler:]):
(-[WebCoreNSURLSession getTasksWithCompletionHandler:]):
(-[WebCoreNSURLSession getAllTasksWithCompletionHandler:]):
(-[WebCoreNSURLSession dataTaskWithRequest:]):
(-[WebCoreNSURLSession dataTaskWithURL:]):
(-[WebCoreNSURLSession uploadTaskWithRequest:fromFile:]):
(-[WebCoreNSURLSession uploadTaskWithRequest:fromData:]):
(-[WebCoreNSURLSession uploadTaskWithStreamedRequest:]):
(-[WebCoreNSURLSession downloadTaskWithRequest:]):
(-[WebCoreNSURLSession downloadTaskWithURL:]):
(-[WebCoreNSURLSession downloadTaskWithResumeData:]):
(-[WebCoreNSURLSession streamTaskWithHostName:port:]):
(-[WebCoreNSURLSession streamTaskWithNetService:]):
(-[WebCoreNSURLSession isKindOfClass:]):

Add a C++ class which can act as a CachedRawResourceClient, passing the results back to a WebCoreNSURLSessionDataTask:

(WebCore::WebCoreNSURLSessionDataTaskClient::WebCoreNSURLSessionDataTaskClient):
(WebCore::WebCoreNSURLSessionDataTaskClient::dataSent):
(WebCore::WebCoreNSURLSessionDataTaskClient::responseReceived):
(WebCore::WebCoreNSURLSessionDataTaskClient::dataReceived):
(WebCore::WebCoreNSURLSessionDataTaskClient::redirectReceived):
(WebCore::WebCoreNSURLSessionDataTaskClient::notifyFinished):

Add a NSURLSessionDataTask-like object, which takes a request, then uses it to create and wrap a CachedRawResource.
Becase NSURSessionDataTask is intended to be used off-main-thread, care must be taken to dispatch back to the main-
(or web-) thread before calling CachedRawResource functions.

(-[WebCoreNSURLSessionDataTask initWithSession:identifier:URL:]):
(-[WebCoreNSURLSessionDataTask initWithSession:identifier:request:]):
(-[WebCoreNSURLSessionDataTask copyWithZone:]):
(-[WebCoreNSURLSessionDataTask _restart]):
(-[WebCoreNSURLSessionDataTask _cancel]):
(-[WebCoreNSURLSessionDataTask _finish]):
(-[WebCoreNSURLSessionDataTask _setDefersLoading:]):
(-[WebCoreNSURLSessionDataTask cancel]):
(-[WebCoreNSURLSessionDataTask suspend]):
(-[WebCoreNSURLSessionDataTask resume]):
(-[WebCoreNSURLSessionDataTask _timingData]):
(-[WebCoreNSURLSessionDataTask resource:sentBytes:totalBytesToBeSent:]):
(-[WebCoreNSURLSessionDataTask resource:receivedResponse:]):
(-[WebCoreNSURLSessionDataTask resource:receivedData:length:]):
(-[WebCoreNSURLSessionDataTask resource:receivedRedirect:request:]):
(-[WebCoreNSURLSessionDataTask resourceFinished:]):

  • WebCore.xcodeproj/project.pbxproj: Add new files to project.

Tools:

Add an API test for WebCoreNSURLSession, testing that it behaves like a regulare NSURLSession, including
calling appropriate NSURLSessionDelegate callbacks.

Drive-by fix: Add a FeatureDefines.xcconfig to TestWebKitAPI. Without this, the ENABLE macros in WebCore
header files will not match the one used when compiling WebCore, leading to strange crashes and weird
inconsistencies when calling, e.g., inline methods.

  • TestWebKitAPI/Configurations/FeatureDefines.xcconfig: Added.
  • TestWebKitAPI/Configurations/TestWebKitAPI.xcconfig:
  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebCore/WebCoreNSURLSession.mm: Added.

(-[TestNSURLSessionLoaderDelegate webView:didCommitLoadForFrame:]):
(-[TestNSURLSessionDataDelegate URLSession:task:didCompleteWithError:]):
(-[TestNSURLSessionDataDelegate URLSession:dataTask:didReceiveResponse:completionHandler:]):
(-[TestNSURLSessionDataDelegate URLSession:dataTask:didReceiveData:]):
(TestWebKitAPI::WebCoreNSURLSessionTest::SetUp):
(TestWebKitAPI::WebCoreNSURLSessionTest::TearDown):
(TestWebKitAPI::TEST_F):

14:46 Changeset [196081] by matthew_hanson@apple.com
  • 2 edits in branches/safari-601-branch/LayoutTests

Work towards rdar://problem/24190682

14:08 Changeset [196080] by darin@apple.com
  • 34 edits in trunk/Source

Convert another batch of String::lower callsites to something better, typically convertToASCIILowercase
https://bugs.webkit.org/show_bug.cgi?id=153789

Reviewed by Sam Weinig.

Source/WebCore:

  • dom/DOMImplementation.cpp:

(WebCore::DOMImplementation::isXMLMIMEType): Use equalLettersIgnoringASCIICase
and the boolean argument to endsWith to ignore ASCII case.
(WebCore::DOMImplementation::isTextMIMEType): Ditto. Also simplified the logic
by removing an if statement.

  • dom/Document.cpp:

(WebCore::isSeparator): Deleted. Moved to WindowFeatures.cpp.
(WebCore::processArguments): Ditto.
(WebCore::Document::processViewport): Call the processFeaturesString function
from WindowFeatures.h; the code here was originally just a pasted copy of that code!
(WebCore::Document::processFormatDetection): Ditto.

  • html/HTMLCanvasElement.cpp:

(WebCore::HTMLCanvasElement::toEncodingMimeType): Remove now-unneeded
lowercasing of MIME type before calling isSupportedImageMIMETypeForEncoding,
since the MIME type registry now ignores ASCII case. Use convertToASCIILowercase
on the return value, to preserve behavior.
(WebCore::HTMLCanvasElement::toDataURL): Minor coding style tweaks.

  • html/HTMLEmbedElement.cpp:

(WebCore::HTMLEmbedElement::parseAttribute): Use convertToASCIILowercase for
the service type here.

  • html/HTMLImageElement.cpp:

(WebCore::HTMLImageElement::bestFitSourceFromPictureElement): Remove now-unneeded
lowercasing since MIME type registry now ignores ASCII case. And use
equalLettersIgnoringASCIICase for the case here.

  • html/HTMLInputElement.cpp:

(WebCore::parseAcceptAttribute): Use convertToASCIILowercase for the type here.

  • html/HTMLLinkElement.cpp:

(WebCore::HTMLLinkElement::parseAttribute): Use convertToASCIILowercase for the
media value here.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::canPlayType): Use convertToASCIILowercase for the
content type here.
(WebCore::HTMLMediaElement::selectNextSourceChild): Ditto.

  • html/HTMLObjectElement.cpp:

(WebCore::HTMLObjectElement::parseAttribute): Use convertToASCIILowercase for
the service type here.

  • html/HTMLTrackElement.cpp:

(WebCore::HTMLTrackElement::parseAttribute): Use convertToASCIILowercase for
the kind here.
(WebCore::HTMLTrackElement::ensureTrack): Ditto. Also use fastGetAttribute
since this is neither the style attribute nor an animatable SVG attribute.

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::createCaseMap): Use convertToASCIILowercase for the local names here.

  • inspector/DOMPatchSupport.cpp:

(WebCore::DOMPatchSupport::patchNode): Use containsIgnoringASCIICase instead
of combining lower with find == notFound here.
(WebCore::nodeName): Use convertToASCIILowercase here.

  • inspector/InspectorOverlay.cpp:

(WebCore::buildObjectForElementData): Use convertToASCIILowercase for node
name here.

  • inspector/InspectorPageAgent.cpp:

(WebCore::createXHRTextDecoder): Remove a now-unneeded call to lower since
DOMImplementation::isXMLMIMEType now ignores ASCII case.

  • inspector/InspectorStyleSheet.cpp:

(WebCore::lowercasePropertyName): Use convertToASCIILowercase for property
names here. Also use startsWith rather than a hand-written alternative.
(WebCore::InspectorStyle::populateAllProperties): Use the return value of
the add function to avoid doing a double hash table lookp.
(WebCore::InspectorStyle::styleWithProperties): Use convertToASCIILowercase
to lowercase the property name.

  • inspector/NetworkResourcesData.cpp:

(WebCore::createOtherResourceTextDecoder): Remove unneeded call to lower since
DOMImplement::isXMLMIMEType now ignores ASCII case.

  • loader/CrossOriginAccessControl.cpp:

(WebCore::createAccessControlPreflightRequest): Use convertToASCIILowercase
to lowercase the access control request header field value.

  • loader/cache/CachedScript.cpp:

(WebCore::CachedScript::mimeType): Use convertToASCIILowercase on the content type.

  • page/CaptionUserPreferencesMediaAF.cpp:

(WebCore::languageIdentifier): Use convertToASCIILowercase on the language code.

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::open): Call parseWindowFeatures instead of using the
constructor for WindowFeatures.
(WebCore::DOMWindow::showModalDialog): Call parseDialogFeatures instead of
using the constructor for WindowFeatures.

  • page/EventHandler.cpp:

(WebCore::findDropZone): Remove unneeded lowercasing and empty string checking,
and use the option SpaceSplitString already has to convert to lowercase.
(WebCore::EventHandler::handleAccessKey): Remove unneeded call to lower since
getElementByAccessKey now ignores case. Also tweaked coding style a bit.

  • page/OriginAccessEntry.cpp:

(WebCore::OriginAccessEntry::OriginAccessEntry): Use convertToASCIILowercase
on the protocol and host.
(WebCore::OriginAccessEntry::matchesOrigin): Ditto.

  • page/SecurityOrigin.cpp:

(WebCore::shouldTreatAsUniqueOrigin): Remove unneeded call to lower since
SchemeRegistry now ignores ASCII case.
(WebCore::SecurityOrigin::SecurityOrigin): Use convertToASCIILowercase on
the protocol and host.
(WebCore::SecurityOrigin::setDomainFromDOM): Use convertToASCIILowercase on
the domain.
(WebCore::SecurityOrigin::canDisplay): Remove call to lower since SchemeRegistry
now ignores ASCII case and because this now uses equalIgnoringASCIICase in
one place that used to use exact matching.

  • page/WindowFeatures.cpp: Refactored so this is now some helper functions

plus a struct rather than a class.
(WebCore::isSeparator): Renamed this and removed special handling for NUL.
(WebCore::parseWindowFeatures): Moved the code that was formerly in the
WindowFeatures constructor in here. Refactored the parsing into the
processFeaturesString function, shared with the functions in Document that
do the same kind of parsing. Removed the code that converts the entire string
to lowercase before parsing.
(WebCore::processFeaturesString): Moved the improved version of this function
here from Document.cpp; more efficient because it doesn't allocate strings.
(WebCore::setWindowFeature): Changed to be a function private to this file
with internal linkage. Use equalLettersIgnoringASCIICase so we no longer
rely on converting the string to lowercase before parsing.
(WebCore::parseDialogFeatures): Similar refactoring, but also changed all
the default handling to use Optional<> instead of default values.
(WebCore::boolFeature): Changed to use option and to ignore ASCII case.
(WebCore::floatFeature): Ditto.
(WebCore::parseDialogFeaturesMap): Removed the calls to lower, which are
not needed any more.

  • page/WindowFeatures.h: Added default values for all the data members,

and removed all the functions from the WindowFeatures struct. Added the two
functions for parsing window and dialog features. Also added the
processFeaturesString function so we can share it with Document.cpp.

  • platform/SchemeRegistry.cpp:

(WebCore::SchemeRegistry::removeURLSchemeRegisteredAsLocal): Use
equalLettersIgnoringASCIICase to ignore ASCII case.

  • platform/efl/MIMETypeRegistryEfl.cpp:

(WebCore::MIMETypeRegistry::getMIMETypeForExtension): Use a modern for loop,
and equalIgnoringASCIICase rather than calling lower.

  • platform/graphics/MediaPlayer.cpp:

(WebCore::MediaPlayer::load): Use convertToASCIILowercase on MIME type and
key system.
(WebCore::MediaPlayer::generateKeyRequest): Ditto.
(WebCore::MediaPlayer::addKey): Ditto.
(WebCore::MediaPlayer::cancelKeyRequest): Ditto.

  • platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:

(WebCore::Extensions3DOpenGLCommon::Extensions3DOpenGLCommon): Use
convertToASCIILowercase on vendor string.

  • platform/gtk/MIMETypeRegistryGtk.cpp:

(WebCore::MIMETypeRegistry::getMIMETypeForExtension): Use a modern for loop,
and equalIgnoringASCIICase rather than calling lower.

  • platform/mac/PasteboardMac.mm:

(WebCore::cocoaTypeFromHTMLClipboardType): Use convertToASCIILowercase
on the type. Also did a bit of renaming and tweaking the logic.

Source/WTF:

  • wtf/text/StringView.h:

(WTF::StringView::toInt): Added an overload without the out parameter.

13:54 Changeset [196079] by cdumez@apple.com
  • 18 edits
    1 copy
    1 move
    11 adds in trunk/LayoutTests/imported/w3c

Re-sync W3C DOM web-platform-tests
https://bugs.webkit.org/show_bug.cgi?id=153831

Reviewed by Darin Adler.

Re-sync W3C DOM web-platform-tests from:
https://github.com/w3c/web-platform-tests/tree/master/dom

  • web-platform-tests/dom/collections/domstringmap-supported-property-names-expected.txt: Added.
  • web-platform-tests/dom/collections/domstringmap-supported-property-names.html: Added.
  • web-platform-tests/dom/collections/namednodemap-supported-property-names-expected.txt: Added.
  • web-platform-tests/dom/collections/namednodemap-supported-property-names.html: Added.
  • web-platform-tests/dom/collections/w3c-import.log:
  • web-platform-tests/dom/events/Event-dispatch-propagation-stopped-expected.txt: Added.
  • web-platform-tests/dom/events/Event-dispatch-propagation-stopped.html: Added.
  • web-platform-tests/dom/events/w3c-import.log:
  • web-platform-tests/dom/historical-expected.txt:
  • web-platform-tests/dom/historical.html:
  • web-platform-tests/dom/interface-objects-expected.txt:
  • web-platform-tests/dom/interface-objects.html:
  • web-platform-tests/dom/interfaces-expected.txt:
  • web-platform-tests/dom/interfaces.html:
  • web-platform-tests/dom/nodes/DOMImplementation-createDocument-expected.txt:
  • web-platform-tests/dom/nodes/DOMImplementation-createDocument.html:
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/empty.html: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/empty.svg: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/empty.xhtml: Added.
  • web-platform-tests/dom/nodes/Document-createElement-namespace-tests/empty.xml: Added.
  • web-platform-tests/dom/nodes/Element-classlist-expected.txt:
  • web-platform-tests/dom/nodes/Element-classlist.html:
  • web-platform-tests/dom/nodes/Node-contains-xhtml-expected.txt: Added.
  • web-platform-tests/dom/nodes/Node-contains-xhtml.xhtml: Added.
  • web-platform-tests/dom/nodes/Node-isEqualNode-expected.txt:
  • web-platform-tests/dom/nodes/Node-isEqualNode-xhtml-expected.txt: Copied from LayoutTests/imported/w3c/web-platform-tests/dom/nodes/Node-isEqualNode-expected.txt.
  • web-platform-tests/dom/nodes/Node-isEqualNode-xhtml.xhtml: Renamed from LayoutTests/imported/w3c/web-platform-tests/dom/nodes/Node-isEqualNode.xhtml.
  • web-platform-tests/dom/nodes/Node-isEqualNode.html: Added.
  • web-platform-tests/dom/nodes/attributes-expected.txt:
  • web-platform-tests/dom/nodes/attributes.html:
  • web-platform-tests/dom/nodes/w3c-import.log:
  • web-platform-tests/dom/ranges/Range-constructor-expected.txt: Added.
  • web-platform-tests/dom/ranges/Range-constructor.html: Added.
  • web-platform-tests/dom/ranges/w3c-import.log:
  • web-platform-tests/dom/w3c-import.log:
13:26 Changeset [196078] by ryanhaddad@apple.com
  • 2 edits in trunk/LayoutTests

Skip http/tests/contentdispositionattachmentsandbox/form-submission-disabled.html on ios-simulator until it can be rewritten.
https://bugs.webkit.org/show_bug.cgi?id=152993

Unreviewed test gardening.

  • platform/ios-simulator/TestExpectations:
13:21 Changeset [196077] by mcatanzaro@igalia.com
  • 13 edits in trunk

[GTK][EFL] Switch FTL to B3
https://bugs.webkit.org/show_bug.cgi?id=153478

Reviewed by Csaba Osztrogonác.

.:

  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/OptionsGTK.cmake:

Source/JavaScriptCore:

Conditionalize code to make it possible to build FTL completely without LLVM.

  • CMakeLists.txt:
  • dfg/DFGCommon.h:
  • dfg/DFGPlan.cpp:

(JSC::DFG::Plan::compileInThreadImpl):

  • ftl/FTLAbbreviatedTypes.h:
  • ftl/FTLFail.cpp:

(JSC::FTL::fail):

  • ftl/FTLState.cpp:

(JSC::FTL::State::State):
(JSC::FTL::State::~State):

Source/WTF:

Enable B3 by default on all x86.

  • wtf/Platform.h:
13:10 Changeset [196076] by hyatt@apple.com
  • 2 edits in trunk/Source/WebInspectorUI

Add hanging-punctuation property to Web Inspector
https://bugs.webkit.org/show_bug.cgi?id=153841

Reviewed by Zalan Bujtas.

  • UserInterface/Models/CSSKeywordCompletions.js:
12:54 Changeset [196075] by hyatt@apple.com
  • 14 edits
    3 adds in trunk

Implement hanging-punctuation property parsing.
https://bugs.webkit.org/show_bug.cgi?id=18109.

Reviewed by Zalan Bujtas.

Source/WebCore:

Added parsing test in fast/css.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::renderEmphasisPositionFlagsToCSSValue):
(WebCore::hangingPunctuationToCSSValue):
(WebCore::fillRepeatToCSSValue):
(WebCore::ComputedStyleExtractor::propertyValue):

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseTextIndent):
(WebCore::CSSParser::parseHangingPunctuation):
(WebCore::CSSParser::parseLineBoxContain):

  • css/CSSParser.h:
  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator HangingPunctuation):
(WebCore::CSSPrimitiveValue::operator LineBreak):

  • css/CSSPropertyNames.in:
  • css/CSSValueKeywords.in:
  • css/StyleBuilderConverter.h:

(WebCore::StyleBuilderConverter::convertRegionBreakInside):
(WebCore::StyleBuilderConverter::convertHangingPunctuation):

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::changeRequiresLayout):

  • rendering/style/RenderStyle.h:
  • rendering/style/RenderStyleConstants.h:

(WebCore::operator| ):
(WebCore::operator|= ):

  • rendering/style/StyleRareInheritedData.cpp:

(WebCore::StyleRareInheritedData::StyleRareInheritedData):
(WebCore::StyleRareInheritedData::operator==):

  • rendering/style/StyleRareInheritedData.h:

LayoutTests:

  • fast/css/parsing-hanging-punctuation-expected.txt: Added.
  • fast/css/parsing-hanging-punctuation.html: Added.
  • fast/css/resources/parsing-hanging-punctuation.js: Added.

(test):

12:15 Changeset [196074] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Uncaught exception TimelineRuler.prototype.resize no longer exists
https://bugs.webkit.org/show_bug.cgi?id=153839

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2016-02-03
Reviewed by Brian Burg.

  • UserInterface/Views/MemoryTimelineView.js:

(WebInspector.MemoryTimelineView.prototype.shown):
After r195995 the resize method was eliminated in favor of this approach.

12:14 Changeset [196073] by jeffm@apple.com
  • 2 edits in branches/safari-601-branch/Source/WebKit2

Update WebKit2.framework copyright string to include 2016.

This framework no longer exists on trunk, so we missed this as part of the merge of r194479.

  • mac/Info-WebKit2.plist:
10:58 Changeset [196072] by achristensen@apple.com
  • 2 edits in trunk/Source/WebKit2

Use proposed credentials in authentication challenges with NetworkSession
https://bugs.webkit.org/show_bug.cgi?id=153811

Reviewed by Darin Adler.

This fixes http/tests/xmlhttprequest/basic-auth-default.html

  • NetworkProcess/cocoa/NetworkSessionCocoa.mm:

(WebKit::NetworkDataTask::tryPasswordBasedAuthentication):
Use the proposed credential if there is one. This matches behavior in
ResourceHandle::tryHandlePasswordBasedAuthentication.

10:21 Changeset [196071] by andersca@apple.com
  • 2 edits in trunk/Source/WTF

Fix BlockPtr's call operator
https://bugs.webkit.org/show_bug.cgi?id=153836

Reviewed by Enrica Casucci.

  • wtf/BlockPtr.h:
09:59 Changeset [196070] by jberlin@webkit.org
  • 7 edits in trunk/Source

Build fix.

[NSEvent context] has always returned nil. Replace uses with nullptr.

Source/WebCore:

  • page/mac/EventHandlerMac.mm:

(WebCore::EventHandler::sendFakeEventsAfterWidgetTracking):

Source/WebKit/mac:

  • WebView/WebHTMLView.mm:

(-[WebHTMLView _postFakeMouseMovedEventForFlagsChangedEvent:]):
(-[WebHTMLView _updateMouseoverWithFakeEvent]):
(-[WebHTMLView _updateMouseoverWithEvent:]):
(-[WebHTMLView _autoscroll]):
(-[WebHTMLView draggedImage:endedAt:operation:]):

Source/WebKit2:

  • UIProcess/Cocoa/WebViewImpl.mm:

(WebKit::WebViewImpl::postFakeMouseMovedEventForFlagsChangedEvent):

  • UIProcess/mac/WebPopupMenuProxyMac.mm:

(WebKit::WebPopupMenuProxyMac::showPopupMenu):

09:51 Changeset [196069] by ryanhaddad@apple.com
  • 2 edits in trunk/LayoutTests

Skip fast/forms/input-user-input-sanitization.html on ios-simulator
https://bugs.webkit.org/show_bug.cgi?id=152306

Unreviewed test gardening.

  • platform/ios-simulator/TestExpectations:
09:49 Changeset [196068] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

[iOS] Engineering builds use manual sandboxing, but don’t need to
https://bugs.webkit.org/show_bug.cgi?id=153834

Reviewed by Anders Carlsson.

Now that engineering builds use the non-re-execing variant of XPC services, they can be
statically sandboxed and no longer need to be manually sandboxed.

  • Configurations/DebugRelease.xcconfig: Don’t set WK_MANUAL_SANDBOXING_ENABLED to YES.
  • WebKit2.xcodeproj/project.pbxproj: Let Xcode make changes to the built product references.
09:09 Changeset [196067] by cdumez@apple.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed, rolling out r195555.

Temporarily disable speculative revalidation to measure the
impact on the bots

Reverted changeset:

"[WK2][NetworkCache] Enable speculative revalidation"
https://bugs.webkit.org/show_bug.cgi?id=153443
http://trac.webkit.org/changeset/195555

08:34 Changeset [196066] by dbates@webkit.org
  • 2 edits in trunk/Source/WebKit2

REGRESSION (r194660): Legacy WebProcess crashes in ChildProcess::initializeSandbox()
https://bugs.webkit.org/show_bug.cgi?id=153734
<rdar://problem/24433179>

Reviewed by Dan Bernstein.

Fixes an issue where clients that used the legacy WebProcess bootstrapping process would crash.

Additionally, only consider the extra initialization parameter user-directory-suffix for
unsigned apps (e.g. WebKitTestRunner).

  • Shared/mac/ChildProcessMac.mm:

(WebKit::ChildProcess::initializeSandbox):

03:38 Changeset [196065] by commit-queue@webkit.org
  • 6 edits in trunk/Tools

[webkitdirs] Clarify logic behind is{PortName} functions.
https://bugs.webkit.org/show_bug.cgi?id=153554

Patch by Konstantin Tokarev <annulen@yandex.ru> on 2016-02-03
Reviewed by Michael Catanzaro.

  • Scripts/webkitdirs.pm:

(prohibitUnknownPort): This function makes determinePortName()
failure fatal.
(determinePortName): Added new function which decides which port are
we building based on command line switches and platform defaults.
(portName): Added getter for determined $portName.
(isEfl): Modified to use portName().
(isGtk): Ditto.
(isWinCairo): Ditto.
(isAppleMacWebKit): Ditto.
(isAppleWinWebKit): Ditto.
(isIOSWebKit): Ditto.
(cmakeBasedPortName): Return portName() with capitalized first letter.
(determineIsEfl): Deleted.
(determineIsGtk): Deleted.
(determineIsWinCairo): Deleted.

  • Scripts/build-jsc: Call prohibitUnknownPort().
  • Scripts/run-minibrowser: Ditto.
  • Scripts/webkitperl/FeatureList.pm: Ditto.
  • Scripts/update-webkit: Call determinePortName() instead of

determineIsWinCairo().

03:29 Changeset [196064] by ossy@webkit.org
  • 2 edits in trunk/Source/WebKit2

Unreviewed speculative buildfix after r195979.

  • PlatformMac.cmake:
03:13 Changeset [196063] by hs85.jeong@samsung.com
  • 254 edits in trunk/LayoutTests

Unreviewed. EFL gardening: rebaseline tests after r195740.

  • platform/efl/css1/box_properties/border_width_inline-expected.txt:
  • platform/efl/css1/formatting_model/floating_elements-expected.txt:
  • platform/efl/css2.1/t080301-c411-vt-mrgn-00-b-expected.txt:
  • platform/efl/css2.1/t0805-c5511-brdr-tw-00-b-expected.txt:
  • platform/efl/css2.1/t0805-c5513-brdr-bw-00-b-expected.txt:
  • platform/efl/css2.1/t0805-c5518-brdr-t-01-e-expected.txt:
  • platform/efl/css2.1/t0805-c5519-brdr-r-01-e-expected.txt:
  • platform/efl/css2.1/t0805-c5520-brdr-b-01-e-expected.txt:
  • platform/efl/css2.1/t0805-c5521-brdr-l-01-e-expected.txt:
  • platform/efl/css2.1/t0805-c5522-brdr-02-e-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-00-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-01-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-02-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-03-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-05-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-07-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-09-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-10-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-11-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-12-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-15-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-19-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-20-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-21-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-22-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-23-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-26-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-27-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-28-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-29-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-32-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-33-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-35-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-36-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-37-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-38-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-39-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-40-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-41-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-42-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-43-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-45-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-46-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-47-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-48-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-49-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-50-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-51-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-53-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-55-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-56-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-57-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-58-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-60-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-61-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-62-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-63-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-66-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-67-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-68-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-69-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-72-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-73-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-75-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-76-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-77-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-78-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-79-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-80-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-81-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-82-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-83-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-86-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-87-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-88-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-89-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-90-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-91-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-92-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-93-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-95-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-96-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-97-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-98-d-expected.txt:
  • platform/efl/css2.1/t170602-bdr-conflct-w-99-d-expected.txt:
  • platform/efl/css3/css3-modsel-33-expected.txt:
  • platform/efl/css3/flexbox/flexbox-baseline-expected.txt:
  • platform/efl/css3/selectors3/html/css3-modsel-161-expected.txt:
  • platform/efl/css3/selectors3/html/css3-modsel-18b-expected.txt:
  • platform/efl/css3/selectors3/html/css3-modsel-28-expected.txt:
  • platform/efl/css3/selectors3/html/css3-modsel-28b-expected.txt:
  • platform/efl/css3/selectors3/html/css3-modsel-32-expected.txt:
  • platform/efl/css3/selectors3/html/css3-modsel-43-expected.txt:
  • platform/efl/css3/selectors3/html/css3-modsel-43b-expected.txt:
  • platform/efl/css3/selectors3/html/css3-modsel-44-expected.txt:
  • platform/efl/css3/selectors3/html/css3-modsel-44b-expected.txt:
  • platform/efl/css3/selectors3/html/css3-modsel-74-expected.txt:
  • platform/efl/css3/selectors3/html/css3-modsel-74b-expected.txt:
  • platform/efl/css3/selectors3/html/css3-modsel-78-expected.txt:
  • platform/efl/css3/selectors3/html/css3-modsel-78b-expected.txt:
  • platform/efl/css3/selectors3/xhtml/css3-modsel-161-expected.txt:
  • platform/efl/css3/selectors3/xhtml/css3-modsel-18b-expected.txt:
  • platform/efl/css3/selectors3/xhtml/css3-modsel-28-expected.txt:
  • platform/efl/css3/selectors3/xhtml/css3-modsel-28b-expected.txt:
  • platform/efl/css3/selectors3/xhtml/css3-modsel-32-expected.txt:
  • platform/efl/css3/selectors3/xhtml/css3-modsel-43-expected.txt:
  • platform/efl/css3/selectors3/xhtml/css3-modsel-43b-expected.txt:
  • platform/efl/css3/selectors3/xhtml/css3-modsel-44-expected.txt:
  • platform/efl/css3/selectors3/xhtml/css3-modsel-44b-expected.txt:
  • platform/efl/css3/selectors3/xhtml/css3-modsel-74-expected.txt:
  • platform/efl/css3/selectors3/xhtml/css3-modsel-74b-expected.txt:
  • platform/efl/css3/selectors3/xhtml/css3-modsel-78-expected.txt:
  • platform/efl/css3/selectors3/xhtml/css3-modsel-78b-expected.txt:
  • platform/efl/css3/selectors3/xml/css3-modsel-161-expected.txt:
  • platform/efl/css3/selectors3/xml/css3-modsel-18b-expected.txt:
  • platform/efl/css3/selectors3/xml/css3-modsel-28-expected.txt:
  • platform/efl/css3/selectors3/xml/css3-modsel-28b-expected.txt:
  • platform/efl/css3/selectors3/xml/css3-modsel-32-expected.txt:
  • platform/efl/css3/selectors3/xml/css3-modsel-43-expected.txt:
  • platform/efl/css3/selectors3/xml/css3-modsel-44-expected.txt:
  • platform/efl/css3/selectors3/xml/css3-modsel-44b-expected.txt:
  • platform/efl/css3/selectors3/xml/css3-modsel-74-expected.txt:
  • platform/efl/css3/selectors3/xml/css3-modsel-74b-expected.txt:
  • platform/efl/css3/selectors3/xml/css3-modsel-78-expected.txt:
  • platform/efl/css3/selectors3/xml/css3-modsel-78b-expected.txt:
  • platform/efl/editing/inserting/5058163-1-expected.txt:
  • platform/efl/editing/inserting/insert-paragraph-01-expected.txt:
  • platform/efl/editing/inserting/insert-paragraph-02-expected.txt:
  • platform/efl/editing/inserting/paragraph-separator-in-table-2-expected.txt:
  • platform/efl/editing/selection/4818145-expected.txt:
  • platform/efl/editing/selection/4889598-expected.txt:
  • platform/efl/editing/selection/4895428-2-expected.txt:
  • platform/efl/editing/selection/5076323-1-expected.txt:
  • platform/efl/editing/selection/5076323-2-expected.txt:
  • platform/efl/editing/selection/5076323-3-expected.txt:
  • platform/efl/editing/selection/7152-1-expected.txt:
  • platform/efl/editing/selection/7152-2-expected.txt:
  • platform/efl/editing/selection/display-table-text-expected.txt:
  • platform/efl/editing/selection/iframe-expected.txt:
  • platform/efl/editing/selection/inline-table-expected.txt:
  • platform/efl/editing/selection/mixed-editability-3-expected.txt:
  • platform/efl/editing/selection/mixed-editability-4-expected.txt:
  • platform/efl/editing/selection/mixed-editability-5-expected.txt:
  • platform/efl/editing/selection/mixed-editability-8-expected.txt:
  • platform/efl/editing/selection/mixed-editability-9-expected.txt:
  • platform/efl/editing/selection/table-caret-1-expected.txt:
  • platform/efl/editing/selection/table-caret-2-expected.txt:
  • platform/efl/editing/selection/table-caret-3-expected.txt:
  • platform/efl/editing/style/5017613-1-expected.txt:
  • platform/efl/editing/style/5017613-2-expected.txt:
  • platform/efl/editing/style/apple-style-editable-mix-expected.txt:
  • platform/efl/editing/style/table-selection-expected.txt:
  • platform/efl/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.txt:
  • platform/efl/fast/block/float/011-expected.txt:
  • platform/efl/fast/block/margin-collapse/001-expected.txt:
  • platform/efl/fast/block/margin-collapse/005-expected.txt:
  • platform/efl/fast/block/margin-collapse/104-expected.txt:
  • platform/efl/fast/block/margin-collapse/block-inside-inline/001-expected.txt:
  • platform/efl/fast/block/margin-collapse/block-inside-inline/005-expected.txt:
  • platform/efl/fast/block/positioning/053-expected.txt:
  • platform/efl/fast/borders/bidi-009a-expected.txt:
  • platform/efl/fast/box-shadow/basic-shadows-expected.txt:
  • platform/efl/fast/css-generated-content/015-expected.txt:
  • platform/efl/fast/css-generated-content/inline-display-types-expected.txt:
  • platform/efl/fast/css-generated-content/table-before-after-child-add-expected.txt:
  • platform/efl/fast/css-generated-content/table-cell-before-content-expected.txt:
  • platform/efl/fast/css-generated-content/table-row-before-after-child-add-expected.txt:
  • platform/efl/fast/css-generated-content/table-row-before-after-expected.txt:
  • platform/efl/fast/css-generated-content/table-table-before-after-child-add-expected.txt:
  • platform/efl/fast/css/first-letter-float-expected.txt:
  • platform/efl/fast/dynamic/007-expected.txt:
  • platform/efl/fast/dynamic/014-expected.txt:
  • platform/efl/fast/dynamic/015-expected.txt:
  • platform/efl/fast/dynamic/create-renderer-for-whitespace-only-text-expected.txt:
  • platform/efl/fast/forms/button-white-space-expected.txt:
  • platform/efl/fast/forms/file/file-input-direction-expected.txt:
  • platform/efl/fast/forms/form-added-to-table-expected.txt:
  • platform/efl/fast/forms/input-double-click-selection-gap-bug-expected.txt:
  • platform/efl/fast/forms/input-value-expected.txt:
  • platform/efl/fast/invalid/table-inside-stray-table-content-expected.txt:
  • platform/efl/fast/invalid/td-inside-object-expected.txt:
  • platform/efl/fast/lists/ordered-list-with-no-ol-tag-expected.txt:
  • platform/efl/fast/overflow/overflow-auto-table-expected.txt:
  • platform/efl/fast/replaced/width100percent-button-expected.txt:
  • platform/efl/fast/ruby/ruby-inline-table-expected.txt:
  • platform/efl/fast/selectors/018-expected.txt:
  • platform/efl/fast/selectors/018b-expected.txt:
  • platform/efl/fast/selectors/032-expected.txt:
  • platform/efl/fast/selectors/043-expected.txt:
  • platform/efl/fast/selectors/043b-expected.txt:
  • platform/efl/fast/selectors/044-expected.txt:
  • platform/efl/fast/selectors/044b-expected.txt:
  • platform/efl/fast/selectors/078b-expected.txt:
  • platform/efl/fast/table/001-expected.txt:
  • platform/efl/fast/table/004-expected.txt:
  • platform/efl/fast/table/006-expected.txt:
  • platform/efl/fast/table/010-expected.txt:
  • platform/efl/fast/table/011-expected.txt:
  • platform/efl/fast/table/015-expected.txt:
  • platform/efl/fast/table/016-expected.txt:
  • platform/efl/fast/table/022-expected.txt:
  • platform/efl/fast/table/026-expected.txt:
  • platform/efl/fast/table/033-expected.txt:
  • platform/efl/fast/table/035-expected.txt:
  • platform/efl/fast/table/035-vertical-expected.txt:
  • platform/efl/fast/table/037-expected.txt:
  • platform/efl/fast/table/041-expected.txt:
  • platform/efl/fast/table/auto-with-percent-height-expected.txt:
  • platform/efl/fast/table/auto-with-percent-height-vertical-expected.txt:
  • platform/efl/fast/table/border-collapsing/002-vertical-expected.txt:
  • platform/efl/fast/table/cell-coalescing-expected.txt:
  • platform/efl/fast/table/cellindex-expected.txt:
  • platform/efl/fast/table/colgroup-preceded-by-caption-expected.txt:
  • platform/efl/fast/table/colgroup-spanning-groups-rules-expected.txt:
  • platform/efl/fast/table/dynamic-descendant-percentage-height-expected.txt:
  • platform/efl/fast/table/floating-th-expected.txt:
  • platform/efl/fast/table/generated-caption-expected.txt:
  • platform/efl/fast/table/insert-before-anonymous-ancestors-expected.txt:
  • platform/efl/fast/table/insert-cell-before-form-expected.txt:
  • platform/efl/fast/table/insert-row-before-form-expected.txt:
  • platform/efl/fast/table/multiple-captions-display-expected.txt:
  • platform/efl/fast/table/nested-percent-height-table-expected.txt:
  • platform/efl/fast/table/quote-text-around-iframe-expected.txt:
  • platform/efl/fast/table/rowindex-expected.txt:
  • platform/efl/fast/table/rtl-cell-display-none-assert-expected.txt:
  • platform/efl/fast/table/rules-attr-dynchange1-expected.txt:
  • platform/efl/fast/table/rules-attr-dynchange2-expected.txt:
  • platform/efl/fast/table/table-after-child-in-table-expected.txt:
  • platform/efl/fast/table/table-and-parts-outline-expected.txt:
  • platform/efl/fast/table/table-before-child-in-table-expected.txt:
  • platform/efl/fast/table/table-cell-after-child-in-block-expected.txt:
  • platform/efl/fast/table/table-cell-after-child-in-table-expected.txt:
  • platform/efl/fast/table/table-cell-before-child-in-block-expected.txt:
  • platform/efl/fast/table/table-continuation-outline-paint-crash-expected.txt:
  • platform/efl/fast/table/table-hspace-align-center-expected.txt:
  • platform/efl/fast/table/table-row-after-child-in-block-expected.txt:
  • platform/efl/fast/table/table-row-after-child-in-table-expected.txt:
  • platform/efl/fast/table/table-row-before-child-in-block-expected.txt:
  • platform/efl/fast/table/table-row-before-child-in-table-expected.txt:
  • platform/efl/fast/table/tableInsideCaption-expected.txt:
  • platform/efl/fast/table/text-field-baseline-expected.txt:
  • platform/efl/fast/table/unbreakable-images-quirk-expected.txt:
  • platform/efl/fast/table/vertical-align-baseline-expected.txt:
  • platform/efl/fast/text/basic/001-expected.txt:
  • platform/efl/fast/text/basic/006-expected.txt:
  • platform/efl/fast/text/basic/007-expected.txt:
  • platform/efl/fast/text/capitalize-boundaries-expected.txt:
  • platform/efl/fast/text/hyphenate-locale-expected.txt:
  • platform/efl/fast/text/international/bidi-layout-across-linebreak-expected.txt:
  • platform/efl/fast/text/whitespace/024-expected.txt:
  • platform/efl/fast/text/whitespace/027-expected.txt:
  • platform/efl/fast/text/word-break-expected.txt:
  • platform/efl/fast/transforms/transform-table-row-expected.txt:
03:04 Changeset [196062] by carlosgc@webkit.org
  • 3 edits in trunk/Source/WebKit2

[GTK] Reduce IPC traffic due to view state changes
https://bugs.webkit.org/show_bug.cgi?id=153745

Reviewed by Sergio Villar Senin.

Very often view state changes happen one after another in a very
short period of time, even in the same run loop iteration. For
example, when you switch to the web view window, the view is
focused and the active window flag changes as well. In that case
we are sending two messages to the web process and the page
updates its status according to the new flags in two steps. So, we
could group all state changes happening in the same run loop
iteration and notify about them all in the next iteration. This
also prevents unnecessary changes of state when we quickly go back
to a previous state, for example in focus follows mouse
configurations if you move the mouse outside the window and then
inside the window again quickly.

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(_WebKitWebViewBasePrivate::_WebKitWebViewBasePrivate): Use
VirewState::Flags to keep the web view state instead of
boolean, and also to keep the flags that need to be updated. Use a
timer to update web view state flags.
(_WebKitWebViewBasePrivate::updateViewStateTimerFired): Call
WebPageProxy::viewStateDidChange() and reset the flags that need
to be updated.
(webkitWebViewBaseScheduleUpdateViewState): Update the flags that
need to be updated and schedule the timer if it's not active.
(toplevelWindowFocusInEvent): Use the flags and schedule an update.
(toplevelWindowFocusOutEvent): Ditto.
(toplevelWindowStateEvent): Also mark the view as hidden when minimized.
(webkitWebViewBaseSetToplevelOnScreenWindow): Connect to
window-state-event instead of deprecated visibility-notify-event.
(webkitWebViewBaseMap): Use the flags and schedule an update.
(webkitWebViewBaseUnmap): Ditto.
(webkitWebViewBaseSetFocus): Ditto.
(webkitWebViewBaseIsInWindowActive): Use the flags.
(webkitWebViewBaseIsFocused): Ditto
(webkitWebViewBaseIsVisible): Ditto.
(webkitWebViewBaseIsInWindow): Removed this since it was unused.

  • UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
02:37 Changeset [196061] by carlosgc@webkit.org
  • 4 edits in trunk

[GTK] Layout Test http/tests/appcache/different-https-origin-resource-main.html is failing
https://bugs.webkit.org/show_bug.cgi?id=145253

Reviewed by Michael Catanzaro.

Source/WebCore:

The problem is that when the load is cancelled while the
connection is still being established,
SoupMessage::notify::tls-errors is emitted and the handler calls
ResourceHandleClient::didFail() which can delete the ResourceHandle.

  • platform/network/soup/ResourceHandleSoup.cpp:

(WebCore::tlsErrorsChangedCallback): Protect the ResourceHandle
for the scope of the callback because
ResourceHandleClient::didFail() could delete the object.

LayoutTests:

Update test expectation.

  • platform/gtk/TestExpectations:
02:31 Changeset [196060] by carlosgc@webkit.org
  • 4 edits in trunk

REGRESSION(r191948): [GStreamer] 4 new timeouts on layout tests.
https://bugs.webkit.org/show_bug.cgi?id=152797

Reviewed by Darin Adler.

Source/WebCore:

Always schedule messages to the main thread, even when the bus
sync handlder was called in the main thread. It seems that
GStreamer expects things to happen in the next main loop
iteration.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):

LayoutTests:

Update test expectations.

  • platform/gtk/TestExpectations:
01:56 Changeset [196059] by carlosgc@webkit.org
  • 2 edits in trunk/Source/WebKit2

Unreviewed. Fix incorrect ASSERT introduced in r196053.

  • WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:

(WebKit::NetscapePluginX11::paint): Ensure the plugin is not
windowed if paint() is called.

01:54 Changeset [196058] by zandobersek@gmail.com
  • 3 edits in trunk/Source/WebCore

[TexMap] CompositingCoordinator should store the overlay layer, flush it as appropriate
https://bugs.webkit.org/show_bug.cgi?id=152058

Reviewed by Michael Catanzaro.

Previously, the CompositingCoordinator only added the overlay layer to the
layer tree, but flushing its compositing state is also required. For that to
happen, CompositingCoordinator has to store a pointer to the overlay layer
object and flush it in ::flushPendingLayerChanges().

Overlay layers are most prominently used by the Web Inspector to highlight
the DOM elements on the Web page that are being hovered in the inspector.

  • platform/graphics/texmap/coordinated/CompositingCoordinator.cpp:

(WebCore::CompositingCoordinator::CompositingCoordinator):
(WebCore::CompositingCoordinator::setRootCompositingLayer):
(WebCore::CompositingCoordinator::flushPendingLayerChanges):

  • platform/graphics/texmap/coordinated/CompositingCoordinator.h:
00:48 Changeset [196057] by carlosgc@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

Unreviewed. Fix JavaScriptCore build with B3 enabled.

Include <limits.h> for UINT_MAX.

  • b3/B3StackSlot.h:
  • b3/air/AirStackSlot.h:
00:41 Changeset [196056] by zandobersek@gmail.com
  • 3 edits in trunk/Source/WebCore

[CoordinatedGraphics] CompositingCoordinator destructor is scheduling layer flushes
https://bugs.webkit.org/show_bug.cgi?id=153823

Reviewed by Carlos Garcia Campos.

Purging the backing stores during the CompositingCoordinator destructor
is also scheduling layer flushes in the object's client, which is an object
of the LayerTreeHost-deriving class that owns the CompositingCoordinator
object in question and is also being destroyed.

In case of ThreadedCoordinatedLayerTreeHost, this scheduling can access
the RunLoop::Timer object which has already been destroyed, causing a
crash. Another problem with this is that we're invoking a virtual function
on an object that's being destructed, which works well enough in this case
but should be discouraged in general.

In order to avoid this, add the m_isDestructing boolean to the
CompositingCoordinator class, flip it to true during the destruction,
and check for its falseness before scheduling a layer flush.

  • platform/graphics/texmap/coordinated/CompositingCoordinator.cpp:

(WebCore::CompositingCoordinator::CompositingCoordinator):
(WebCore::CompositingCoordinator::~CompositingCoordinator):
(WebCore::CompositingCoordinator::notifyFlushRequired):

  • platform/graphics/texmap/coordinated/CompositingCoordinator.h:
00:34 Changeset [196055] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebCore

[TexMap] Don't use RELEASE_ASSERT in TextureMapperLayer::computeTransformsRecursive()
https://bugs.webkit.org/show_bug.cgi?id=153822

Reviewed by Carlos Garcia Campos.

  • platform/graphics/texmap/TextureMapperLayer.cpp:

(WebCore::TextureMapperLayer::computeTransformsRecursive):
Use ASSERT to check that the m_children members are indeed children
of the current layer, RELEASE_ASSERT probably slipped in unnoticed
at some point.

00:33 Changeset [196054] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebCore

PlatformPathCairo: Lazily allocate the path surface
https://bugs.webkit.org/show_bug.cgi?id=153821

Reviewed by Carlos Garcia Campos.

Move the static variable that holds the Cairo surface into
the pathSurface() function (previously getPathSurface). This
way the surface will only be allocated once the function is
called for the first time from the CairoPath surface.

No change in functionality, just a cleanup.

  • platform/graphics/cairo/PlatformPathCairo.cpp:

(WebCore::pathSurface):
(WebCore::CairoPath::CairoPath):
(WebCore::getPathSurface): Deleted.

00:18 Changeset [196053] by carlosgc@webkit.org
  • 9 edits
    3 adds in trunk/Source/WebKit2

[UNIX] Add support for windowless NPAPI plugins with no UI in non X11 platforms
https://bugs.webkit.org/show_bug.cgi?id=151992

Reviewed by Darin Adler.

We are currently disabling all plugins when running under wayland,
for example. There are some plugins, like the one used by
extensions.gnome.org, that don't do any rendering, so there's not
reason not to support those plugins under wayland or any other
unix non-x11 platform.
X11 specific code has been moved to a new class NetscapePluginX11,
only used under X11. The common code is in NetscapePluginUnix.cpp
that will use the X11 implementatin only when needed and
available. For windowed plugins we will fail the initialization
under non-X11 plaforms, while for windowless plugins we will just
return early from paint method.

  • PlatformEfl.cmake: Add new files to compilation.
  • PlatformGTK.cmake: Ditto.
  • UIProcess/API/gtk/WebKitSettings.cpp:

(webkit_settings_set_enable_plugins): Do not disable plugins in wayland.

  • UIProcess/gtk/WebPreferencesGtk.cpp:

(WebKit::WebPreferences::platformInitializeStore): Ditto.

  • WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:

(WebKit::NPN_GetValue): Use PlatformDisplay instead of
NetscapePlugin::x11HostDisplay() and don't claim to support X11
specific features under non-x11 platforms.

  • WebProcess/Plugins/Netscape/NetscapePlugin.cpp:

(WebKit::NetscapePlugin::NetscapePlugin): Remove X11 and GTK
specific memebers that are now moved to a dedicated class NetscapePluginX11.

  • WebProcess/Plugins/Netscape/NetscapePlugin.h:

(WebKit::NetscapePlugin::frameRectInWindowCoordinates): Make this public.
(WebKit::NetscapePlugin::clipRect): Add getter.
(WebKit::NetscapePlugin::size): Ditto.
(WebKit::NetscapePlugin::isWindowed): Ditto.
(WebKit::NetscapePlugin::isVisible): Ditto.

  • WebProcess/Plugins/Netscape/unix/NetscapePluginUnix.cpp: Added.

(WebKit::NetscapePlugin::platformPreInitialize):
(WebKit::NetscapePlugin::platformPostInitialize):
(WebKit::NetscapePlugin::platformDestroy):
(WebKit::NetscapePlugin::platformInvalidate):
(WebKit::NetscapePlugin::platformGeometryDidChange):
(WebKit::NetscapePlugin::platformVisibilityDidChange):
(WebKit::NetscapePlugin::platformPaint):
(WebKit::NetscapePlugin::platformHandleMouseEvent):
(WebKit::NetscapePlugin::platformHandleWheelEvent):
(WebKit::NetscapePlugin::platformSetFocus):
(WebKit::NetscapePlugin::wantsPluginRelativeNPWindowCoordinates):
(WebKit::NetscapePlugin::platformHandleMouseEnterEvent):
(WebKit::NetscapePlugin::platformHandleMouseLeaveEvent):
(WebKit::NetscapePlugin::platformHandleKeyboardEvent):

  • WebProcess/Plugins/Netscape/unix/NetscapePluginUnix.h: Added.

(WebKit::NetscapePluginUnix::~NetscapePluginUnix):

  • WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:

(WebKit::getPluginDisplay):
(WebKit::displayDepth):
(WebKit::x11HostDisplay):
(WebKit::NetscapePluginX11::create):
(WebKit::NetscapePluginX11::NetscapePluginX11):
(WebKit::NetscapePluginX11::~NetscapePluginX11):
(WebKit::NetscapePluginX11::windowType):
(WebKit::NetscapePluginX11::window):
(WebKit::NetscapePluginX11::geometryDidChange):
(WebKit::NetscapePluginX11::visibilityDidChange):
(WebKit::NetscapePluginX11::paint):
(WebKit::initializeXEvent):
(WebKit::NetscapePluginX11::handleMouseEvent):
(WebKit::NetscapePluginX11::handleWheelEvent):
(WebKit::NetscapePluginX11::setFocus):
(WebKit::NetscapePluginX11::handleMouseEnterEvent):
(WebKit::NetscapePluginX11::handleMouseLeaveEvent):
(WebKit::NetscapePluginX11::handleKeyboardEvent):
(WebKit::setCommonMouseEventFields): Deleted.
(WebKit::setXKeyEventFields): Deleted.

  • WebProcess/Plugins/Netscape/x11/NetscapePluginX11.h: Added.
Note: See TracTimeline for information about the timeline view.