Timeline



Jan 28, 2015:

11:44 PM Changeset in webkit [179337] by Csaba Osztrogonác
  • 3 edits in trunk/Tools

URTBF after r179326, added uuid-dev package as new dependency.

  • efl/install-dependencies:
  • gtk/install-dependencies:
11:00 PM Changeset in webkit [179336] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

security/mixedContent/redirect-https-to-http-iframe-in-main-frame test is the same as security/mixedContent/redirect-http-to-https-iframe-in-main-frame.html
https://bugs.webkit.org/show_bug.cgi?id=140876

Patch by Michael Catanzaro <Michael Catanzaro> on 2015-01-28
Reviewed by Darin Adler.

Fix the test so it's not identical to the redirect-http-to-https-iframe-in-main-frame
test, and update the expected results.

  • http/tests/security/mixedContent/redirect-https-to-http-iframe-in-main-frame-expected.txt:
  • http/tests/security/mixedContent/redirect-https-to-http-iframe-in-main-frame.html:
9:23 PM Changeset in webkit [179335] by commit-queue@webkit.org
  • 3 edits
    4 adds in trunk

Poor performance on IE's Chalkboard benchmark.
https://bugs.webkit.org/show_bug.cgi?id=140753.

Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2015-01-28
Reviewed by Zalan Bujtas.

PerformanceTests:

  • SVG/UnderTheSeeBenchmark.html: Added
  • SVG/WorldcupBenchmark.html: Added.
  • SVG/resources/RenderAnimator.css: Added.
  • SVG/resources/RenderAnimator.js: Added.

These are benchmarks for the SVG rendering. Mainly we want to measure how fast
the SVG rendering will be when only a small part of it is drawn.

Source/WebCore:

Test: PerformanceTests/SVG/UnderTheSeeBenchmark.html

PerformanceTests/SVG/WorldcupBenchmark.html

The SVG rendering code was not skipping the SVG elements which are outside the
clipping rectangle. We were drawing all the SVG elements even if some of them
are completely outside the clipping rectangle. The fix is to pass the correct
dirty rectangle to the ScrollView which then gets propagated to the SVG renderers.

  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::draw):
SVGImage::draw() needs to pass the intersection of 'srcRect' and context->clipBounds(),
to ScrollView::paint(). This will ensure RenderSVGShape::paint() gets the correct
clipping rectangle. If there is no intersection between the boundingBox of the
RenderSVGShape and the clipping rectangle, the RenderSVGShape will not be drawn.

8:45 PM Changeset in webkit [179334] by matthew_hanson@apple.com
  • 3 edits
    4 adds in branches/safari-600.5-branch

Merge r179027. rdar://problem/19585744

8:45 PM Changeset in webkit [179333] by matthew_hanson@apple.com
  • 2 edits in branches/safari-600.5-branch/LayoutTests

Merge r178953. rdar://problem/19617631

8:30 PM Changeset in webkit [179332] by matthew_hanson@apple.com
  • 3 edits in branches/safari-600.5-branch/LayoutTests

Merge r178795. rdar://problem/19617631

8:29 PM Changeset in webkit [179331] by matthew_hanson@apple.com
  • 11 edits
    3 adds in branches/safari-600.5-branch

Merge r178768. rdar://problem/19617631

8:29 PM Changeset in webkit [179330] by matthew_hanson@apple.com
  • 2 edits in branches/safari-600.5-branch/Source/WebCore

Merge r178571. rdar://problem/19585723

8:29 PM Changeset in webkit [179329] by matthew_hanson@apple.com
  • 2 edits in branches/safari-600.5-branch/Source/JavaScriptCore

Merge r178365. rdar://problem/19617809

7:05 PM Changeset in webkit [179328] by timothy_horton@apple.com
  • 13 edits
    4 adds in trunk/Source/WebKit2

Add API::{FrameInfo, NavigationAction, NavigationResponse} types
https://bugs.webkit.org/show_bug.cgi?id=140982

Reviewed by Sam Weinig.

Make C++ API objects for WK{FrameInfo, NavigationAction, NavigationResponse}
to wrap around, as a step towards moving Modern API logic down into WebPageProxy.

  • Shared/API/APIObject.h:
  • Shared/Cocoa/APIObject.mm:

(API::Object::newObject):

  • UIProcess/API/APIFrameInfo.cpp: Added.
  • UIProcess/API/APIFrameInfo.h: Added.
  • UIProcess/API/APINavigationAction.h: Added.
  • UIProcess/API/APINavigationResponse.h: Added.

Add API::FrameInfo, API::NavigationAction, and API::NavigationResponse.

  • UIProcess/API/Cocoa/WKFrameInfo.mm:
  • UIProcess/API/Cocoa/WKFrameInfoInternal.h:

Make WKFrameInfo a WKObject, wrapping a API::FrameInfo.

  • UIProcess/API/Cocoa/WKNavigationAction.mm:
  • UIProcess/API/Cocoa/WKNavigationActionInternal.h:

Make WKNavigationAction a WKObject, wrapping a API::NavigationAction.

  • UIProcess/API/Cocoa/WKNavigationResponse.mm:
  • UIProcess/API/Cocoa/WKNavigationResponseInternal.h:

Make WKNavigationResponse a WKObject, wrapping a API::NavigationResponse.

  • UIProcess/API/Cocoa/WKUserContentController.mm:

Adopt API::FrameInfo.

  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::NavigationState::PolicyClient::decidePolicyForNavigationAction):
Adopt API::FrameInfo, and reorganize the code slightly.
Adopt API::NavigationAction.

(WebKit::NavigationState::PolicyClient::decidePolicyForResponse):
Adopt API::FrameInfo.
Adopt API::NavigationResponse.

(WebKit::NavigationState::LoaderClient::didFailProvisionalLoadWithErrorForFrame):
Adopt API::FrameInfo.

  • UIProcess/Cocoa/UIDelegate.mm:

(WebKit::UIDelegate::UIClient::createNewPage):
(WebKit::UIDelegate::UIClient::runJavaScriptAlert):
(WebKit::UIDelegate::UIClient::runJavaScriptConfirm):
(WebKit::UIDelegate::UIClient::runJavaScriptPrompt):
Adopt API::FrameInfo.

  • WebKit2.xcodeproj/project.pbxproj:
6:52 PM Changeset in webkit [179327] by Antti Koivisto
  • 2 edits in trunk/Source/WebKit2

http/tests/xmlhttprequest/workers/methods.html sometimes times out with disk cache enabled
https://bugs.webkit.org/show_bug.cgi?id=140976

Reviewed by Chris Dumez.

The previous fix sometimes invoked the completion handler twice. Explicitly track if we
have called it or not.

  • NetworkProcess/cache/NetworkCacheStorageCocoa.mm:

(WebKit::NetworkCacheStorage::dispatchRetrieveOperation):

Also move the error case to the done branch. According to the documentation 'done' is always set on error.

6:32 PM Changeset in webkit [179326] by timothy_horton@apple.com
  • 28 edits
    5 adds in trunk

Add a WebKitMessageRecorder DTrace provider, exposing IPC details to DTrace
https://bugs.webkit.org/show_bug.cgi?id=140673

Reviewed by Sam Weinig.

  • Platform/IPC/ArgumentCoders.cpp:

(IPC::ArgumentCoder<uuid_t>::encode):
(IPC::ArgumentCoder<uuid_t>::decode):

  • Platform/IPC/ArgumentCoders.h:

Add a uuid_t (simple) argument coder.
Fix a mis-named header-guard #ifdef.

  • Platform/IPC/Connection.cpp:

(IPC::Connection::dispatchWorkQueueMessageReceiverMessage):
(IPC::Connection::dispatchSyncMessage):
Sync message replies inherit the message UUID from the incoming sync message.

(IPC::Connection::sendMessage):
(IPC::Connection::waitForMessage):
(IPC::Connection::sendSyncMessage):
(IPC::Connection::sendSyncMessageFromSecondaryThread):
Record outgoing messages. Because sendSyncMessage calls sendMessage,
we have to explicitly avoid recording the message twice.

(IPC::Connection::dispatchMessage):
Record the incoming message.

(IPC::Connection::remoteProcessID):
Add remoteProcessID(), which tries to determine the pid of the remote process.

  • Platform/IPC/Connection.h:

(IPC::Connection::xpcConnection):
This can be const.

(IPC::Connection::isValid):
Make this public.

  • Platform/IPC/MessageDecoder.cpp:

(IPC::MessageDecoder::MessageDecoder):

  • Platform/IPC/MessageDecoder.h:

(IPC::MessageDecoder::setMessageProcessingToken):
(IPC::MessageDecoder::UUID):
Decode and store the message UUID.
Store a MessageProcessingToken for the lifetime of the MessageDecoder;
this ensures that all time spent processing the incoming message will be
counted against that message.

  • Platform/IPC/MessageEncoder.cpp:

(IPC::MessageEncoder::MessageEncoder):
By default, create a new UUID for the message. Alternatively, allow clients
to pass the message UUID in (used for sync message replies).
Store the messageReceiverName and messageName.

(IPC::MessageEncoder::encodeHeader):
Factor encodeHeader() out of the constructors so most of their code can be shared.

(IPC::MessageEncoder::isSyncMessage):
(IPC::MessageEncoder::shouldDispatchMessageWhenWaitingForSyncReply):
Add getters for these flags.

  • Platform/IPC/MessageEncoder.h:

(IPC::MessageEncoder::messageReceiverName):
(IPC::MessageEncoder::messageName):
(IPC::MessageEncoder::destinationID):
(IPC::MessageEncoder::UUID):

  • Platform/IPC/MessageRecorder.h: Added.
  • Platform/IPC/MessageRecorder.cpp: Added.

(MessageRecorder::MessageRecorder):
Add a class that interfaces with a custom DTrace provider to log incoming and outgoing messages.

(MessageRecorder::shared):
(MessageRecorder::isEnabled):
Determine if either of the message probes are enabled. If not, we'll avoid most of the
work associated with MessageRecorder.

(MessageRecorder::recordOutgoingMessage):
(MessageRecorder::recordIncomingMessage):
Build a WebKitMessageRecord and MessageProcessingToken from the Message(De|En)coder.
Once the MessageProcessingToken is deallocated, the probe will be invoked with the WebKitMessageRecord.

(MessageRecorder::MessageProcessingToken::MessageProcessingToken):
(MessageRecorder::MessageProcessingToken::~MessageProcessingToken):
Keep track of when the token is created and destroyed; these are considered the beginning
and ending "processing" times of the message (and as such the token should be kept alive for
exactly as long as the message is being processed).

  • Platform/IPC/MessageRecorderProbes.d: Added.

Add a DTrace provider source file with two probes, message_sent and message_received.
The struct must match the struct in MessageRecorder.h.

  • Platform/IPC/ProcessType.h: Added.

Add an enum of process types.

  • WebKit2.xcodeproj/project.pbxproj:
  • DatabaseProcess/DatabaseProcess.h:
  • DatabaseProcess/DatabaseToWebProcessConnection.h:
  • NetworkProcess/NetworkConnectionToWebProcess.h:
  • NetworkProcess/NetworkProcess.h:
  • WebProcess/Databases/WebToDatabaseProcessConnection.h:
  • WebProcess/Network/NetworkProcessConnection.h:
  • WebProcess/Plugins/PluginProcessConnection.h:
  • WebProcess/WebPage/WebInspector.h:
  • WebProcess/WebPage/WebInspectorUI.h:
  • WebProcess/WebProcess.h:
  • UIProcess/Databases/DatabaseProcessProxy.h:
  • UIProcess/Network/NetworkProcessProxy.h:
  • UIProcess/Plugins/PluginProcessProxy.h:
  • UIProcess/WebProcessProxy.h:
  • PluginProcess/PluginProcess.h:
  • PluginProcess/WebProcessConnection.h:

Annotate Connection::Clients with process types.

  • Scripts/dtrace/trace-webkit2-messages.d: Added.

Add a DTrace script that outputs a small blob of JSON per message.

6:32 PM Changeset in webkit [179325] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

Windows return -1 when calling vsnprintf with arguments that exceed target buffer size
https://bugs.webkit.org/show_bug.cgi?id=140917

Patch by Namhoon Kim <namkim@ea.com> on 2015-01-28
Reviewed by Brent Fulgham.

Fix return value of vsnprintf when windows API return -1 to denote
requested buffer exceeded. Replace return value by calling vscprintf.

  • wtf/StringExtras.h:

(snprintf): Fix return value by calling vscprintf when buffer exceeded.
(wtf_vsnprintf): Ditto.

6:15 PM Changeset in webkit [179324] by Brent Fulgham
  • 4 edits in trunk/Source/WebCore

Scroll snap points do not work in the vertical direction
https://bugs.webkit.org/show_bug.cgi?id=141001
<rdar://problem/19632089>

Reviewed by Beth Dakin.

New scroll snap tests are being prepared separately. A manual test case is attached to the issue.

  • page/EventHandler.cpp:

(WebCore::handleWheelEventInAppropriateEnclosingBoxForSingleAxis): We want to consider momentum end phase
when dealing with Scroll Snap Points.

  • platform/mac/AxisScrollSnapAnimator.mm:

(WebCore::AxisScrollSnapAnimator::handleWheelEvent): We do NOT want to bail out early here. In fact, it's strange
that this code was like this at all, since it meant a large number of cases were not being used. We also want to
trigger the scroll snap animation (when applicable) upon an inertia scroll end.

  • platform/mac/ScrollAnimatorMac.mm:

(WebCore::gestureShouldBeginSnap): Added.
(WebCore::ScrollAnimatorMac::allowsVerticalStretching): If we have automatic elasticity, and we have active scroll
snap points, we want to let the scroll snap animator deal with the gesture.
(WebCore::ScrollAnimatorMac::allowsHorizontalStretching): Ditto.

6:05 PM Changeset in webkit [179323] by benjamin@webkit.org
  • 6 edits
    16 adds in trunk

Start fixing the handling of Element's attributes when they contain non-ASCII characters
https://bugs.webkit.org/show_bug.cgi?id=141016

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-01-28
Reviewed by Ryosuke Niwa.

Source/WebCore:

Attribute handling does not work properly when the attribute name contains non-ASCII character.

The HTML parser tokenize those names as ASCII lowercase. Some of the code is CSS and Element use
unicode lowercase for the names. This breaks all the APIs as soon as a name contains a character
that is non-ASCII and uppercase since some APIs change it, other don't.

This patch is a first step toward fixing this mess, it only address the simple cases.
The HTML spec says the names should be compared ASCII case-insensitive, to I spread that behavior
to places that were using unicode.

Tests: fast/css/attribute-ascii-case-insensitive-html.html

fast/css/attribute-ascii-case-insensitive-xhtml-expected.xhtml
fast/css/attribute-ascii-case-insensitive-xhtml.xhtml
fast/css/attribute-ascii-case-insensitive-xml-in-html.html
fast/dom/Element/attribute-ascii-case-insensitive-1.html
fast/dom/Element/attribute-ascii-case-insensitive-2.html
fast/selectors/attribute-ascii-case-insensitive-style-update.html
fast/selectors/element-matches-attribute-ascii-case-insensitive-html.html
fast/selectors/querySelector-attribute-ascii-case-insensitive-html.html

  • css/CSSSelector.cpp:

(WebCore::CSSSelector::setAttribute):

  • dom/Element.cpp:

(WebCore::Element::synchronizeAttribute):
(WebCore::Element::setAttribute):
(WebCore::Element::removeAttribute):
(WebCore::Element::hasAttribute):

  • dom/ElementData.cpp:

(WebCore::ElementData::findAttributeIndexByNameSlowCase):

  • dom/ElementData.h:

(WebCore::ElementData::findAttributeIndexByName):

LayoutTests:

Start some basic testing.

Some tests are failing due to the more complicated case being handled incorrectly, this will
be fixed in follow ups.

  • fast/css/attribute-ascii-case-insensitive-html-expected.html: Added.
  • fast/css/attribute-ascii-case-insensitive-html.html: Added.
  • fast/css/attribute-ascii-case-insensitive-xhtml-expected.xhtml: Added.
  • fast/css/attribute-ascii-case-insensitive-xhtml.xhtml: Added.
  • fast/css/attribute-ascii-case-insensitive-xml-in-html-expected.html: Added.
  • fast/css/attribute-ascii-case-insensitive-xml-in-html.html: Added.
  • fast/dom/Element/attribute-ascii-case-insensitive-1-expected.txt: Added.
  • fast/dom/Element/attribute-ascii-case-insensitive-1.html: Added.
  • fast/dom/Element/attribute-ascii-case-insensitive-2-expected.txt: Added.
  • fast/dom/Element/attribute-ascii-case-insensitive-2.html: Added.
  • fast/selectors/attribute-ascii-case-insensitive-style-update-expected.txt: Added.
  • fast/selectors/attribute-ascii-case-insensitive-style-update.html: Added.
  • fast/selectors/element-matches-attribute-ascii-case-insensitive-html-expected.txt: Added.
  • fast/selectors/element-matches-attribute-ascii-case-insensitive-html.html: Added.
  • fast/selectors/querySelector-attribute-ascii-case-insensitive-html-expected.txt: Added.
  • fast/selectors/querySelector-attribute-ascii-case-insensitive-html.html: Added.
6:01 PM Changeset in webkit [179322] by Joseph Pecoraro
  • 5 edits in trunk/Source/WebInspectorUI

Web Inspector: Change Main Frame Status Buttons when debugging Augmented JSContext
https://bugs.webkit.org/show_bug.cgi?id=141006

Reviewed by Timothy Hatcher.

  • Localizations/en.lproj/localizedStrings.js:

New "Restart" string.

  • UserInterface/Base/Main.js:

(WebInspector.canArchiveMainFrame):

  • UserInterface/Views/FrameTreeElement.js:

(WebInspector.FrameTreeElement.prototype.updateStatusForMainFrame):
(WebInspector.FrameTreeElement.prototype._updateDownloadButton):
Update the tooltip when in a non-Web debuggable, and only show
the Download button when in a Web debuggable.

  • UserInterface/Views/TreeElementStatusButton.js:

(WebInspector.TreeElementStatusButton.prototype.set hidden):
Oops! The implementation was backwards. Simplify with classList.toggle.

5:49 PM Changeset in webkit [179321] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

Web Inspector: Crash closing inspected page with frequent activity
https://bugs.webkit.org/show_bug.cgi?id=140973

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2015-01-28
Reviewed by Timothy Hatcher.

  • WebProcess/WebPage/WebInspector.h:

(WebKit::WebInspector::disconnectFromPage):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::close):
Be sure to close the WebInspector connection through the page
when the page is closing so that the WebKit::WebInspector is
relinquishes itself as the InspectorFrontendChannel.

5:09 PM Changeset in webkit [179320] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Avoid manually handling quickLookWithEvent: if the immediate action gesture recognizer will do Lookup for us
https://bugs.webkit.org/show_bug.cgi?id=141018
<rdar://problem/19619999>

Reviewed by Beth Dakin.

  • UIProcess/API/mac/WKView.mm:

(-[WKView quickLookWithEvent:]):
If we have an immediate action gesture recognizer, just call super and
avoid WebKit's special quickLookWithEvent: implementation.

4:58 PM Changeset in webkit [179319] by ggaren@apple.com
  • 8 edits in trunk

Removed fastMallocForbid / fastMallocAllow
https://bugs.webkit.org/show_bug.cgi?id=141012

Reviewed by Mark Hahnenberg.

Source/JavaScriptCore:

Copy non-current thread stacks before scanning them instead of scanning
them in-place.

This operation is uncommon (i.e., never in the web content process),
and even in a stress test with 4 threads it only copies about 27kB,
so I think the performance cost is OK.

Scanning in-place requires a complex dance where we constrain our GC
data structures not to use malloc, free, or any other interesting functions
that might acquire locks. We've gotten this wrong many times in the past,
and I just got it wrong again yesterday. Since this code path is rarely
tested, I want it to just make sense, and not depend on or constrain the
details of the rest of the GC heap's design.

  • heap/MachineStackMarker.cpp:

(JSC::otherThreadStack): Factored out a helper function for dealing with
unaligned and/or backwards pointers.

(JSC::MachineThreads::tryCopyOtherThreadStack): This is now the only
constrained function, and it only calls memcpy and low-level thread APIs.

(JSC::MachineThreads::tryCopyOtherThreadStacks): The design here is that
you do one pass over all the threads to compute their combined size,
and then a second pass to do all the copying. In theory, the threads may
grow in between passes, in which case you'll continue until the threads
stop growing. In practice, you never continue.

(JSC::growBuffer): Helper function for growing.

(JSC::MachineThreads::gatherConservativeRoots):
(JSC::MachineThreads::gatherFromOtherThread): Deleted.

  • heap/MachineStackMarker.h: Updated for interface changes.

Source/WTF:

Removed the forbid / allow API because it is no longer used.

  • wtf/FastMalloc.cpp:

(WTF::tryFastMalloc):
(WTF::fastMalloc):
(WTF::tryFastCalloc):
(WTF::fastCalloc):
(WTF::fastFree):
(WTF::tryFastRealloc):
(WTF::fastRealloc):
(WTF::TCMalloc_ThreadCache::CreateCacheIfNecessary):
(WTF::isForbidden): Deleted.
(WTF::fastMallocForbid): Deleted.
(WTF::fastMallocAllow): Deleted.
(WTF::initializeIsForbiddenKey): Deleted.

  • wtf/FastMalloc.h:

Tools:

Fixed a test bug I noticed while testing.

  • DumpRenderTree/JavaScriptThreading.cpp:

(stopJavaScriptThreads): Lock the javaScriptThreads lock before
accessing javaScriptThreads -- otherwise, you'll ASSERT.

4:50 PM Changeset in webkit [179318] by bshafiei@apple.com
  • 6 edits in branches/safari-600.5-branch/Source

Merged r179230. rdar://problem/19621509

4:43 PM Changeset in webkit [179317] by bshafiei@apple.com
  • 5 edits in branches/safari-600.4-branch/Source

Versioning.

4:40 PM Changeset in webkit [179316] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Remove remaining PLATFORM(WIN) code blocks from WebKit2.
https://bugs.webkit.org/show_bug.cgi?id=140972

Patch by Sungmann Cho <sungmann.cho@navercorp.com> on 2015-01-28
Reviewed by Darin Adler.

  • WebProcess/Cookies/cf/WebCookieManagerCFNet.cpp:

(WebKit::WebCookieManager::platformSetHTTPCookieAcceptPolicy):

4:39 PM Changeset in webkit [179315] by Brent Fulgham
  • 1 edit
    1 delete in trunk/LayoutTests

[Win] Actually delete the file!

  • platform/win/fast/events/ondrop-text-htmlt-expected.txt: Removed.
4:38 PM Changeset in webkit [179314] by bshafiei@apple.com
  • 1 copy in tags/Safari-600.4.4

New tag.

4:37 PM Changeset in webkit [179313] by Brent Fulgham
  • 2 edits in trunk/LayoutTests

[Win] Unreviewed gardening. Get rid of misspelled expected file.

Get rid of the 'ondrop-text-htmlt-expected.txt' file, and commit a new baseline
from the test system.

  • platform/win/fast/events/ondrop-text-htmlt-expected.txt: Removed.
  • platform/win/fast/text/backslash-to-yen-sign-euc-expected.txt:
4:30 PM Changeset in webkit [179312] by dburkart@apple.com
  • 2 edits in trunk/Tools

asan.xcconfig should use CLANG_ADDRESS_SANITIZER=YES instead of -fsanitize=address
https://bugs.webkit.org/show_bug.cgi?id=141015

Reviewed by Alexey Proskuryakov.

3:56 PM Changeset in webkit [179311] by weinig@apple.com
  • 2 edits in trunk/Tools

Fix the build.

  • Scripts/copy-webkitlibraries-to-product-directory:
3:46 PM Changeset in webkit [179310] by weinig@apple.com
  • 1 edit
    1 delete in trunk/WebKitLibraries

Remove libWebKitSystemInterfaceMountainLion.a

Reviewed by Mark Rowe.

  • libWebKitSystemInterfaceMountainLion.a: Removed.
3:36 PM Changeset in webkit [179309] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

Simple line layout: Drop uncommitted/committed terms from LineState.
https://bugs.webkit.org/show_bug.cgi?id=141005

Reviewed by Antti Koivisto.

Fragments form segments and segments turn into runs on the lines.
We add fragments only when they fit so they should not be in 'uncommitted' state at all.

No change in functionality.

  • rendering/SimpleLineLayout.cpp:

(WebCore::SimpleLineLayout::LineState::createRun):
(WebCore::SimpleLineLayout::LineState::addFragment):
(WebCore::SimpleLineLayout::LineState::addWhitespace):
(WebCore::SimpleLineLayout::LineState::hasWhitespaceOnly):
(WebCore::SimpleLineLayout::LineState::width):
(WebCore::SimpleLineLayout::LineState::firstCharacterFits):
(WebCore::SimpleLineLayout::LineState::removeTrailingWhitespace):
(WebCore::SimpleLineLayout::removeTrailingWhitespace):
(WebCore::SimpleLineLayout::firstFragment):
(WebCore::SimpleLineLayout::createLineRuns):
(WebCore::SimpleLineLayout::closeLineEndingAndAdjustRuns):
(WebCore::SimpleLineLayout::createTextRuns): Unnecessary assert.
(WebCore::SimpleLineLayout::LineState::commitAndCreateRun): Deleted.
(WebCore::SimpleLineLayout::LineState::addUncommitted): Deleted.
(WebCore::SimpleLineLayout::LineState::addUncommittedWhitespace): Deleted.

3:20 PM Changeset in webkit [179308] by Chris Dumez
  • 3 edits
    2 adds in trunk

Regression(r177494): Bad cast to WebKitCSSResourceValue in StyleBuilderConverter::convertMaskImageOperations()
https://bugs.webkit.org/show_bug.cgi?id=140991
<rdar://problem/19625305>

Reviewed by Antti Koivisto.

Source/WebCore:

convertMaskImageOperations() was assuming that the CSSValueList's values
were always WebKitCSSResourceValue values. However, they can be
CSSInitialValues as well so we should check before casting.

Test: css3/masking/mask-image-initial-value-crash.html

  • css/StyleBuilderConverter.h:

(WebCore::maskImageValueFromIterator):
(WebCore::StyleBuilderConverter::convertMaskImageOperations):

LayoutTests:

Add layout test to cover the case where a CSSValue is incorrectly casted to
a WebKitCSSResourceValue in StyleBuilderConverter::convertMaskImageOperations(),
thus hitting an assertion in downcast<>() on debug builds.

  • css3/masking/mask-image-initial-value-crash-expected.txt: Added.
  • css3/masking/mask-image-initial-value-crash.html: Added.
2:52 PM Changeset in webkit [179307] by matthew_hanson@apple.com
  • 3 edits
    2 adds in branches/safari-600.5-branch

Merge r178363. rdar://problem/19617795

2:52 PM Changeset in webkit [179306] by matthew_hanson@apple.com
  • 2 edits in branches/safari-600.5-branch/Source/JavaScriptCore

Merge r178311. rdar://problem/19617780

2:52 PM Changeset in webkit [179305] by matthew_hanson@apple.com
  • 4 edits
    2 adds in branches/safari-600.5-branch

Merge r178231. rdar://problem/19617801

2:52 PM Changeset in webkit [179304] by matthew_hanson@apple.com
  • 4 edits
    5 adds in branches/safari-600.5-branch

Merge r177927. rdar://problem/19585726

2:52 PM Changeset in webkit [179303] by matthew_hanson@apple.com
  • 4 edits
    4 adds in branches/safari-600.5-branch

Merge r177165. rdar://problem/19617570

2:51 PM Changeset in webkit [179302] by Lucas Forschler
  • 3 edits
    4 copies in branches/safari-600.1.4.15-branch

Merged r179027. rdar://problem/19432904

2:47 PM Changeset in webkit [179301] by Lucas Forschler
  • 10 edits in branches/safari-600.1.4.15-branch/Source/WebKit2

Merged r178980. rdar://problem/19431679

2:37 PM Changeset in webkit [179300] by Lucas Forschler
  • 2 edits in trunk/Tools

Increase the FileUpload block size in an attempt to improve network performance.

Reviewed by Alexey Proskuryakov.

  • BuildSlaveSupport/build.webkit.org-config/master.cfg:

(UploadBuiltProduct.init):

2:35 PM Changeset in webkit [179299] by Lucas Forschler
  • 4 edits
    4 copies in branches/safari-600.1.4.15-branch

Merged r178380. rdar://problem/19432909

2:26 PM Changeset in webkit [179298] by matthew_hanson@apple.com
  • 6 edits
    6 adds in branches/safari-600.5-branch

Merge r177135. rdar://problem/19451316

2:26 PM Changeset in webkit [179297] by matthew_hanson@apple.com
  • 3 edits
    2 adds in branches/safari-600.5-branch

Merge r177089. rdar://problem/19617712

2:26 PM Changeset in webkit [179296] by matthew_hanson@apple.com
  • 5 edits
    8 adds in branches/safari-600.5-branch

Merge r177050. rdar://problem/19452133

2:25 PM Changeset in webkit [179295] by Lucas Forschler
  • 5 edits in branches/safari-600.1.4.15-branch/Source/JavaScriptCore

Merged r178364. rdar://problem/19564749

2:22 PM Changeset in webkit [179294] by Beth Dakin
  • 16 edits in trunk/Source

Remove Mountain Lion code from WebKit and WebKit2
https://bugs.webkit.org/show_bug.cgi?id=141010

Reviewed by Sam Weinig.

Source/WebKit/mac:

  • DOM/WebDOMOperations.mm:

(toNSEventPhase):

  • WebView/WebHTMLView.mm:

(isQuickLookEvent):

Source/WebKit2:

  • NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in:
  • PluginProcess/EntryPoint/mac/LegacyProcess/PluginProcessMain.mm:
  • Shared/mac/ChildProcessMac.mm:

(WebKit::ChildProcess::initializeSandbox):

  • Shared/mac/WebEventFactory.mm:

(WebKit::phaseForEvent):

  • UIProcess/API/mac/WKView.mm:

(-[WKView quickLookWithEvent:]):
(-[WKView updateLayer]):
(-[WKView createFullScreenWindow]):

  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::didFinishLaunching):

  • UIProcess/Network/mac/NetworkProcessProxyMac.mm:

(WebKit::shouldUseXPC):

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::didFinishLaunching):

  • UIProcess/mac/PageClientImpl.mm:

(WebKit::PageClientImpl::isViewVisible):

  • WebKit2Prefix.h:
  • WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

  • WebProcess/com.apple.WebProcess.sb.in:
2:20 PM Changeset in webkit [179293] by Chris Dumez
  • 6 edits in trunk/Source

Remove dead code from MemoryCache
https://bugs.webkit.org/show_bug.cgi?id=140964

Reviewed by Andreas Kling.

Remove dead code from MemoryCache, make more things private and
clean up a little bit.

  • WebCore.exp.in:
  • inspector/InspectorResourceAgent.cpp:
  • loader/cache/MemoryCache.cpp:

(WebCore::MemoryCache::MemoryCache):
(WebCore::MemoryCache::revalidationSucceeded):
(WebCore::MemoryCache::removeImageFromCache):
(WebCore::MemoryCache::pruneLiveResources):
(WebCore::MemoryCache::pruneDeadResources):
(WebCore::MemoryCache::pruneDeadResourcesToSize):
(WebCore::MemoryCache::remove):
(WebCore::MemoryCache::removeRequestFromSessionCaches):
(WebCore::MemoryCache::setDisabled):
(WebCore::MemoryCache::resourceForURL): Deleted.
(WebCore::MemoryCache::pruneLiveResourcesToPercentage): Deleted.
(WebCore::MemoryCache::pruneDeadResourcesToPercentage): Deleted.
(WebCore::MemoryCache::evict): Deleted.
(WebCore::MemoryCache::removeUrlFromCache): Deleted.
(WebCore::MemoryCache::removeRequestFromCache): Deleted.
(WebCore::MemoryCache::pruneToPercentage): Deleted.

  • loader/cache/MemoryCache.h:

(WebCore::MemoryCache::LRUList::LRUList): Deleted.
(WebCore::MemoryCache::remove): Deleted.
(WebCore::MemoryCache::setPruneEnabled): Deleted.
(WebCore::MemoryCache::minDeadCapacity): Deleted.
(WebCore::MemoryCache::maxDeadCapacity): Deleted.
(WebCore::MemoryCache::capacity): Deleted.
(WebCore::MemoryCache::liveSize): Deleted.
(WebCore::MemoryCache::deadSize): Deleted.

  • platform/MemoryPressureHandler.cpp:

(WebCore::MemoryPressureHandler::releaseCriticalMemory):

2:04 PM Changeset in webkit [179292] by Lucas Forschler
  • 6 edits in branches/safari-600.1.4.15-branch/Source

Merged r178175. rdar://problem/19433008

1:58 PM Changeset in webkit [179291] by matthew_hanson@apple.com
  • 2 edits in branches/safari-600.5-branch/Source/WebCore

Merge r176475. rdar://problem/19451346

1:58 PM Changeset in webkit [179290] by matthew_hanson@apple.com
  • 2 edits in branches/safari-600.5-branch/Source/WebCore

Merge r175251. rdar://problem/19451346

1:57 PM Changeset in webkit [179289] by Lucas Forschler
  • 5 edits
    5 copies in branches/safari-600.1.4.15-branch

Merged r178038. rdar://problem/19450100

1:53 PM Changeset in webkit [179288] by Lucas Forschler
  • 2 edits in branches/safari-600.1.4.15-branch/Source/WebCore

Merged r177850. rdar://problem/19445865

1:49 PM Changeset in webkit [179287] by Lucas Forschler
  • 11 edits in branches/safari-600.1.4.15-branch/Source

Merged r177738. rdar://problem/19445865

1:45 PM Changeset in webkit [179286] by Brian Burg
  • 23 edits
    2 deletes in trunk/Source

Web Inspector: remove CSS.setPropertyText, CSS.toggleProperty and related dead code
https://bugs.webkit.org/show_bug.cgi?id=140961

Reviewed by Timothy Hatcher.

Source/JavaScriptCore:

  • inspector/protocol/CSS.json: Remove unused protocol methods.

Source/WebCore:

No new tests, no behavior changed.

  • CMakeLists.txt:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • inspector/InspectorAllInOne.cpp:
  • inspector/InspectorCSSAgent.cpp:

(WebCore::InspectorCSSAgent::setPropertyText): Deleted.
(WebCore::InspectorCSSAgent::toggleProperty): Deleted.

  • inspector/InspectorCSSAgent.h:
  • inspector/InspectorStyleSheet.cpp:

(WebCore::InspectorStyle::InspectorStyle):
(WebCore::InspectorStyle::populateAllProperties):
(WebCore::InspectorStyleSheet::InspectorStyleSheet):
(WebCore::InspectorStyleSheet::reparseStyleSheet):
(WebCore::InspectorStyleSheet::inspectorStyleForId):
(WebCore::InspectorStyle::setPropertyText): Deleted.
(WebCore::InspectorStyle::toggleProperty): Deleted.
(WebCore::InspectorStyle::newLineAndWhitespaceDelimiters): Deleted.
(WebCore::InspectorStyleSheet::setPropertyText): Deleted.
(WebCore::InspectorStyleSheet::toggleProperty): Deleted.
(WebCore::InspectorStyleSheet::rememberInspectorStyle): Deleted.
(WebCore::InspectorStyleSheet::forgetInspectorStyle): Deleted.
(WebCore::InspectorStyleSheet::revalidateStyle): Deleted.

  • inspector/InspectorStyleSheet.h:
  • inspector/InspectorStyleTextEditor.cpp: Removed.
  • inspector/InspectorStyleTextEditor.h: Removed.

Source/WebInspectorUI:

Setters for CSSProperty (except override) are not used, so delete them. These setters
and their callees in DOMNodeStyles were the only clients of the removed protocol commands.

  • UserInterface/Models/CSSProperty.js:

(WebInspector.CSSProperty.prototype.update):
(WebInspector.CSSProperty.prototype.get name):
(WebInspector.CSSProperty.prototype.get value):
(WebInspector.CSSProperty.prototype.get priority):
(WebInspector.CSSProperty.prototype.hasOtherVendorNameOrKeyword):
(WebInspector.CSSProperty.prototype.set text): Deleted.
(WebInspector.CSSProperty.prototype.set name): Deleted.
(WebInspector.CSSProperty.prototype.set value): Deleted.
(WebInspector.CSSProperty.prototype.set important): Deleted.
(WebInspector.CSSProperty.prototype.set priority): Deleted.
(WebInspector.CSSProperty.prototype.set enabled): Deleted.
(WebInspector.CSSProperty.prototype.add): Deleted.
(WebInspector.CSSProperty.prototype.remove): Deleted.
(WebInspector.CSSProperty.prototype._updatePropertySoon.performUpdate): Deleted.
(WebInspector.CSSProperty.prototype._updatePropertySoon): Deleted.
(WebInspector.CSSProperty.prototype._cancelPendingUpdate): Deleted.

  • UserInterface/Models/CSSStyleDeclaration.js:

(WebInspector.CSSStyleDeclaration.prototype.addProperty): Deleted.
(WebInspector.CSSStyleDeclaration.prototype.removeProperty): Deleted.

  • UserInterface/Models/DOMNodeStyles.js:

(WebInspector.DOMNodeStyles.prototype.addEmptyRule):
(WebInspector.DOMNodeStyles.prototype.addRule): Deleted.
(WebInspector.DOMNodeStyles.prototype.changeProperty): Deleted.
(WebInspector.DOMNodeStyles.prototype.changePropertyText): Deleted.
(WebInspector.DOMNodeStyles.prototype.changePropertyEnabledState): Deleted.
(WebInspector.DOMNodeStyles.prototype.addProperty): Deleted.
(WebInspector.DOMNodeStyles.prototype.removeProperty): Deleted.
(WebInspector.DOMNodeStyles.prototype._handlePropertyChange): Deleted.

  • UserInterface/Protocol/Legacy/6.0/InspectorBackendCommands.js:
  • UserInterface/Protocol/Legacy/7.0/InspectorBackendCommands.js:
  • UserInterface/Protocol/Legacy/8.0/InspectorBackendCommands.js:
  • UserInterface/Views/RulesStyleDetailsPanel.js:

(WebInspector.RulesStyleDetailsPanel.prototype._newRuleClicked):

  • Versions/Inspector-iOS-6.0.json:
  • Versions/Inspector-iOS-7.0.json:
  • Versions/Inspector-iOS-8.0.json:
1:39 PM Changeset in webkit [179285] by Lucas Forschler
  • 3 edits in branches/safari-600.1.4.15-branch/Source/WebCore

Merged r177681. rdar://problem/19445913

1:37 PM Changeset in webkit [179284] by Alan Bujtas
  • 8 edits
    2 copies in trunk/Source/WebCore

Simple line layout: Move FlowContents iterator interface to FlowContentsIterator.
https://bugs.webkit.org/show_bug.cgi?id=140944

Reviewed by Antti Koivisto.

This patch cleans up FlowContents's interface by moving the iterator functionality
to this new FlowContentsIterator class.

No change in functionality.

  • CMakeLists.txt:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • rendering/SimpleLineLayout.cpp:

(WebCore::SimpleLineLayout::LineState::addUncommitted):
(WebCore::SimpleLineLayout::LineState::addUncommittedWhitespace):
(WebCore::SimpleLineLayout::preWrap):
(WebCore::SimpleLineLayout::removeTrailingWhitespace):
(WebCore::SimpleLineLayout::splitFragmentToFitLine):
(WebCore::SimpleLineLayout::firstFragment):
(WebCore::SimpleLineLayout::createLineRuns):
(WebCore::SimpleLineLayout::closeLineEndingAndAdjustRuns):
(WebCore::SimpleLineLayout::splitRunsAtRendererBoundary):
(WebCore::SimpleLineLayout::createTextRuns):

  • rendering/SimpleLineLayoutFlowContents.cpp:

(WebCore::SimpleLineLayout::FlowContents::FlowContents):
(WebCore::SimpleLineLayout::FlowContents::Style::Style): Deleted.
(WebCore::SimpleLineLayout::FlowContents::nextTextFragment): Deleted.
(WebCore::SimpleLineLayout::nextBreakablePosition): Deleted.
(WebCore::SimpleLineLayout::FlowContents::findNextBreakablePosition): Deleted.
(WebCore::SimpleLineLayout::findNextNonWhitespace): Deleted.
(WebCore::SimpleLineLayout::FlowContents::findNextNonWhitespacePosition): Deleted.
(WebCore::SimpleLineLayout::FlowContents::textWidth): Deleted.
(WebCore::SimpleLineLayout::FlowContents::runWidth): Deleted.

  • rendering/SimpleLineLayoutFlowContents.h:

(WebCore::SimpleLineLayout::FlowContents::Iterator::Iterator):
(WebCore::SimpleLineLayout::FlowContents::Iterator::operator*):
(WebCore::SimpleLineLayout::FlowContents::begin):
(WebCore::SimpleLineLayout::FlowContents::end):
(WebCore::SimpleLineLayout::FlowContents::length):
(WebCore::SimpleLineLayout::FlowContents::Iterator::operator++):
(WebCore::SimpleLineLayout::FlowContents::Iterator::operator==):
(WebCore::SimpleLineLayout::FlowContents::Iterator::operator!=):
(WebCore::SimpleLineLayout::FlowContents::segmentIndexForPosition):
(WebCore::SimpleLineLayout::FlowContents::TextFragment::TextFragment): Deleted.
(WebCore::SimpleLineLayout::FlowContents::TextFragment::isEmpty): Deleted.
(WebCore::SimpleLineLayout::FlowContents::hasOneSegment): Deleted.
(WebCore::SimpleLineLayout::FlowContents::style): Deleted.
(WebCore::SimpleLineLayout::FlowContents::characterAt): Deleted.
(WebCore::SimpleLineLayout::FlowContents::isLineBreak): Deleted.
(WebCore::SimpleLineLayout::FlowContents::isEnd): Deleted.

  • rendering/SimpleLineLayoutFlowContentsIterator.cpp: Copied from Source/WebCore/rendering/SimpleLineLayoutFlowContents.cpp.

(WebCore::SimpleLineLayout::FlowContentsIterator::Style::Style):
(WebCore::SimpleLineLayout::FlowContentsIterator::FlowContentsIterator):
(WebCore::SimpleLineLayout::FlowContentsIterator::nextTextFragment):
(WebCore::SimpleLineLayout::FlowContentsIterator::textWidth):
(WebCore::SimpleLineLayout::nextBreakablePosition):
(WebCore::SimpleLineLayout::FlowContentsIterator::findNextBreakablePosition):
(WebCore::SimpleLineLayout::findNextNonWhitespace):
(WebCore::SimpleLineLayout::FlowContentsIterator::findNextNonWhitespacePosition):
(WebCore::SimpleLineLayout::FlowContentsIterator::runWidth):

  • rendering/SimpleLineLayoutFlowContentsIterator.h: Copied from Source/WebCore/rendering/SimpleLineLayoutFlowContents.h.

(WebCore::SimpleLineLayout::FlowContentsIterator::TextFragment::TextFragment):
(WebCore::SimpleLineLayout::FlowContentsIterator::TextFragment::isEmpty):
(WebCore::SimpleLineLayout::FlowContentsIterator::style):
(WebCore::SimpleLineLayout::FlowContentsIterator::segmentForPosition):
(WebCore::SimpleLineLayout::FlowContentsIterator::characterAt):
(WebCore::SimpleLineLayout::FlowContentsIterator::isLineBreak):
(WebCore::SimpleLineLayout::FlowContentsIterator::isEnd):

1:27 PM Changeset in webkit [179283] by Beth Dakin
  • 18 edits in trunk/Source/WebCore

Remove Mountain Lion code from WebCore
https://bugs.webkit.org/show_bug.cgi?id=141007

Reviewed by Sam Weinig.

  • WebCore.exp.in:
  • page/AlternativeTextClient.h:
  • page/mac/SettingsMac.mm:

(WebCore::Settings::initializeDefaultFontFamilies):

  • platform/cocoa/SystemVersion.mm:

(WebCore::callGestalt): Deleted.
(WebCore::createSystemMarketingVersion): Deleted.

  • platform/graphics/Font.cpp:

(WebCore::Font::applyTransforms):

  • platform/graphics/WidthIterator.h:

(WebCore::WidthIterator::supportsTypesettingFeatures):

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

(WebCore::MediaPlayerPrivateAVFoundationObjC::platformMaxTimeLoaded):

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::supportsAcceleratedFilterAnimations):

  • platform/graphics/ca/PlatformCAFilters.h:
  • platform/graphics/mac/FontCacheMac.mm:

(WebCore::FontCache::platformInit):

  • platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:

(WebCore::Extensions3DOpenGLCommon::Extensions3DOpenGLCommon):

  • platform/mac/PlatformEventFactoryMac.mm:

(WebCore::phaseForEvent):

  • platform/mac/WebCoreSystemInterface.h:
  • platform/mac/WebCoreSystemInterface.mm:
  • platform/network/cf/SocketStreamHandleCFNet.cpp:

(WebCore::SocketStreamHandle::createStreams):

  • platform/network/cocoa/CredentialCocoa.mm:

(WebCore::toCredentialPersistence):

  • platform/spi/cocoa/CoreTextSPI.h:
1:24 PM Changeset in webkit [179282] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Web Inspector: Crash when closing inspected page
https://bugs.webkit.org/show_bug.cgi?id=140968

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2015-01-28
Reviewed by Timothy Hatcher.

Handle cases where the corePage could be null. With the Inspector Process
in its own process, messages may come to the WebContentProcess after
the WebCore::Page has itself been destroyed.

  • WebProcess/WebPage/WebInspector.cpp:

(WebKit::WebInspector::show):
(WebKit::WebInspector::close):
(WebKit::WebInspector::openInNewTab):
(WebKit::WebInspector::evaluateScriptForTest):
(WebKit::WebInspector::showConsole):
(WebKit::WebInspector::showResources):
(WebKit::WebInspector::showMainResourceForFrame):
(WebKit::WebInspector::startPageProfiling):
(WebKit::WebInspector::stopPageProfiling):
(WebKit::WebInspector::canAttachWindow):
(WebKit::WebInspector::sendMessageToBackend):
(WebKit::WebInspector::remoteFrontendConnected):
(WebKit::WebInspector::remoteFrontendDisconnected):

1:16 PM Changeset in webkit [179281] by commit-queue@webkit.org
  • 12 edits in trunk/Source/WebKit2

Convert WebPreferences and VisitedLinkProvider to be bridged API::Objects
https://bugs.webkit.org/show_bug.cgi?id=141002

Patch by Sam Weinig <sam@webkit.org> on 2015-01-28
Reviewed by Tim Horton.

  • Shared/API/APIObject.h:

Add VisitedLinkProvider type.

  • Shared/Cocoa/APIObject.mm:

(API::Object::newObject):
Allocate WebPreferences and VisitedLinkProvider as their Objective-C counterpart.

  • UIProcess/API/Cocoa/WKPreferences.mm:

(-[WKPreferences init]):
Switch to constructInWrapper.

(-[WKPreferences dealloc]):
Call the WebPreferences destructor.

(-[WKPreferences _apiObject]):
Add implementation of the WKObject protocol.

  • UIProcess/API/Cocoa/WKPreferencesInternal.h:

Convert to using ObjectStorage.

  • UIProcess/API/Cocoa/_WKVisitedLinkProvider.mm:

(-[_WKVisitedLinkProvider init]):
Switch to constructInWrapper.

(-[_WKVisitedLinkProvider dealloc]):
Call the VisitedLinkProvider destructor.

(-[_WKVisitedLinkProvider _apiObject]):
Add implementation of the WKObject protocol.

  • UIProcess/API/Cocoa/_WKVisitedLinkProviderInternal.h:

Convert to using ObjectStorage.

  • UIProcess/VisitedLinkProvider.cpp:

(WebKit::VisitedLinkProvider::create):

  • UIProcess/VisitedLinkProvider.h:

Switch create() to return a Ref.

  • UIProcess/WebPreferences.h:

Make the constructor public for use by constructInWrapper.

  • UIProcess/WebProcessPool.cpp:

(WebKit::WebProcessPool::createWebPage):

  • UIProcess/WebProcessPool.h:

Store the VisitedLinkProvider in a Ref.

1:01 PM Changeset in webkit [179280] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[WinCairo] Compile error in media player implementation.
https://bugs.webkit.org/show_bug.cgi?id=141004

Patch by peavo@outlook.com <peavo@outlook.com> on 2015-01-28
Reviewed by Brent Fulgham.

MediaPlayer::cachedResourceLoader() returns a pointer to the resource loader, not a reference.

  • platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp:

(WebCore::MediaPlayerPrivateMediaFoundation::setSize):
(WebCore::MediaPlayerPrivateMediaFoundation::createVideoWindow):

12:48 PM Changeset in webkit [179279] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Prevent implicit animation when setting fullscreen background to clear.
https://bugs.webkit.org/show_bug.cgi?id=140888

Patch by Jeremy Jones <jeremyj@apple.com> on 2015-01-28
Reviewed by Eric Carlson.

This patch decreases flicker when exiting fullscreen by preventing
an implicit animation when changing the background to clear.

  • platform/ios/WebVideoFullscreenInterfaceAVKit.mm:

(WebVideoFullscreenInterfaceAVKit::exitFullscreenInternal):

12:41 PM Changeset in webkit [179278] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/win

[WinCairo] Message loop is flooded with timer messages when animating in accelerated compositing mode.
https://bugs.webkit.org/show_bug.cgi?id=140985

Patch by peavo@outlook.com <peavo@outlook.com> on 2015-01-28
Reviewed by Brent Fulgham.

The animation timer has zero timeout, which makes it hard for other messages to slip through.

  • WebCoreSupport/AcceleratedCompositingContext.cpp:

(AcceleratedCompositingContext::scheduleLayerFlush):

12:35 PM Changeset in webkit [179277] by commit-queue@webkit.org
  • 2 edits in trunk/WebKitLibraries

[WinCairo] Enable CSS_SELECTORS_LEVEL4.
https://bugs.webkit.org/show_bug.cgi?id=141003

Patch by peavo@outlook.com <peavo@outlook.com> on 2015-01-28
Reviewed by Brent Fulgham.

  • win/tools/vsprops/FeatureDefinesCairo.props:
12:33 PM Changeset in webkit [179276] by Brent Fulgham
  • 4 edits
    1 copy
    1 add in trunk/LayoutTests

[Win] More gardening to get the bot green.

  • css3/scroll-snap/resources: Added.
  • platform/win/TestExpectations:
  • platform/win/fast/events/ondrop-text-html-expected.txt: Copied from platform/win/fast/events/ondrop-text-htmlt-expected.txt.
  • platform/win/fast/events/ondrop-text-htmlt-expected.txt: Removed.
  • platform/win/fast/html/marquee-scrollamount-expected.txt: Added.
  • platform/win/fast/text/backslash-to-yen-sign-euc-expected.txt:
  • platform/win/fast/text/fallback-traits-fixup-expected.txt:
  • platform/win/fast/text/international/complex-character-based-fallback-expected.txt:
12:21 PM Changeset in webkit [179275] by Brent Fulgham
  • 2 edits in trunk/LayoutTests

[Win] Unreviewed gardening. Reskip some region tests.

  • platform/win/TestExpectations:
10:55 AM Changeset in webkit [179274] by Lucas Forschler
  • 5 edits in branches/safari-600.1.4.15-branch/Source/WebCore

Merged r177680. rdar://problem/19445865

10:50 AM Changeset in webkit [179273] by Lucas Forschler
  • 6 edits in branches/safari-600.1.4.15-branch/Source

Merged r177666. rdar://problem/19445905

10:48 AM Changeset in webkit [179272] by matthew_hanson@apple.com
  • 2 edits in branches/safari-600.5-branch/Source/WebKit2

Merge r179195. rdar://problem/19572685

10:44 AM Changeset in webkit [179271] by matthew_hanson@apple.com
  • 6 edits in branches/safari-600.5-branch/Source

Merge r179129. rdar://problem/19489518

10:29 AM Changeset in webkit [179270] by bshafiei@apple.com
  • 5 edits in tags/Safari-600.5.3.2/Source

Versioning.

10:28 AM Changeset in webkit [179269] by dburkart@apple.com
  • 37 edits in trunk

Move ASan flag settings from DebugRelease.xcconfig to Base.xcconfig
https://bugs.webkit.org/show_bug.cgi?id=136765

Reviewed by Alexey Proskuryakov.

10:28 AM Changeset in webkit [179268] by bshafiei@apple.com
  • 1 copy in tags/Safari-600.5.3.2

New tag.

10:24 AM Changeset in webkit [179267] by Chris Dumez
  • 5 edits in trunk/Source/WebCore

Use an enum class for createFontFamilyValue()'s fromSystemFontID argument
https://bugs.webkit.org/show_bug.cgi?id=140981

Reviewed by Darin Adler.

Use an enum class for createFontFamilyValue()'s fromSystemFontID argument
instead of a simple enum, as suggested by Sam. This is a bit nicer.

Also, use a boolean type for CSSFontFamily.fromSystemFontID instead of
the enum type to facilitate handling. Using a enum (class) for
CSSFontFamily's fromSystemFontID member is not useful as it is always
accessed by name.

  • css/CSSFontFamily.h:
  • css/CSSParser.cpp:

(WebCore::CSSParser::parseSystemFont):

  • css/CSSValuePool.cpp:

(WebCore::CSSValuePool::createFontFamilyValue):

  • css/CSSValuePool.h:
10:20 AM Changeset in webkit [179266] by matthew_hanson@apple.com
  • 2 edits in branches/safari-600.5-branch/Source/WebKit2

Merge r179087. rdar://problem/19571057

10:17 AM Changeset in webkit [179265] by matthew_hanson@apple.com
  • 2 edits in branches/safari-600.5-branch/Source/WebCore

Merge r179086. rdar://problem/19566089

10:14 AM Changeset in webkit [179264] by matthew_hanson@apple.com
  • 2 edits in branches/safari-600.5-branch/Source/WebKit2

Merge r179023. rdar://problem/19573674

10:09 AM Changeset in webkit [179263] by Chris Dumez
  • 11 edits in trunk/Source

Fix typo in markPagesForVistedLinkStyleRecalc()
https://bugs.webkit.org/show_bug.cgi?id=140977

Reviewed by Darin Adler.

Source/WebCore:

  • WebCore.exp.in:
  • history/CachedPage.h:

(WebCore::CachedPage::markForVisitedLinkStyleRecalc):
(WebCore::CachedPage::markForVistedLinkStyleRecalc): Deleted.

  • history/PageCache.cpp:

(WebCore::PageCache::markPagesForVisitedLinkStyleRecalc):
(WebCore::PageCache::markPagesForVistedLinkStyleRecalc): Deleted.

  • history/PageCache.h:

Source/WebKit/mac:

  • WebCoreSupport/WebVisitedLinkStore.mm:

(WebVisitedLinkStore::removeAllVisitedLinks):
(WebVisitedLinkStore::removeVisitedLink):
(WebVisitedLinkStore::addVisitedLinkHash):

Source/WebKit/win:

  • WebCoreSupport/WebVisitedLinkStore.cpp:

(WebVisitedLinkStore::removeAllVisitedLinks):
(WebVisitedLinkStore::addVisitedLinkHash):

Source/WebKit2:

  • WebProcess/WebPage/VisitedLinkTableController.cpp:

(WebKit::VisitedLinkTableController::setVisitedLinkTable):
(WebKit::VisitedLinkTableController::visitedLinkStateChanged):
(WebKit::VisitedLinkTableController::allVisitedLinkStateChanged):
(WebKit::VisitedLinkTableController::removeAllVisitedLinks):

10:02 AM Changeset in webkit [179262] by Chris Dumez
  • 2 edits in trunk/Source/WebCore

Unreviewed. Remove duplicate friend class statement after r179255.

  • history/PageCache.h:
10:00 AM Changeset in webkit [179261] by matthew_hanson@apple.com
  • 10 edits in branches/safari-600.5-branch/Source

Merge r179014. rdar://problem/19573674

9:59 AM Changeset in webkit [179260] by Darin Adler
  • 19 edits in trunk/Source/WebCore

Make SVGElement::instancesForElement point to elements in the shadow tree, not SVGElementInstance objects
https://bugs.webkit.org/show_bug.cgi?id=140984

Reviewed by Anders Carlsson.

Refactoring of code that is pretty well covered by existing tests, so
not adding new tests.

Inspired by work Rob Buis did in Blink:

http://src.chromium.org/viewvc/blink?view=revision&revision=173275

  • page/EventHandler.cpp:

(WebCore::EventHandler::clear): Removed code to zero m_lastInstanceUnderMouse.
(WebCore::instanceAssociatedWithShadowTreeElement): Deleted.
(WebCore::EventHandler::updateMouseEventTargetNode): Removed code that used
m_lastInstanceUnderMouse to track events on an object after recloning.
This behavior doesn't seem to be needed to pass any existing tests, and Rob
removed it from Blink, so I'll take it out and we can bring if back, based
on the original element rather than on the SVGElementInstance, if we find we
need to restore the behavior in the future.

  • page/EventHandler.h: Removed m_lastInstanceUnderMouse.
  • svg/SVGAnimateElementBase.cpp:

(WebCore::SVGAnimateElementBase::determineAnimatedPropertyType):
Changed this function to take a reference and to call the updated version
of the targetElement.animatedPropertyTypesForAttribute function.
(WebCore::SVGAnimateElementBase::calculateAnimatedValue): Updated to pass
a reference rather than a pointer.
(WebCore::SVGAnimateElementBase::resetAnimatedType): Updated to pass
references rather than pointers.
(WebCore::applyCSSPropertyToTarget): Updated to take a reference.
(WebCore::removeCSSPropertyFromTarget): Ditto.
(WebCore::applyCSSPropertyToTargetAndInstances): Ditto. Also use a modern
for loop, and iterate over shadow tree instances, not over SVGElementInstance.
(WebCore::removeCSSPropertyFromTargetAndInstances): Ditto.
(WebCore::notifyTargetAboutAnimValChange): Ditto.
(WebCore::notifyTargetAndInstancesAboutAnimValChange): Ditto.
(WebCore::SVGAnimateElementBase::clearAnimatedType): More of the same.
(WebCore::SVGAnimateElementBase::applyResultsToTarget): Ditto.
(WebCore::SVGAnimateElementBase::resetAnimatedPropertyType): Ditto.

  • svg/SVGAnimateElementBase.h: Changed determineAnimatedPropertyType to take

a reference rahter than a pointer.

  • svg/SVGAnimateMotionElement.cpp:

(WebCore::SVGAnimateMotionElement::applyResultsToTarget): Updated to use the
new instances instead of SVGElementInstance. Also added code to skip work if
the transform is not changing, and use the assignment operator instead of
breaking one matrix down and calling setMatrix on the other.

  • svg/SVGAnimatedTypeAnimator.cpp:

(WebCore::SVGAnimatedTypeAnimator::findAnimatedPropertiesForAttributeName):
Changed to take a reference rather than a pointer, and rewrote to streamline,
using modern for loops and using the new instances set.

  • svg/SVGAnimatedTypeAnimator.h: Removed the constructors from the

SVGElementAnimatedProperties struct since we can build them just fine without
them. Changed findAnimatedPropertiesForAttributeName to take a reference.

  • svg/SVGAnimationElement.cpp:

(WebCore::SVGAnimationElement::currentValuesForValuesAnimation): Pass a
reference rather than a pointer. Also streamlined the code a bit and removed
a comment that tried to say exactly what the code was doing, but was outdated.

  • svg/SVGElement.cpp:

(WebCore::SVGElement::~SVGElement): Disconnect all instances from this element
and also disconnect the corresponding element from this element if it itself
is an instance. This guarantees we have no dangling pointers.
(WebCore::SVGElement::mapInstanceToElement): Deleted.
(WebCore::SVGElement::removeInstanceMapping): Deleted.
(WebCore::SVGElement::instances): Renamed from instancesForElement and changed
to be a set of SVG element instances in the shadow tree, rather than
SVGElementInstance objects.
(WebCore::SVGElement::correspondingElement): Tweaked assertion a little and use
nullptr instead of 0.
(WebCore::SVGElement::correspondingUseElement): Added. Finds the use element
that owns the shadow tree this element is in by following the host element
pointer from the shadow root.
(WebCore::SVGElement::setCorrespondingElement): Added code to insert or remove
this element from the instances set of the corresponding element.
(WebCore::SVGElement::animatedPropertyTypesForAttribute): Renamed from
animatedPropertyTypeForAttribute and switched to use a return value instead of
an out argument.
(WebCore::SVGElement::addEventListener): Updated to use instances rather than
the old instancesForElement.
(WebCore::SVGElement::removeEventListener): Ditto.
(WebCore::SVGElement::synchronizeAllAnimatedSVGAttribute): Pass a reference.
(WebCore::SVGElement::synchronizeAnimatedSVGAttribute): Ditto.
(WebCore::SVGElement::isPresentationAttributeWithSVGDOM): Updated to use the
new function from AttributeToPropertyMap.

  • svg/SVGElement.h: Changed animatedPropertyTypesForAttribute name to be plural

since it returns a vector of types, and made it use a return value instead of
an out argument. Added the correspondingUseElement function, and removed the
mapInstanceToElement and removeInstanceMapping functions.

  • svg/SVGElementInstance.cpp:

(WebCore::SVGElementInstance::SVGElementInstance): Removed now-unneeded call to
mapInstanceToElement. This is now handled entirely by the SVGElement itself.
(WebCore::SVGElementInstance::detach): Removed now-unneeded call to
removeInstanceMapping. This is now handled entirely by the SVGElement itself.
(WebCore::SVGElementInstance::invalidateAllInstancesOfElement): Rewrote to be
based on the instances set; logic is different now because we remove each
element from that set as we go.

  • svg/SVGElementRareData.h:

(WebCore::SVGElementRareData::SVGElementRareData): Removed initialization of
pointers since we can do that where they are defined instead.
(WebCore::SVGElementRareData::instances): Renamed from elementInstances and
changed the type.
(WebCore::SVGElementRareData::destroyAnimatedSMILStyleProperties): Deleted.
Unneeded since it was already called just before deleting the rare data.

  • svg/SVGTests.cpp:

(WebCore::SVGTests::SVGTests): Took advantage of using namespace.
(WebCore::createSVGTestPropertyInfo): Added. Helper for function below.
(WebCore::createSVGTextAttributeToPropertyMap): Ditto.
(WebCore::SVGTests::attributeToPropertyMap): Changed to use the create function
above. No longer allocates objects on the heap.
(WebCore::SVGTests::hasExtension): Reworked #if code to make the MathML part
independent rather than repeating the return statement.
(WebCore::SVGTests::synchronizeAttribute): Added. Helper for functions below.
(WebCore::SVGTests::synchronizeRequiredFeatures): Call synchronizeAttribute.
(WebCore::SVGTests::synchronizeRequiredExtensions): Ditto.
(WebCore::SVGTests::synchronizeSystemLanguage): Ditto.

  • svg/SVGTests.h: Removed unneeded forward declarations. Mark the many functions

that do not depend on object state as static so the call sites don't wastefully
pass a this pointer. Removed the unneeded requiredFeaturesPropertyInfo,
requiredExtensionsPropertyInfo, and systemLanguagePropertyInfo functions.
Added synchronizeAttribute helper function.

  • svg/SVGUseElement.cpp:

(WebCore::SVGUseElement::invalidateDependentShadowTrees): Updated to use the
new instances set and a modern for loop.

  • svg/properties/SVGAnimatedPropertyMacros.h: Pass reference to addProperty and

made a few other small refinements.

  • svg/properties/SVGAttributeToPropertyMap.cpp:

(WebCore::SVGAttributeToPropertyMap::addProperties): Fixed problems mentioned
in FIXME where we did too much hashing and vector resizing.
(WebCore::SVGAttributeToPropertyMap::addProperty): Streamlined to use a single
hash table lookup.
(WebCore::SVGAttributeToPropertyMap::properties): Renamed from
animatedPropertiesForAttribute and changed to return a vector rather than using
an out argument. Also had to change some since the vectors are in the hash table
now rather than allocated on the heap.
(WebCore::SVGAttributeToPropertyMap::types): Renamed from
animatedPropertyTypeForAttribute and made changes just like the ones above.
(WebCore::SVGAttributeToPropertyMap::synchronizeProperties): Use modern for
loops, take a reference rather than a pointer, and use the function pointer
directly instead of calling through a helper with various assertions.
(WebCore::SVGAttributeToPropertyMap::synchronizeProperty): Ditto.

  • svg/properties/SVGAttributeToPropertyMap.h: Updated to match the changes

above. Also changed the map to contain vectors instead of pointers to vectors.

9:54 AM Changeset in webkit [179259] by matthew_hanson@apple.com
  • 4 edits in branches/safari-600.5-branch/Source

Merge r179013. rdar://problem/19571601

9:50 AM Changeset in webkit [179258] by Darin Adler
  • 2 edits in trunk/Source/WebCore

REGRESSION (r173698): Leaks of selector lists in CSS parsing
https://bugs.webkit.org/show_bug.cgi?id=140993

Reviewed by Anders Carlsson.

  • css/CSSGrammar.y.in: Fixed logic in rules that were not moving a parser-

owned pointer into a unique_ptr in all code paths. The magic value
invalidSelectorVector makes this really messy. We might want to find a
different seolution in the future.

9:49 AM Changeset in webkit [179257] by matthew_hanson@apple.com
  • 6 edits in branches/safari-600.5-branch/Source

Merge r178938. rdar://problem/19558472

9:43 AM Changeset in webkit [179256] by matthew_hanson@apple.com
  • 4 edits in branches/safari-600.5-branch/Source

Merge r178858. rdar://problem/19540806

9:22 AM Changeset in webkit [179255] by Brent Fulgham
  • 2 edits in trunk/Source/WebCore

[Win] Unreviewed build fix after r179247.

  • history/PageCache.h: Need to declare NeverDestroyed specialization as

a friend.

9:08 AM Changeset in webkit [179254] by Antti Koivisto
  • 2 edits in trunk/Source/WebKit2

http/tests/xmlhttprequest/workers/methods.html sometimes times out with disk cache enabled
https://bugs.webkit.org/show_bug.cgi?id=140976

Reviewed by Chris Dumez.

Running

run-webkit-tests --release -2 http/tests/xmlhttprequest/workers/methods.html --iterations=100

would usually time out an iteration.

  • NetworkProcess/cache/NetworkCacheStorageCocoa.mm:

(WebKit::NetworkCacheStorage::dispatchRetrieveOperation):

Using dispatch_io_read with an empty file calls the handler block immediately with done boolean set
without it being an error. We failed to call the completion handler and any synchronous xhr would hang.
We may see an empty cache file if we are just in process of writing it.

Fix by handling this case specifically.

9:02 AM Changeset in webkit [179253] by jdiggs@igalia.com
  • 15 edits
    3 adds in trunk

AX: [ATK] Implement support for new AtkRole types for MathML
https://bugs.webkit.org/show_bug.cgi?id=140916

Reviewed by Chris Fleizach.

Source/WebCore:

Expose mfrac as ATK_ROLE_MATH_FRACTION, and both mroot and msqrt as
ATK_ROLE_MATH_ROOT. In the case of script elements, expose the container
(msub, msup, msubsup, and mmultiscripts) using the generic text block role
ATK_ROLE_SECTION. Then expose the actual script child elements using role
ATK_ROLE_SUBSCRIPT/ATK_ROLE_SUPERSCRIPT. In the case of mmultiscripts,
expose whether it is a prescript or postscript via AtkObject attribute.

Test: accessibility/math-multiscript-attributes.html
Also added additional test cases to accessibility/roles-exposed.html

  • accessibility/AccessibilityObject.h:

(WebCore::AccessibilityObject::isMathScriptObject): Added.
(WebCore::AccessibilityObject::isMathMultiscriptObject): Added.

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::isMathScriptObject): Added.
(WebCore::AccessibilityRenderObject::isMathMultiscriptObject): Added.

  • accessibility/AccessibilityRenderObject.h:
  • accessibility/atk/WebKitAccessibleWrapperAtk.cpp:

(webkitAccessibleGetAttributes): Expose whether a multiscript object is a prescript or postscript.
(atkRole): Map WebCore Accessibility objects to the new ATK roles.

Tools:

  • WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp: Add mapping for new ATK roles
  • gtk/jhbuild.modules: Bump minimum version of ATK used by jhbuild to 2.15.4

LayoutTests:

  • accessibility/math-multiscript-attributes.html: Added.
  • accessibility/roles-exposed.html: New test cases added.
  • platform/efl/accessibility/roles-exposed-expected.txt: Updated for new test cases.
  • platform/gtk/accessibility/math-multiscript-attributes-expected.txt: Added.
  • platform/gtk/accessibility/roles-exposed-expected.txt: Updated for new test cases.
  • platform/mac-mavericks/accessibility/roles-exposed-expected.txt: Updated for new test cases.
  • platform/mac-mountainlion/accessibility/roles-exposed-expected.txt: Updated for new test cases.
  • platform/mac/accessibility/math-multiscript-attributes-expected.txt: Added.
  • platform/mac/accessibility/roles-exposed-expected.txt: Updated for new test cases.
8:46 AM Changeset in webkit [179252] by Brent Fulgham
  • 2 edits in trunk/LayoutTests

REGRESSION: Re-skip media tests. (Unreviewed)
https://bugs.webkit.org/show_bug.cgi?id=140995

  • platform/win/TestExpectations: Re-skip the tests.
8:30 AM Changeset in webkit [179251] by clopez@igalia.com
  • 2 edits in trunk

[CMake] Minimum python version should be 2.7.
https://bugs.webkit.org/show_bug.cgi?id=140997

Reviewed by Csaba Osztrogonác.

  • CMakeLists.txt:
6:48 AM Changeset in webkit [179250] by Carlos Garcia Campos
  • 2 edits in trunk/Tools

[GTK] Stop removing color marks from unit tests output
https://bugs.webkit.org/show_bug.cgi?id=140996

Reviewed by Philippe Normand.

Since r178236 google tests use a custom simplified output without
any colors, so we don't need to handle the case of non ttys to
remove the color marks.

  • Scripts/run-gtk-tests:

(TestRunner.init):
(TestRunner._run_test_command.parse_line):

6:47 AM Changeset in webkit [179249] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

Unreviewed. Add missing file to WebInspector compilation for GTK+.

  • PlatformGTK.cmake: Add UserInterface/External/ESLint/eslint.js
5:44 AM Changeset in webkit [179248] by Carlos Garcia Campos
  • 3 edits in trunk/Tools

[GTK] Unit test /webkit2/WebKitWebView/page-visibility from WebKit2Gtk/TestWebKitWebView fails
https://bugs.webkit.org/show_bug.cgi?id=131731

Reviewed by Žan Doberšek.

A web page loaded offscreen is in prerender state not hidden.

  • Scripts/run-gtk-tests:

(TestRunner): Unskip /webkit2/WebKitWebView/page-visibility.

  • TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:

(testWebViewPageVisibility):

1:33 AM Changeset in webkit [179247] by Chris Dumez
  • 29 edits in trunk/Source

Rename pageCache() to PageCache::shared() and return a reference
https://bugs.webkit.org/show_bug.cgi?id=140983

Reviewed by Andreas Kling.

Rename pageCache() to PageCache::shared() as this is a singleton class
and have it return a reference instead of a pointer.

Source/WebCore:

  • history/BackForwardList.cpp:

(WebCore::BackForwardList::addItem):
(WebCore::BackForwardList::setCapacity):
(WebCore::BackForwardList::clearAllPageCaches):
(WebCore::BackForwardList::close):

  • history/CachedFrame.cpp:

(WebCore::CachedFrame::CachedFrame):

  • history/HistoryItem.cpp:

(WebCore::HistoryItem::setURL):

  • history/PageCache.cpp:

(WebCore::PageCache::shared):
(WebCore::PageCache::get):
(WebCore::pageCache): Deleted.

  • history/PageCache.h:
  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::commitProvisionalLoad):
(WebCore::FrameLoader::loadDifferentDocumentItem):

  • loader/HistoryController.cpp:

(WebCore::HistoryController::invalidateCurrentItemCachedPage):
(WebCore::HistoryController::updateForReload):

  • page/Frame.cpp:

(WebCore::Frame::setPageAndTextZoomFactors):

  • page/Page.cpp:

(WebCore::Page::setDeviceScaleFactor):
(WebCore::Page::setPagination):
(WebCore::Page::setVisitedLinkStore):

  • page/PageGroup.cpp:

(WebCore::PageGroup::captionPreferencesChanged):

  • page/Settings.cpp:

(WebCore::Settings::setUsesPageCache):

  • platform/MemoryPressureHandler.cpp:

(WebCore::MemoryPressureHandler::releaseCriticalMemory):

Source/WebKit/mac:

  • History/WebBackForwardList.mm:

(-[WebBackForwardList pageCacheSize]):

  • Misc/WebCoreStatistics.mm:

(+[WebCoreStatistics cachedPageCount]):
(+[WebCoreStatistics cachedFrameCount]):

  • WebCoreSupport/WebVisitedLinkStore.mm:

(WebVisitedLinkStore::removeAllVisitedLinks):
(WebVisitedLinkStore::removeVisitedLink):
(WebVisitedLinkStore::addVisitedLinkHash):

  • WebView/WebView.mm:

(+[WebView _setCacheModel:]):

Source/WebKit/win:

  • WebCoreStatistics.cpp:

(WebCoreStatistics::cachedPageCount):
(WebCoreStatistics::cachedFrameCount):

  • WebCoreSupport/WebVisitedLinkStore.cpp:

(WebVisitedLinkStore::removeAllVisitedLinks):
(WebVisitedLinkStore::addVisitedLinkHash):

  • WebView.cpp:

(WebView::setCacheModel):

Source/WebKit2:

  • WebProcess/WebPage/VisitedLinkTableController.cpp:

(WebKit::VisitedLinkTableController::setVisitedLinkTable):
(WebKit::VisitedLinkTableController::visitedLinkStateChanged):
(WebKit::VisitedLinkTableController::allVisitedLinkStateChanged):
(WebKit::VisitedLinkTableController::removeAllVisitedLinks):

  • WebProcess/WebPage/WebBackForwardListProxy.cpp:

(WebKit::WebBackForwardListProxy::removeItem):
(WebKit::WebBackForwardListProxy::close):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::releasePageCache):

  • WebProcess/cocoa/WebProcessCocoa.mm:

(WebKit::WebProcess::platformSetCacheModel):

  • WebProcess/soup/WebProcessSoup.cpp:

(WebKit::WebProcess::platformSetCacheModel):

1:22 AM Changeset in webkit [179246] by Darin Adler
  • 3 edits in trunk/Source/WebCore

Fix MediaPlayerEngine leaks
https://bugs.webkit.org/show_bug.cgi?id=140992

Reviewed by Jer Noble.

  • platform/graphics/MediaPlayer.cpp:

(WebCore::mutableInstalledMediaEnginesVector): Added.
(WebCore::buildMediaEnginesVector): Added.
(WebCore::installedMediaEngines): Changed this to be a vector of factories
instead of a vector of heap-allocated factories. The old code would leak
all the factories when this was called with the ResetEngines option.
(WebCore::addMediaEngine): Updated for above change.
(WebCore::bestMediaEngineForSupportParameters): Ditto.
(WebCore::nextMediaEngine): Ditto.
(WebCore::MediaPlayer::nextBestMediaEngine): Ditto.
(WebCore::MediaPlayer::loadWithNextMediaEngine): Ditto.
(WebCore::MediaPlayer::supportsType): Ditto.
(WebCore::MediaPlayer::getSupportedTypes): Ditto.
(WebCore::MediaPlayer::getSitesInMediaCache): Ditto.
(WebCore::MediaPlayer::clearMediaCache): Ditto.
(WebCore::MediaPlayer::clearMediaCacheForSite): Ditto.
(WebCore::MediaPlayer::supportsKeySystem): Ditto.
(WebCore::MediaPlayer::resetMediaEngines): Ditto.

  • platform/graphics/MediaPlayer.h: Ditto.
12:44 AM Changeset in webkit [179245] by Darin Adler
  • 2 edits in trunk/Source/WTF

Fix small leak in Collator
https://bugs.webkit.org/show_bug.cgi?id=140990

Reviewed by Andreas Kling.

  • wtf/unicode/icu/CollatorICU.cpp:

(WTF::Collator::Collator): Use fastStrDup instead of strdup.
(WTF::Collator::~Collator): Use fastFree on the collator locale that we
are abandoning. The old code instead just called free on a null pointer.

12:09 AM Changeset in webkit [179244] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Rename descendentxxx to descendantxxxx in RenderLayerBacking
https://bugs.webkit.org/show_bug.cgi?id=140979

Patch by Jeongmin Kim <jm86.kim@lge.com> on 2015-01-28
Reviewed by Martin Robinson.

Rename descendentxxx to descendantxxxx in RenderLayerBacking
for matching other variables and function names.

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateConfiguration):
(WebCore::RenderLayerBacking::updateAfterDescendants):
(WebCore::RenderLayerBacking::updateChildClippingStrategy):
(WebCore::RenderLayerBacking::paintsChildren):
(WebCore::descendantLayerPaintsIntoAncestor):
(WebCore::RenderLayerBacking::isPaintDestinationForDescendantLayers):
(WebCore::descendentLayerPaintsIntoAncestor): Deleted.
(WebCore::RenderLayerBacking::isPaintDestinationForDescendentLayers): Deleted.

Jan 27, 2015:

11:41 PM Changeset in webkit [179243] by bshafiei@apple.com
  • 6 edits in branches/safari-600.4-branch/Source

Merged r179230. rdar://problem/19621509

9:53 PM Changeset in webkit [179242] by Chris Dumez
  • 61 edits in trunk/Source

Use a Ref<CachedResourceLoader> in Document instead of a RefPtr
https://bugs.webkit.org/show_bug.cgi?id=140971

Reviewed by Andreas Kling.

Source/WebCore:

Use a Ref<CachedResourceLoader> in Document instead of a RefPtr as it
can never be null. Also have Document::cachedResourceLoader() return a
reference instead of a pointer. This gets rid of a lot of unnecessary
null-checks.

Source/WebKit/win:

Use more references instead of pointers.

  • WebDataSource.cpp:

(WebDataSource::subresourceForURL):

9:48 PM Changeset in webkit [179241] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

ExitSiteData saying m_takesSlowPath shouldn't mean early returning takesSlowPath() since for the non-LLInt case we later set m_couldTakeSlowPath, which is more precise
https://bugs.webkit.org/show_bug.cgi?id=140980

Reviewed by Oliver Hunt.

  • bytecode/CallLinkStatus.cpp:

(JSC::CallLinkStatus::computeFor):

9:29 PM Changeset in webkit [179240] by ap@apple.com
  • 1 edit
    2 copies in trunk/Tools

Partially revert r178802.

  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/MountainLion.png:
  • BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/MountainLion@2x.png:
9:11 PM Changeset in webkit [179239] by bshafiei@apple.com
  • 5 edits in trunk/Source

Versioning.

9:09 PM Changeset in webkit [179238] by bshafiei@apple.com
  • 1 copy in tags/Safari-601.1.16

New tag.

6:37 PM Changeset in webkit [179237] by ap@apple.com
  • 2 edits in trunk/LayoutTests

REGRESSION (OS X 10.10.2): media/track/track-in-band-style.html frequently times out
https://bugs.webkit.org/show_bug.cgi?id=140974

  • platform/mac/TestExpectations: Added an expectation.
6:29 PM Changeset in webkit [179236] by ap@apple.com
  • 17 edits in trunk/Source

More build fixes for newer clang.

Rubber-stamped by Anders Carlsson.

Source/WebCore:

  • loader/icon/IconDatabase.h: Added missing override keywords.

Source/WebKit/mac:

Marked a deprecated accessibility method as such.

  • WebView/WebFrame.mm:

(-[WebFrame accessibilityRoot]):

Source/WebKit2:

Added missing override keywords, marked some deprecated accessibility methods as such.

  • PluginProcess/EntryPoint/mac/LegacyProcess/PluginProcessMain.mm:

(WebKit::PluginProcessMainDelegate::doPreInitializationWork): Deleted.
(WebKit::PluginProcessMainDelegate::getExtraInitializationData): Deleted.
(WebKit::PluginProcessMainDelegate::doPostRunWork): Deleted.

  • PluginProcess/WebProcessConnection.h:
  • UIProcess/Cocoa/WebProcessPoolCocoa.mm:

(WebKit::WebProcessPool::platformInitializeWebProcess):

  • UIProcess/Plugins/PluginProcessProxy.h:
  • UIProcess/WebPageProxy.h:
  • UIProcess/mac/PageClientImpl.h:
  • WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:

(PageOverlayClientImpl::actionContextForResultAtPoint): Deleted.
(PageOverlayClientImpl::dataDetectorsDidPresentUI): Deleted.
(PageOverlayClientImpl::dataDetectorsDidChangeUI): Deleted.
(PageOverlayClientImpl::dataDetectorsDidHideUI): Deleted.

  • WebProcess/Plugins/Netscape/NetscapePlugin.h:

(WebKit::NetscapePlugin::isBeingAsynchronouslyInitialized): Deleted.

  • WebProcess/Plugins/PDF/PDFPlugin.h:
  • WebProcess/Plugins/PluginProcessConnection.h:
  • WebProcess/Plugins/PluginProxy.h:

(WebKit::PluginProxy::isBeingAsynchronouslyInitialized): Deleted.

  • WebProcess/WebCoreSupport/WebContextMenuClient.h:
5:54 PM Changeset in webkit [179235] by ap@apple.com
  • 2 edits in trunk/Tools

build.webkit.org/dashboard asserts on some commits
https://bugs.webkit.org/show_bug.cgi?id=140926

Reviewed by Tim Horton.

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

(Trac.prototype._convertCommitInfoElementToObject): Added a case for another root directory.

5:26 PM Changeset in webkit [179234] by Brent Fulgham
  • 2 edits in trunk/LayoutTests

[Win] Re-enable Sputnik.

  • platform/win/TestExpectations:
  • platform/win/fast/text/backslash-to-yen-sign-euc-expected.txt:
5:16 PM Changeset in webkit [179233] by roger_fong@apple.com
  • 10 edits in trunk

WebGL2: Disable various extensions on WebGL2 context that have been promoted to core.
https://bugs.webkit.org/show_bug.cgi?id=140907.
<rdar://problem/19545857>

Reviewed by Brent Fulgham.

Source/WebCore:

  • html/canvas/WebGL2RenderingContext.cpp:

(WebCore::WebGL2RenderingContext::getExtension):
(WebCore::WebGL2RenderingContext::getSupportedExtensions):

  • html/canvas/WebGL2RenderingContext.h:
  • html/canvas/WebGLRenderingContext.cpp:

(WebCore::WebGLRenderingContext::getExtension):
(WebCore::WebGLRenderingContext::getSupportedExtensions):

  • html/canvas/WebGLRenderingContext.h:
  • html/canvas/WebGLRenderingContextBase.cpp:

(WebCore::WebGLRenderingContextBase::getSupportedExtensions): Deleted.

  • html/canvas/WebGLRenderingContextBase.h:
  • html/canvas/WebGLRenderingContextBase.idl:

Remove some extra extension enums that shouldn't have been declared on the context idl.

LayoutTests:

  • fast/canvas/webgl/constants.html:
5:11 PM Changeset in webkit [179232] by ap@apple.com
  • 3 edits in trunk/Tools

Make flakiness dashboard OS list actually match test_expectations.py
https://bugs.webkit.org/show_bug.cgi?id=140969

Reviewed by Ryosuke Niwa.

  • TestResultServer/static-dashboards/flakiness_dashboard.js:
5:08 PM Changeset in webkit [179231] by Brent Fulgham
  • 3 edits
    1 add in trunk/LayoutTests

[Win] More Windows rebaselines.

  • platform/win/fast/events/ondrop-text-htmlt-expected.txt: Added.
  • platform/win/fast/text/backslash-to-yen-sign-euc-expected.txt:
  • platform/win/fast/text/fallback-traits-fixup-expected.txt:
  • platform/win/fast/text/international/complex-character-based-fallback-expected.txt:
5:06 PM Changeset in webkit [179230] by Beth Dakin
  • 6 edits in trunk/Source

Immediate action gesture recognizer still doesn't work well with IB
https://bugs.webkit.org/show_bug.cgi?id=140967
-and corresponding-
rdar://problem/19621509

Reviewed by Tim Horton.

We should add (or remove) the gesture recognizer in viewDidMoveToWindow because
initWithFrame it too early and IB might mess with it.
Source/WebKit/mac:

  • WebView/WebImmediateActionController.h:
  • WebView/WebImmediateActionController.mm:

(-[WebImmediateActionController immediateActionRecognizer]):

  • WebView/WebView.mm:

(-[WebView _commonInitializationWithFrameName:groupName:]):
(-[WebView viewDidMoveToWindow]):

Source/WebKit2:

  • UIProcess/API/mac/WKView.mm:

(-[WKView viewDidMoveToWindow]):
(-[WKView initWithFrame:processPool:configuration:webView:]):

4:48 PM Changeset in webkit [179229] by Chris Dumez
  • 2 edits in trunk/Source/WebCore

Remove unnecessary m_cachedPage null-checks in PageCache
https://bugs.webkit.org/show_bug.cgi?id=140965

Reviewed by Andreas Kling.

Remove unnecessary m_cachedPage null-checks in PageCache. We initialize
m_cachedPage when inserting the HistoryItem in the page cache and clear
it when removing it from the page cache. Therefore, it is guaranteed
that HistoryItems currently in the page cache have m_cachedPage
initialized and there is no need to null-check it.

  • history/PageCache.cpp:

(WebCore::PageCache::frameCount):
(WebCore::PageCache::markPagesForVistedLinkStyleRecalc):
(WebCore::PageCache::markPagesForFullStyleRecalc):
(WebCore::PageCache::markPagesForDeviceScaleChanged):
(WebCore::PageCache::markPagesForCaptionPreferencesChanged):

4:13 PM Changeset in webkit [179228] by ap@apple.com
  • 3 edits in trunk/Source/WebCore

Some NSAccessibility methods we use are deprecated on 10.10
https://bugs.webkit.org/show_bug.cgi?id=140966

Reviewed by Anders Carlsson.

  • accessibility/mac/AccessibilityObjectMac.mm:

(WebCore::AccessibilityObject::overrideAttachmentParent):
(WebCore::AccessibilityObject::accessibilityIgnoreAttachment):

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(-[WebAccessibilityObjectWrapper role]):
(-[WebAccessibilityObjectWrapper roleDescription]):
Silence the warnings for now.

4:02 PM Changeset in webkit [179227] by Chris Dumez
  • 5 edits in trunk/Source/WebCore

Rename isExpandedShorthand() to isShorthandCSSProperty() for clarity
https://bugs.webkit.org/show_bug.cgi?id=140954

Reviewed by Andreas Kling.

Rename isExpandedShorthand() to isShorthandCSSProperty() for clarity as
all CSS shorthand properties are now expanded during parsing (even
'font').

  • css/StylePropertyShorthand.cpp:

(WebCore::isShorthandCSSProperty):
(WebCore::isExpandedShorthand): Deleted.

  • css/StylePropertyShorthand.h:
  • css/StyleResolver.cpp:

(WebCore::StyleResolver::applyProperty):

  • css/makeprop.pl:
3:43 PM Changeset in webkit [179226] by matthew_hanson@apple.com
  • 6 edits in branches/safari-600.4-branch/Source

Merge r179129. rdar://problem/19489518

3:38 PM Changeset in webkit [179225] by Brent Fulgham
  • 2 edits in trunk/Tools

[Win] WinLauncher crashes on eleventh site visited
https://bugs.webkit.org/show_bug.cgi?id=140960

Reviewed by Anders Carlsson.

  • WinLauncher/WinLauncher.cpp:

(WinLauncher::showLastVisitedSites): Don't access off the end of
the history array.

3:34 PM Changeset in webkit [179224] by Lucas Forschler
  • 6 edits in branches/safari-600.1.4.15-branch/Source/WebCore

Merged r177647. rdar://problem/19445865

2:56 PM Changeset in webkit [179223] by fpizlo@apple.com
  • 5 edits
    2 moves in trunk/Source/JavaScriptCore

Move DFGBinarySwitch out of the DFG so that all of the JITs can use it
https://bugs.webkit.org/show_bug.cgi?id=140959

Rubber stamped by Geoffrey Garen.

I want to use this for polymorphic stubs for https://bugs.webkit.org/show_bug.cgi?id=140660.
This code no longer has DFG dependencies so this is a very clean move.

  • CMakeLists.txt:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • dfg/DFGBinarySwitch.cpp: Removed.
  • dfg/DFGBinarySwitch.h: Removed.
  • dfg/DFGSpeculativeJIT.cpp:
  • jit/BinarySwitch.cpp: Copied from Source/JavaScriptCore/dfg/DFGBinarySwitch.cpp.
  • jit/BinarySwitch.h: Copied from Source/JavaScriptCore/dfg/DFGBinarySwitch.h.
2:49 PM Changeset in webkit [179222] by Lucas Forschler
  • 8 edits in branches/safari-600.1.4.15-branch/Source/WebKit2

Merged r177612. rdar://problem/19445900

2:41 PM Changeset in webkit [179221] by ggaren@apple.com
  • 3 edits in trunk/Source/WTF

Removed WTF_MALLOC_VALIDATION
https://bugs.webkit.org/show_bug.cgi?id=140958

Reviewed by Anders Carlsson.

I don't think anyone has been using this, and the #ifdefs were driving
me crazy.

We have other options for validation -- like MallocGuardEdges,
MallocCheckHeapEach, MallocScribble, and GuardMalloc.

  • wtf/FastMalloc.cpp:

(WTF::tryFastMalloc):
(WTF::fastMalloc):
(WTF::tryFastCalloc):
(WTF::fastCalloc):
(WTF::fastFree):
(WTF::tryFastRealloc):
(WTF::fastRealloc):
(WTF::fastMallocSize):
(WTF::TCMalloc_ThreadCache::CreateCacheIfNecessary):
(WTF::Internal::fastMallocMatchFailed): Deleted.

  • wtf/FastMalloc.h:

(WTF::Internal::fastMallocValidationHeader): Deleted.
(WTF::Internal::fastMallocValidationSuffix): Deleted.
(WTF::Internal::fastMallocMatchValidationType): Deleted.
(WTF::Internal::setFastMallocMatchValidationType): Deleted.
(WTF::fastMallocMatchValidateMalloc): Deleted.
(WTF::fastMallocMatchValidateFree): Deleted.
(WTF::fastMallocValidate): Deleted.

2:37 PM Changeset in webkit [179220] by eric.carlson@apple.com
  • 7 edits
    1 copy
    3 adds in trunk

Simplify http/tests/media/video-play-stall.html
https://bugs.webkit.org/show_bug.cgi?id=140630

Reviewed by Brent Fulgham.

Source/WebCore:

Test: http/tests/media/video-play-waiting.html

  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:

(WebCore::MediaPlayerPrivateAVFoundation::play): Add more logging.
(WebCore::MediaPlayerPrivateAVFoundation::updateStates): MediaPlayerAVPlayerItemStatusPlaybackBufferEmpty

always maps to HaveCurrentData.

(WebCore::MediaPlayerPrivateAVFoundation::scheduleMainThreadNotification): Don't log FunctionType,

doing so it needlessly verbose.

(WebCore::MediaPlayerPrivateAVFoundation::dispatchNotification): Ditto.

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

(-[WebCoreAVFMovieObserver observeValueForKeyPath:ofObject:change:context:]): Log KVO property

values and notification state.

LayoutTests:

  • http/tests/media/video-play-stall-expected.txt:
  • http/tests/media/video-play-stall.html:
  • http/tests/media/video-play-waiting-expected.txt: Added.
  • http/tests/media/video-play-waiting.html: Added.
  • media/content/long-test.mp4: Added. New media file with 30 second duration.
  • media/content/long-test.ogv: Ditto.
  • platform/mac/TestExpectations: Remove video-play-stall.html from the skip list. Mark

video-play-waiting.html as flakey as it sometimes times out.

2:31 PM Changeset in webkit [179219] by Lucas Forschler
  • 4 edits in branches/safari-600.1.4.15-branch/Source/WebCore

Merged r177591. rdar://problem/19445895

2:29 PM Changeset in webkit [179218] by ap@apple.com
  • 3 edits in trunk/Tools

[Mac] Disable building Java applets by default
https://bugs.webkit.org/show_bug.cgi?id=140957
rdar://problem/19619529

Reviewed by Anders Carlsson.

It was actually already disabled unconditionally, by accident.

  • Scripts/webkitpy/layout_tests/run_webkit_tests.py: (parse_args):
  • Scripts/webkitpy/port/mac.py:

(MacPort._check_port_build):
(MacPort._build_java_test_support):

2:22 PM Changeset in webkit [179217] by Lucas Forschler
  • 3 edits in branches/safari-600.1.4.15-branch/Source/WebCore

Merged r177581. rdar://problem/19445888

2:07 PM Changeset in webkit [179216] by dbates@webkit.org
  • 3 edits in trunk/Tools

[iOS] run-webkit-tests --platform=ios* --lint-test-files does not work
https://bugs.webkit.org/show_bug.cgi?id=140949

Reviewed by Alexey Proskuryakov.

Add "ios-simulator" and "ios-simulator-wk2" to the list of ports without
builders so that run-webkit-tests can lint the appropriate TestExpectation
files.

  • Scripts/webkitpy/port/builders.py:
  • Scripts/webkitpy/port/ios.py:

(IOSSimulatorPort.init): Move logic to query for the Mac build directory from here...
(IOSSimulatorPort.relay_path): to here as this is the only caller that makes use of that
information to find the LayoutTestRelay tool. Otherwise, "self.assertEqual(len(calls), 1)"
in unit test webkitpy.tool.commands.rebaseline_unittest.TestRebaselineExpectations.test_rebaseline_expectations
will fail because IOSSimulatorPort.init() ultimately calls Tools/Scripts/webkit-build-directory
to determine the Mac build directory for each instantiation of IOSSimulatorPort. And this unit
test instantiates a port object for each builder listed in file Scripts/webkitpy/port/builders.py.

2:05 PM Changeset in webkit [179215] by Lucas Forschler
  • 2 edits in branches/safari-600.1.4.15-branch/Source/WebKit2

Merged r177531. rdar://problem/19445868

2:02 PM Changeset in webkit [179214] by ap@apple.com
  • 4 edits in trunk/Tools

Update bots on the flakiness dashboard
https://bugs.webkit.org/show_bug.cgi?id=140956

Reviewed by Ryosuke Niwa.

  • TestResultServer/static-dashboards/builders.jsonp:
  • TestResultServer/static-dashboards/flakiness_dashboard.js:
1:59 PM Changeset in webkit [179213] by Lucas Forschler
  • 8 edits in branches/safari-600.1.4.15-branch/Source/WebKit2

Merged r177526. <rdar://problem/19445868>

1:37 PM Changeset in webkit [179212] by Lucas Forschler
  • 3 edits in branches/safari-600.1.4.15-branch/Source/WebCore

Merged r177504. rdar://problem/19445872

1:34 PM Changeset in webkit [179211] by commit-queue@webkit.org
  • 41 edits
    1 copy
    4 adds in trunk/Source

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

Caused numerous layout test failures (Requested by mattbaker_
on #webkit).

Reverted changeset:

"Use FastMalloc (bmalloc) instead of BlockAllocator for GC
pages"
https://bugs.webkit.org/show_bug.cgi?id=140900
http://trac.webkit.org/changeset/179192

1:27 PM Changeset in webkit [179210] by Lucas Forschler
  • 8 edits in branches/safari-600.1.4.15-branch/Source/WebCore

Merged r177499. rdar://problem/19445880

1:19 PM Changeset in webkit [179209] by Lucas Forschler
  • 22 edits
    3 copies
    3 deletes in branches/safari-600.1.4.15-branch/Source

Merged r177455. rdar://problem/19445868

1:10 PM Changeset in webkit [179208] by Brent Fulgham
  • 8 edits
    11 adds
    1 delete in trunk/LayoutTests

[Win] Another round of bug filing and expectation updates.

  • platform/win/TestExpectations:
  • platform/win/fast/selectors: Added.
  • platform/win/fast/selectors/064-expected.txt: Added.
  • platform/win/fast/text/backslash-to-yen-sign-euc-expected.txt:
  • platform/win/fast/text/backslash-to-yen-sign-expected.png: Added.
  • platform/win/fast/text/drawBidiText-expected.txt: Added.
  • platform/win/fast/text/fallback-traits-fixup-expected.txt:
  • platform/win/fast/text/international/complex-character-based-fallback-expected.txt:
  • platform/win/fast/text/international/hindi-spacing-expected.txt: Added.
  • platform/win/fast/text/international/synthesized-italic-vertical-latin-expected.txt: Removed property svn:executable.
  • platform/win/fast/text/international/unicode-bidi-plaintext-in-textarea-expected.txt: Added.
  • platform/win/fast/text/unicode-variation-selector-expected.txt:
  • platform/win/fast/text/whitespace: Added.
  • platform/win/fast/text/whitespace/normal-after-nowrap-breaking-expected.txt: Added.
  • platform/win/fast/writing-mode/Kusa-Makura-background-canvas-expected.txt:
  • platform/win/fast/writing-mode/fieldsets-expected.txt: Added.
  • platform/win/js/dom/global-constructors-attributes-dedicated-worker-expected.txt: Removed.
  • platform/win/printing/iframe-print-expected.txt: Added.
  • platform/win/transforms/2d/zoom-menulist-expected.txt: Added.
1:00 PM Changeset in webkit [179207] by bshafiei@apple.com
  • 5 edits in tags/Safari-600.5.3.1/Source

Versioning.

12:55 PM Changeset in webkit [179206] by bshafiei@apple.com
  • 1 copy in tags/Safari-600.5.3.1

New tag.

12:50 PM Changeset in webkit [179205] by benjamin@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

Import the layout test style-sharing-type-and-readonly.html from blink
https://bugs.webkit.org/show_bug.cgi?id=125280

Reviewed by Sergio Villar Senin.

I fixed the bug a while ago but having one more test seems valuable.
This test is from blink: https://codereview.chromium.org/27033011
by Elliott Sprehn.

  • fast/css/style-sharing-type-and-readonly-expected.txt: Added.
  • fast/css/style-sharing-type-and-readonly.html: Added.
12:46 PM Changeset in webkit [179204] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

Modernize some constructors of the CSS JIT
https://bugs.webkit.org/show_bug.cgi?id=140903

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-01-27
Reviewed by Darin Adler.

Two constructors were still using the old style.

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::SelectorFragment::SelectorFragment): Deleted.
(WebCore::SelectorCompiler::TagNamePattern::TagNamePattern): Deleted.

12:45 PM Changeset in webkit [179203] by benjamin@webkit.org
  • 1 edit
    10 adds in trunk/LayoutTests

Import some extra tests for r179132
https://bugs.webkit.org/show_bug.cgi?id=140930

Reviewed by Sam Weinig.

Add some tests that were done from previous attempts at fixing
the bug.

  • fast/dom/SelectorAPI/tag-case-insensitive-expected.txt: Added.
  • fast/dom/SelectorAPI/tag-case-insensitive.html: Added.
  • fast/dom/SelectorAPI/tag-case-sensitive-expected.txt: Added.
  • fast/dom/SelectorAPI/tag-case-sensitive.xhtml: Added.
  • svg/css/case-sensitive-tags-expected.txt: Added.
  • svg/css/case-sensitive-tags.html: Added.
  • svg/dom/tag-case-sensitive-svg-in-html-expected.txt: Added.
  • svg/dom/tag-case-sensitive-svg-in-html.html: Added.

Those tests were created by Alexandru Chiculita for
https://bugs.webkit.org/show_bug.cgi?id=83438

The patch was rejected at the time due to the perf impact.
That has been solved since then by the CSS JIT.

  • svg/css/foreignObject-case-styling-expected.html: Added.
  • svg/css/foreignObject-case-styling.html: Added.

This test is from Boris Zbarsky when he reported
https://bugs.webkit.org/show_bug.cgi?id=79444.

12:25 PM Changeset in webkit [179202] by msaboff@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

REGRESSION(r178591): 20% regression in Octane box2d
https://bugs.webkit.org/show_bug.cgi?id=140948

Reviewed by Geoffrey Garen.

Added check that we have a lexical environment to the arguments is captured check.
It doesn't make sense to resolve "arguments" when it really isn't captured.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::willResolveToArgumentsRegister):

12:16 PM Changeset in webkit [179201] by Brent Fulgham
  • 2 edits in trunk/Source/WebCore

[Win] Unreviewed build fix.

Lack of include guards in WebVTTElement.h caused a build failure once we started including
this header file from more than one implementation file.

  • html/track/WebVTTElement.h:
11:52 AM Changeset in webkit [179200] by dbates@webkit.org
  • 6 edits in trunk/LayoutTests

[iOS] Update test results and test expectations

  • platform/ios-simulator-wk1/TestExpectations:
  • platform/ios-simulator-wk2/TestExpectations:
  • platform/ios-simulator/TestExpectations:
  • platform/ios-simulator/css3/blending/blend-mode-simple-composited-expected.txt:
  • platform/ios-simulator/css3/blending/blend-mode-simple-expected.txt:
11:44 AM Changeset in webkit [179199] by dbates@webkit.org
  • 2 edits in trunk/Tools

[iOS WK2] Add directory LayoutTests/platform/wk2 to the list of baseline search paths
https://bugs.webkit.org/show_bug.cgi?id=140942

Reviewed by Alexey Proskuryakov.

The directory LayoutTests/platform/wk2 contains test expectations and test results that
are applicable to all WebKit2 ports. We should make use of this information when
running layout tests using iOS WebKit2.

Additionally, make use of the convenience function Port._wk2_port_name() for the name
of the WebKit2 port instead of directly using string concatenation.

  • Scripts/webkitpy/port/ios.py:

(IOSSimulatorPort.default_baseline_search_path):

11:41 AM Changeset in webkit [179198] by matthew_hanson@apple.com
  • 2 edits in branches/safari-600.4-branch/Source/WebKit2

Merge r179195. rdar://problem/19572685

11:39 AM Changeset in webkit [179197] by dino@apple.com
  • 12 edits in trunk

CSSKeyframesRule::findRule() and deleteRule() should delete the last matching rule, not the first
https://bugs.webkit.org/show_bug.cgi?id=139732

Patch by Sylvain Galineau <galineau@adobe.com> on 2015-01-26
Reviewed by Dean Jackson and Darin Adler.

Source/WebCore:

No new tests because existing tests have been updated to verify this behavior.

  • css/CSSKeyframeRule.h:

(WebCore::StyleKeyframe::getKeys): Deleted.

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::keyframeStylesForAnimation): use StyleKeyframe::keys().

  • css/CSSKeyframeRule.cpp:

(WebCore::StyleKeyframe::parseKeyString): Deleted. Moved to CSSParser.
(WebCore::StyleKeyframe::keyText): Build keyframe selector from Vector<double> representation.

  • css/CSSKeyframeRule.h:

(WebCore::StyleKeyframe::setKeyText): parse keyframe selector into Vector<double>.
(WebCore::StyleKeyframe::keys): Added. Returns vector representation of selector keys.
(WebCore::StyleKeyframe::getKeys): Deleted. Now keys().

  • css/CSSKeyframesRule.cpp:

(WebCore::StyleRuleKeyframes::findKeyframeIndex): Return last matching rule.

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseKeyframeSelector): Added. Moved from StyleKeyframe.

  • css/CSSParser.h:

(WebCore::CSSParser::parseKeyframeSelector): Added. Moved from StyleKeyframe.

LayoutTests:

Update existing keyframes OM tests to check for findRule/deleteRule matching order i.e. find/delete last specified rule.

  • animations/keyframes-rule-expected.txt:
  • animations/keyframes-rule.html:
  • animations/unprefixed-keyframes-rule-expected.txt:
  • animations/unprefixed-keyframes-rule.html:
11:16 AM Changeset in webkit [179196] by Chris Dumez
  • 2 edits
    2 deletes in trunk/LayoutTests

Unreviewed, rebaseline fast/css/css2-system-fonts.html on iOS.

Rebaseline fast/css/css2-system-fonts.html on iOS after r179168.

  • platform/ios-sim-deprecated/fast/css/css2-system-fonts-expected.txt: Removed.
  • platform/ios-simulator-wk2/fast/css/css2-system-fonts-expected.txt:
  • platform/ios-simulator/fast/css/css2-system-fonts-expected.txt: Removed.
11:12 AM Changeset in webkit [179195] by Beth Dakin
  • 2 edits in trunk/Source/WebKit2

Invoking an immediate action on link often dismisses selection
https://bugs.webkit.org/show_bug.cgi?id=140911
-and corresponding-
rdar://problem/19572685

Reviewed by Tim Horton.

Calling _page->setMaintainsInactiveSelection(false) in complete is often
too soon. Instead, call it in dismissContentRelativeChildWindows. This is more
similar to the timing for the TextIndicator.

  • UIProcess/mac/WKImmediateActionController.mm:

(-[WKImmediateActionController dismissContentRelativeChildWindows]):
(-[WKImmediateActionController immediateActionRecognizerWillPrepare:]):
(-[WKImmediateActionController immediateActionRecognizerDidCompleteAnimation:]):

11:08 AM Changeset in webkit [179194] by rniwa@webkit.org
  • 2 edits in trunk/Websites/perf.webkit.org

Unreviewed build fix. "eta" isn't set on a in-progress build on a newly added builder.

  • tools/sync-with-buildbot.py:

(find_request_updates):

10:44 AM Changeset in webkit [179193] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit/mac

Fixed building projects that import WebView.h with WK_ENABLE_FORMAL_DELEGATE_PROTOCOLS.

Rubber-stamped by Anders Carlsson.

  • WebView/WebView.h: Added forward declarations of the protocols.
10:29 AM Changeset in webkit [179192] by ggaren@apple.com
  • 41 edits
    5 deletes in trunk/Source

Use FastMalloc (bmalloc) instead of BlockAllocator for GC pages
https://bugs.webkit.org/show_bug.cgi?id=140900

Reviewed by Mark Hahnenberg.

Source/JavaScriptCore:

Removes some more custom allocation code.

Looks like a speedup. (See results attached to bugzilla.)

Will hopefully reduce memory use by improving sharing between the GC and
malloc heaps.

  • heap/BlockAllocator.cpp: Removed.
  • heap/BlockAllocator.h: Removed. No need for a custom allocator anymore.
  • heap/CodeBlockSet.cpp:

(JSC::CodeBlockSet::CodeBlockSet):

  • heap/CodeBlockSet.h: Feed the compiler.
  • heap/CopiedBlock.h:

(JSC::CopiedBlock::createNoZeroFill):
(JSC::CopiedBlock::create):
(JSC::CopiedBlock::CopiedBlock):
(JSC::CopiedBlock::isOversize):
(JSC::CopiedBlock::payloadEnd):
(JSC::CopiedBlock::capacity):

  • heap/CopiedBlockInlines.h:

(JSC::CopiedBlock::reportLiveBytes): Each copied block now tracks its
own size, since we can't rely on Region to tell us our size anymore.

  • heap/CopiedSpace.cpp:

(JSC::CopiedSpace::~CopiedSpace):
(JSC::CopiedSpace::tryAllocateOversize):
(JSC::CopiedSpace::tryReallocateOversize):

  • heap/CopiedSpaceInlines.h:

(JSC::CopiedSpace::recycleEvacuatedBlock):
(JSC::CopiedSpace::recycleBorrowedBlock):
(JSC::CopiedSpace::allocateBlockForCopyingPhase):
(JSC::CopiedSpace::allocateBlock):
(JSC::CopiedSpace::startedCopying): Deallocate blocks directly, rather
than pushing them onto the block allocator's free list; the block
allocator doesn't exist anymore.

  • heap/CopyWorkList.h:

(JSC::CopyWorkListSegment::create):
(JSC::CopyWorkListSegment::CopyWorkListSegment):
(JSC::CopyWorkList::~CopyWorkList):
(JSC::CopyWorkList::append):
(JSC::CopyWorkList::CopyWorkList): Deleted.

  • heap/GCSegmentedArray.h:

(JSC::GCArraySegment::GCArraySegment):

  • heap/GCSegmentedArrayInlines.h:

(JSC::GCSegmentedArray<T>::GCSegmentedArray):
(JSC::GCSegmentedArray<T>::~GCSegmentedArray):
(JSC::GCSegmentedArray<T>::clear):
(JSC::GCSegmentedArray<T>::expand):
(JSC::GCSegmentedArray<T>::refill):
(JSC::GCArraySegment<T>::create):

  • heap/GCThreadSharedData.cpp:

(JSC::GCThreadSharedData::GCThreadSharedData):

  • heap/GCThreadSharedData.h: Feed the compiler.
  • heap/HandleBlock.h:
  • heap/HandleBlockInlines.h:

(JSC::HandleBlock::create):
(JSC::HandleBlock::HandleBlock):
(JSC::HandleBlock::payloadEnd):

  • heap/HandleSet.cpp:

(JSC::HandleSet::~HandleSet):
(JSC::HandleSet::grow): Same as above.

  • heap/Heap.cpp:

(JSC::Heap::Heap):

  • heap/Heap.h: Removed the block allocator since it is unused now.
  • heap/HeapBlock.h:

(JSC::HeapBlock::destroy):
(JSC::HeapBlock::HeapBlock):
(JSC::HeapBlock::region): Deleted. Removed the Region pointer from each
HeapBlock since a HeapBlock is just a normal allocation now.

  • heap/HeapInlines.h:

(JSC::Heap::blockAllocator): Deleted.

  • heap/HeapTimer.cpp:
  • heap/MarkStack.cpp:

(JSC::MarkStackArray::MarkStackArray):

  • heap/MarkStack.h: Feed the compiler.
  • heap/MarkedAllocator.cpp:

(JSC::MarkedAllocator::allocateBlock): No need to use a custom code path
based on size, since we use a general purpose allocator now.

  • heap/MarkedBlock.cpp:

(JSC::MarkedBlock::create):
(JSC::MarkedBlock::destroy):
(JSC::MarkedBlock::MarkedBlock):

  • heap/MarkedBlock.h:

(JSC::MarkedBlock::capacity): Track block size explicitly, like CopiedBlock.

  • heap/MarkedSpace.cpp:

(JSC::MarkedSpace::freeBlock):

  • heap/MarkedSpace.h:
  • heap/Region.h: Removed.
  • heap/SlotVisitor.cpp:

(JSC::SlotVisitor::SlotVisitor): Removed reference to block allocator.

  • heap/SuperRegion.cpp: Removed.
  • heap/SuperRegion.h: Removed.
  • heap/WeakBlock.cpp:

(JSC::WeakBlock::create):
(JSC::WeakBlock::WeakBlock):

  • heap/WeakBlock.h:
  • heap/WeakSet.cpp:

(JSC::WeakSet::~WeakSet):
(JSC::WeakSet::addAllocator):
(JSC::WeakSet::removeAllocator): Removed reference to block allocator.

Source/WebCore:

  • platform/cocoa/MemoryPressureHandlerCocoa.mm:

(WebCore::MemoryPressureHandler::install): Be sure to release other
memory after GC and not before, since GC might contribute to free
malloc pages now.

Source/WTF:

New interface for aligned allocation: fastAlignedMalloc / fastAlignedFree.
We require a special function call on free because Windows.

  • wtf/FastMalloc.cpp:

(WTF::fastAlignedMalloc):
(WTF::fastAlignedFree): Do it.

(WTF::do_memalign): Un-ifdef this, since we use it now.

  • wtf/FastMalloc.h: Make our new function names visible like the rest

of fastMalloc.

10:24 AM Changeset in webkit [179191] by ap@apple.com
  • 3 edits in trunk/LayoutTests

<rdar://problem/16801814> Media controls do not appear in 2 DRT tests

This doesn't appear to happen any more, although the tests are still flaky due to
flaky font metrics.

  • platform/mac/TestExpectations:
  • platform/mac/media/controls-without-preload-expected.txt:
10:22 AM Changeset in webkit [179190] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

[Win] Disable FTL stress tests
https://bugs.webkit.org/show_bug.cgi?id=140932

Reviewed by Brent Fulgham.

  • Scripts/run-javascriptcore-tests:
10:15 AM Changeset in webkit [179189] by Chris Dumez
  • 3 edits in trunk/LayoutTests

Unreviewed. Rebaseline several editing tests on Mac after r179168.

  • platform/mac/editing/attributed-string/font-size-expected.txt:
  • platform/mac/editing/attributed-string/vertical-align-expected.txt:
9:28 AM Changeset in webkit [179188] by Brent Fulgham
  • 2 edits in trunk/LayoutTests

[Win] Unskip tests now that r179170 is in place.

  • platform/win/TestExpectations:
9:13 AM Changeset in webkit [179187] by Csaba Osztrogonác
  • 2 edits in trunk/Source/JavaScriptCore

[ARM] Typo fix after r176083
https://bugs.webkit.org/show_bug.cgi?id=140937

Reviewed by Anders Carlsson.

  • assembler/ARMv7Assembler.h:

(JSC::ARMv7Assembler::ldrh):

9:05 AM Changeset in webkit [179186] by Brent Fulgham
  • 3 edits
    1 add in trunk/LayoutTests

[Win] Adjust some expectations based on test bot display metrics.

  • platform/win/TestExpectations:
  • platform/win/fast/dom/adopt-node-crash-2-expected.txt:
  • platform/win/fast/ondrop-text-html-expected.txt: Added.
9:01 AM Changeset in webkit [179185] by Alan Bujtas
  • 4 edits in trunk/Source/WebCore

Simple line layout: Make FlowContents an iterator class.
https://bugs.webkit.org/show_bug.cgi?id=140909

Reviewed by Antti Koivisto.

This patch transfers content position handling from createLineRuns()/LineState to
FlowContents. FlowContents becomes a real iterator class.
It tightens content and position information so that we can start supporting
no textual content such as <br>.

No change in functionality.

  • rendering/SimpleLineLayout.cpp:

(WebCore::SimpleLineLayout::LineState::commitAndCreateRun): Remove redundant committedLogicalRight.
(WebCore::SimpleLineLayout::LineState::addUncommitted): Now that we don't have current
positon in LineState, we need to be able to figure out where we start the uncommitted content.
This is mainly relevant after collapsed whitespace, when we start a new uncommitted segment.
It was previously achieved through LineState::jumpTo().
(WebCore::SimpleLineLayout::LineState::removeTrailingWhitespace):
(WebCore::SimpleLineLayout::firstFragment): Return the first fragment for this line.
(WebCore::SimpleLineLayout::createLineRuns): Renaming and removing position handling.
(WebCore::SimpleLineLayout::closeLineEndingAndAdjustRuns): Renaming.
(WebCore::SimpleLineLayout::createTextRuns):
(WebCore::SimpleLineLayout::LineState::jumpTo): Deleted.
(WebCore::SimpleLineLayout::initializeNewLine): Deleted. : Move overflow fragment functionality
to firstFragment().

  • rendering/SimpleLineLayoutFlowContents.cpp:

(WebCore::SimpleLineLayout::FlowContents::nextTextFragment):

  • rendering/SimpleLineLayoutFlowContents.h:
9:00 AM Changeset in webkit [179184] by dbates@webkit.org
  • 6 edits in trunk/Websites/webkit.org

Update Xcode requirement and add instructions to build, run, and debug WebKit for iOS Simulator

Reviewed by David Kilzer.

  • building/build.html: Added instructions to build WebKit for iOS Simulator.
  • building/debug.html: Added some instructions to debug the UIProcess and WebProcess

in the iOS Simulator using command line tools. We should look to add Xcode instructions
and simplify these steps once we teach debug-safari about the iOS Simulator.

  • building/run.html: Added remark to run Safari in the iOS Simulator.
  • building/tools.html: Require Xcode 6.1.1 (for the iOS 8.1 SDK) to build for iOS Simulator.
  • css/main.css: Define the .ios-instructions class with the same style as other .*-instructions classes.
8:17 AM Changeset in webkit [179183] by andersca@apple.com
  • 7 edits in trunk/Source/WebKit/mac

Make it easy to test enabling formal delegate protocols
https://bugs.webkit.org/show_bug.cgi?id=140892

Reviewed by Dan Bernstein.

Add an WK_ENABLE_FORMAL_DELEGATE_PROTOCOLS define that controls whether delegates should be formal protocols.

  • Misc/WebDownload.h:
  • WebView/WebFrameLoadDelegate.h:
  • WebView/WebPolicyDelegate.h:
  • WebView/WebResourceLoadDelegate.h:
  • WebView/WebUIDelegate.h:
  • WebView/WebView.h:
8:10 AM Changeset in webkit [179182] by Carlos Garcia Campos
  • 6 edits in trunk/Source/WebKit2

REGRESSION(r166975): [GTK] Page overlays are not drawn anymore after r166975
https://bugs.webkit.org/show_bug.cgi?id=131433

Reviewed by Žan Doberšek.

Implement page overlays for the GTK+ port.

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:

Override pure virtual setViewOverlayRootLayer().

  • WebProcess/WebPage/DrawingAreaImpl.cpp:

(WebKit::DrawingAreaImpl::display): Remove FIXME and use modern
for loop.
(WebKit::DrawingAreaImpl::attachViewOverlayGraphicsLayer): Remove
ifdefs and use LayerTreeHost::setViewOverlayRootLayer().

  • WebProcess/WebPage/LayerTreeHost.h: Add pure virtual setViewOverlayRootLayer().
  • WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:

(WebKit::LayerTreeHostGtk::LayerTreeHostGtk): Initialize m_viewOverlayRootLayer.
(WebKit::LayerTreeHostGtk::initialize): Remove FIXME.
(WebKit::LayerTreeHostGtk::setNonCompositedContentsNeedDisplay):
Remove unused old page overlays code.
(WebKit::LayerTreeHostGtk::setNonCompositedContentsNeedDisplayInRect): Ditto.
(WebKit::LayerTreeHostGtk::sizeDidChange): Ditto.
(WebKit::LayerTreeHostGtk::paintContents): Remove FIXME.
(WebKit::LayerTreeHostGtk::flushPendingLayerChanges): Flush
compositing state on m_pageOverlayLayers if present.
(WebKit::LayerTreeHostGtk::setViewOverlayRootLayer): Set m_pageOverlayLayers.
(WebKit::LayerTreeHostGtk::createPageOverlayLayer): Deleted.
(WebKit::LayerTreeHostGtk::destroyPageOverlayLayer): Deleted.

  • WebProcess/WebPage/gtk/LayerTreeHostGtk.h: Remove unused old

page overlays code.

7:59 AM Changeset in webkit [179181] by Chris Dumez
  • 9 edits in trunk

HTMLElement.dir should only return known values
https://bugs.webkit.org/show_bug.cgi?id=140925

Reviewed by Darin Adler.

Source/WebCore:

HTMLElement.dir should only return known values according to the HTML
specification:
https://html.spec.whatwg.org/multipage/dom.html#dom-document-dir

Chrome and Firefox 28 match the specification. IE11's behavior is
slightly different:

  • When setting an unknown 'dir' value, an exception will be thrown.
  • Setting a known 'dir' value in a non-canonical case (e.g. "RTL"), the value will be directly converted to its canonical form (e.g. "rtl") before updating the DOM tree. (close to the spec but changing the case upon setting).

This patch is based on the following Blink revision by me:
https://src.chromium.org/viewvc/blink?view=rev&revision=171861

Test: fast/dom/document-dir-property.html

  • html/HTMLDocument.cpp:

(WebCore::HTMLDocument::dir):
(WebCore::HTMLDocument::setDir):

  • html/HTMLDocument.h:
  • html/HTMLElement.cpp:

(WebCore::toValidDirValue):
(WebCore::HTMLElement::dir):
(WebCore::HTMLElement::setDir):

  • html/HTMLElement.h:
  • html/HTMLElement.idl:

LayoutTests:

Update fast/dom/document-dir-property.html to make sure HTMLDocument.dir
and HTMLElement.dir only return known values, as per the HTML
specification.

  • fast/dom/document-dir-property-expected.txt:
  • fast/dom/document-dir-property.html:
7:32 AM Changeset in webkit [179180] by dbates@webkit.org
  • 2 edits in trunk/Tools

REGRESSION (r179130): Perl warns about subroutine redefinition when running configure-xcode-for-ios-development
https://bugs.webkit.org/show_bug.cgi?id=140939

Reviewed by Eric Carlson.

Fixes the Perl warning: "Subroutine wanted redefined at Tools/Scripts/configure-xcode-for-ios-development line 106."

  • Scripts/webkitdirs.pm:

(hasUserInstalledAppInSimulatorDevice): Pass a reference to an anonymous function instead
of a named function to find() to avoid redefinition warnings in scripts that include webkitdirs.pm
and define a function called wanted.

7:16 AM Changeset in webkit [179179] by dbates@webkit.org
  • 2 edits in trunk/Tools

Teach run-webkit-app --simulator how to install custom built app
https://bugs.webkit.org/show_bug.cgi?id=140691

Fix inadvertent omission of directory test flag in expression to check for the
existence of the iOS simulator device-specific directory for user installed apps.

  • Scripts/webkitdirs.pm:

(hasUserInstalledAppInSimulatorDevice):

6:12 AM Changeset in webkit [179178] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] AX: Update test expectations for test related with AXRole.
https://bugs.webkit.org/show_bug.cgi?id=140933

Unreviewed EFL gardening.

roles-exposed.html's test expectation changed: for specified elements
AXRole value should NOT be equal AXUnknown but AXStatic because for ATK
version 2.15.2 there is new ATK_ROLE_STATIC role which should be used
instead of ATK_ROLE_UNKNOWN.

Patch by Michal Poteralski <m.poteralski@samsung.com> on 2015-01-27

  • platform/efl/accessibility/roles-exposed-expected.txt:
1:40 AM Changeset in webkit [179177] by Csaba Osztrogonác
  • 2 edits in trunk/PerformanceTests/SunSpider

[Win] JSC profiler tests asserts in debug mode
https://bugs.webkit.org/show_bug.cgi?id=140931

Unreviewed gardening, skip failing tests.

  • profiler-test.yaml:
1:26 AM Changeset in webkit [179176] by Csaba Osztrogonác
  • 3 edits in trunk/Source/JavaScriptCore

[Win] Unreviewed gardening, skip failing tests.

  • tests/exceptionFuzz.yaml: Skip exception fuzz tests due to bug140928.
  • tests/mozilla/mozilla-tests.yaml: Skip ecma/Date/15.9.5.28-1.js due to bug140927.
12:19 AM Changeset in webkit [179175] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit2

Remove remaining PLUGIN_ARCHITECTURE(WIN) code blocks from WebKit2.
https://bugs.webkit.org/show_bug.cgi?id=140912

Patch by Sungmann Cho <sungmann.cho@navercorp.com> on 2015-01-27
Reviewed by Anders Carlsson.

  • Shared/Plugins/Netscape/NetscapePluginModule.cpp:

(WebKit::NetscapePluginModule::tryLoad):

  • Shared/Plugins/PluginQuirks.h:
  • WebProcess/Plugins/Netscape/NetscapePlugin.cpp:

(WebKit::NetscapePlugin::userAgent):

  • WebProcess/Plugins/Netscape/NetscapePlugin.h:
Note: See TracTimeline for information about the timeline view.