Timeline


and

09/13/11:

23:58 Changeset [95078] by rniwa@webkit.org
  • 2 edits in trunk/Tools

committers.py is missing some contributors
https://bugs.webkit.org/show_bug.cgi?id=68059

Reviewed by Adam Barth.

Add David Barr, Jan Erik Hanssen, and Kim Grönholm.

Also add nicks of Alejandro G. Castro, Collin Jackson, and Matt Lilek.

  • Scripts/webkitpy/common/config/committers.py:
23:46 Changeset [95077] by ossy@webkit.org
  • 4 edits
    3 deletes in trunk

Unreviewed, rolling out r95058.
http://trac.webkit.org/changeset/95058
https://bugs.webkit.org/show_bug.cgi?id=68058

It made css3/calc/regression-62276.html crash (Requested by
Ossy on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-09-13

Source/WebCore:

  • css/CSSParser.cpp:

(WebCore::BorderImageParseContext::BorderImageParseContext):
(WebCore::BorderImageParseContext::allowBreak):
(WebCore::BorderImageParseContext::allowWidth):
(WebCore::BorderImageParseContext::allowOutset):
(WebCore::BorderImageParseContext::allowRepeat):
(WebCore::BorderImageParseContext::commitImage):
(WebCore::BorderImageParseContext::commitImageSlice):
(WebCore::BorderImageParseContext::commitSlash):
(WebCore::BorderImageParseContext::commitBorderWidth):
(WebCore::BorderImageParseContext::commitBorderOutset):
(WebCore::BorderImageParseContext::commitRepeat):
(WebCore::CSSParser::parseBorderImage):
(WebCore::CSSParser::parseBorderImageRepeat):
(WebCore::CSSParser::parseBorderImageSlice):
(WebCore::CSSParser::parseBorderImageQuad):

  • css/CSSParserValues.h:

LayoutTests:

  • fast/borders/border-image-scrambled.html: Removed.
  • platform/mac/fast/borders/border-image-scrambled-expected.png: Removed.
  • platform/mac/fast/borders/border-image-scrambled-expected.txt: Removed.
23:32 Changeset [95076] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Fix webkit python test after r95061.

  • Scripts/webkitpy/tool/bot/irc_command_unittest.py:
21:37 Changeset [95075] by jnd@chromium.org
  • 2 edits in trunk/Tools

Add wangxianzhu@chromium.org as a contributor.

21:19 Changeset [95074] by inferno@chromium.org
  • 3 edits
    2 adds in trunk

Crash in RenderScrollbarPart::imageChanged.
https://bugs.webkit.org/show_bug.cgi?id=68009

Reviewed by Simon Fraser.

Source/WebCore:

When a custom scrollbar is removed from its FrameView, its destruction
can be delayed because of RefPtr maintained in EventHandler class
(m_lastScrollbarUnderMouse). Upon removal, we delete all the scrollbar
parts so that they don't link back to scrollbar. However, because of the
delay, we can have a call to updateScrollbarPart which recreates it.
When scrollbar is getting destroyed, we just check to see if there are
remaining scrollbar parts and if yes, we destroy them.

Test: scrollbars/scrollbar-part-created-with-no-parent-crash.html

  • rendering/RenderScrollbar.cpp:

(WebCore::RenderScrollbar::~RenderScrollbar):

LayoutTests:

  • scrollbars/scrollbar-part-created-with-no-parent-crash-expected.txt: Added.
  • scrollbars/scrollbar-part-created-with-no-parent-crash.html: Added.
20:36 Changeset [95073] by ukai@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, update chromium test expectations.

  • platform/chromium/test_expectations.txt: failures on GPU starting from r95058
19:45 Changeset [95072] by ukai@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, update chromium test expectations.

  • platform/chromium/test_expectations.txt: failures starting from r95058
19:09 Changeset [95071] by adamk@chromium.org
  • 3 edits
    2 adds in trunk

Fix cssText property of counter-valued CSSPrimitiveValue and avoid uninitialized read
https://bugs.webkit.org/show_bug.cgi?id=68021

Reviewed by Tony Chang.

Source/WebCore:

Reported by valgrind in http://crbug.com/60653.

Besides fixing the uninitialized read, add support for outputting the
list separator for counters() calls and the list-style name.

Test: fast/css/counters/counter-cssText.html

  • css/CSSPrimitiveValue.cpp:

(WebCore::CSSPrimitiveValue::cssText):

LayoutTests:

  • fast/css/counters/counter-cssText-expected.txt: Added.
  • fast/css/counters/counter-cssText.html: Added.
18:58 Changeset [95070] by bashi@chromium.org
  • 3 edits
    3 adds in trunk

WebFont followed tiny monospace text displays weird
https://bugs.webkit.org/show_bug.cgi?id=67996

Reviewed by Darin Adler.

Source/WebCore:

Always call wkSetCGFontRenderingMode() in Font::drawGlyphs() so that the rendering mode is set correctly.

Test: platform/mac/fast/text/webfont-after-tiny-monospace-text.html

  • platform/graphics/mac/FontMac.mm:

(WebCore::Font::drawGlyphs):

LayoutTests:

This test ensures that webfont followed tiny monospace text is displayed correctly.

  • platform/mac/fast/text/webfont-after-tiny-monospace-text-expected.png: Added.
  • platform/mac/fast/text/webfont-after-tiny-monospace-text-expected.txt: Added.
  • platform/mac/fast/text/webfont-after-tiny-monospace-text.html: Added.
18:24 Changeset [95069] by abarth@webkit.org
  • 6 edits in trunk/Tools

garden-o-matic has unfriendly error messages when the local server is not available
https://bugs.webkit.org/show_bug.cgi?id=68042

Reviewed by Dimitri Glazkov.

This patch moves us from using alert to showing the error inline in the
progress dialog.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/checkout.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/checkout_unittests.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/garden-o-matic.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui.js:
18:23 Changeset [95068] by abarth@webkit.org
  • 5 edits in trunk/Tools

FailureGrid in garden-o-matic should link to the builder's waterfall page
https://bugs.webkit.org/show_bug.cgi?id=68036

Reviewed by Dimitri Glazkov.

One of the users in the user study thought the configurations names in
the failure grid would link to the underlying bots. That makes sense,
so this patch adds the behavior.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/failures.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/failures_unittests.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/notifications_unittests.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/styles/notifications.css:
18:21 Changeset [95067] by abarth@webkit.org
  • 6 edits in trunk/Tools

garden-o-matic should be able to mark failures as expected
https://bugs.webkit.org/show_bug.cgi?id=68027

Reviewed by Dimitri Glazkov.

All the back-end infrastructure exists for this operation. This patch
just adds some UI to the front-end and wires that UI up to the back
end. This exact UI will likely need some more polish, but this should
be a reasonable first cut.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/actions.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/notifications.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/notifications_unittests.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/results.js:
18:20 Changeset [95066] by abarth@webkit.org
  • 7 edits in trunk/Tools

garden-o-matic should tell you about the progress of your rebaseline
https://bugs.webkit.org/show_bug.cgi?id=67967

Reviewed by Dimitri Glazkov.

This patch adds ui.MessageBox, which is a light wrapper around jQuery
UI's dialog widget. We then use ui.MessageBox to show status messages
about in-progress rebaselines. As each baseline is downloaded, the
MessageBox updates. This UI replaces our temporary "alert"-based UI.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/checkout.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/actions.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui_unittests.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/styles/results.css:
18:19 Changeset [95065] by commit-queue@webkit.org
  • 7 edits
    6 adds in trunk

Fix XSS auditor bypass when inline handlers contain comments.
https://bugs.webkit.org/show_bug.cgi?id=27895

Patch by Tom Sepez <tsepez@chromium.org> on 2011-09-13
Reviewed by Adam Barth.

Source/WebCore:

Tests: http/tests/security/xssAuditor/property-escape-comment.html

http/tests/security/xssAuditor/property-escape-entity.html
http/tests/security/xssAuditor/property-escape-quote.html

  • html/parser/XSSAuditor.cpp:

(WebCore::XSSAuditor::snippetForAttribute):

LayoutTests:

  • http/tests/security/xssAuditor/malformed-HTML-expected.txt:
  • http/tests/security/xssAuditor/open-attribute-body-expected.txt:
  • http/tests/security/xssAuditor/open-event-handler-iframe-expected.txt:
  • http/tests/security/xssAuditor/property-escape-comment-expected.txt: Added.
  • http/tests/security/xssAuditor/property-escape-comment.html: Added.
  • http/tests/security/xssAuditor/property-escape-entity-expected.txt: Added.
  • http/tests/security/xssAuditor/property-escape-entity.html: Added.
  • http/tests/security/xssAuditor/property-escape-quote-expected.txt: Added.
  • http/tests/security/xssAuditor/property-escape-quote.html: Added.
  • http/tests/security/xssAuditor/resources/echo-property.pl:
18:13 Changeset [95064] by ukai@chromium.org
  • 2 edits
    1 add in trunk/LayoutTests

Update chromium-mac test expectations
https://bugs.webkit.org/show_bug.cgi?id=67917

Reviewed by Darin Adler.

  • platform/chromium-cg-mac-leopard/svg/custom/simple-text-double-shadow-expected.png: Added.
  • platform/chromium/test_expectations.txt:
18:05 Changeset [95063] by haraken@google.com
  • 5 edits in trunk

Implement a HashChangeEvent constructor for V8
https://bugs.webkit.org/show_bug.cgi?id=67969

Reviewed by Nate Chapin.

Source/WebCore:

Test: fast/events/constructors/hash-change-event-constructor.html

  • bindings/v8/custom/V8EventConstructors.cpp: Added the HashChangeEvent constructor.
  • dom/HashChangeEvent.idl: Added a 'V8CustomConstructor' attribute.

LayoutTests:

Enabled hash-change-event-constructor.html, since now V8 has a HashChangeEvent constructor.

  • platform/chromium/test_expectations.txt:
18:03 Changeset [95062] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

GTK DumpRenderTree uses inefficient idioms to iterate over G[S]Lists
https://bugs.webkit.org/show_bug.cgi?id=68024

Patch by Leandro Pereira <leandro@profusion.mobi> on 2011-09-13
Reviewed by Gustavo Noronha Silva.

Using g_list_count() and g_list_nth_data() together on a loop is
inneficient since they're both O(n). Iterate over lists in a saner
way.

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(dumpHistoryItem): Reduce the scope for the 'kids' variable, and
iterate on it using g_list_next(). Free the list after done with it.
(dumpBackForwardListForWebView): Instead of appending (which is
expensive in GLists) history items and then iterating from the tail
of the itemsToPrint list, prepend items and walk forwards as usual.
(dumpBackForwardListForAllWebViews): Walk the list in a saner way,
remove the (unneeded) viewList variable.

18:00 Changeset [95061] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Add Eric's IRC nick.

  • Scripts/webkitpy/common/config/committers.py:
17:37 Changeset [95060] by fpizlo@apple.com
  • 12 edits in trunk/Source/JavaScriptCore

SpeculativeJIT::shouldSpeculateInteger(NodeIndex, NodeIndex) should
return false if either node can be double
https://bugs.webkit.org/show_bug.cgi?id=67985

Reviewed by Geoffrey Garen.

This is a 17% speed-up on 3d-cube.

This required allowing us to check if a constant is double but not
integer, and making the shouldSpeculateInteger() check test for
any hints of doubly-ness in its operands. This also required
changing some terminology: previously "isDouble" often meant
"isDouble or isInt32". Now "isDouble" means exactly what the name
suggests, and "isNumber" means "isDouble or isInt32".

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::toNumber):
(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGGenerationInfo.h:

(JSC::DFG::isJSFormat):
(JSC::DFG::isJSInteger):
(JSC::DFG::isJSDouble):
(JSC::DFG::isJSCell):
(JSC::DFG::isJSBoolean):
(JSC::DFG::GenerationInfo::isJSFormat):
(JSC::DFG::GenerationInfo::isJSInteger):
(JSC::DFG::GenerationInfo::isJSDouble):
(JSC::DFG::GenerationInfo::isJSCell):
(JSC::DFG::GenerationInfo::isJSBoolean):

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::isNumberConstant):
(JSC::DFG::Graph::valueOfNumberConstant):

  • dfg/DFGJITCodeGenerator.cpp:

(JSC::DFG::JITCodeGenerator::fillInteger):
(JSC::DFG::JITCodeGenerator::fillDouble):
(JSC::DFG::JITCodeGenerator::fillJSValue):
(JSC::DFG::JITCodeGenerator::isKnownInteger):
(JSC::DFG::JITCodeGenerator::isKnownNumeric):
(JSC::DFG::JITCodeGenerator::isKnownCell):
(JSC::DFG::JITCodeGenerator::isKnownNotInteger):
(JSC::DFG::JITCodeGenerator::isKnownBoolean):

  • dfg/DFGJITCodeGenerator.h:

(JSC::DFG::JITCodeGenerator::silentFillFPR):
(JSC::DFG::JITCodeGenerator::isNumberConstant):
(JSC::DFG::JITCodeGenerator::valueOfNumberConstant):
(JSC::DFG::JITCodeGenerator::initConstantInfo):

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::fillNumericToDouble):
(JSC::DFG::JITCompiler::fillToJS):

  • dfg/DFGJITCompiler.h:

(JSC::DFG::JITCompiler::isNumberConstant):
(JSC::DFG::JITCompiler::valueOfNumberConstant):

  • dfg/DFGNode.h:

(JSC::DFG::Node::isDoubleConstant):
(JSC::DFG::Node::isNumberConstant):
(JSC::DFG::Node::valueOfNumberConstant):
(JSC::DFG::Node::hasNumberResult):

  • dfg/DFGNonSpeculativeJIT.cpp:

(JSC::DFG::NonSpeculativeJIT::knownConstantArithOp):
(JSC::DFG::NonSpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::isInteger):
(JSC::DFG::SpeculativeJIT::shouldSpeculateDouble):
(JSC::DFG::SpeculativeJIT::shouldNotSpeculateInteger):
(JSC::DFG::SpeculativeJIT::shouldSpeculateInteger):

17:29 Changeset [95059] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Source/WebCore: Fix crash when an iframe element is removed during a transition to
fullscreen.
https://bugs.webkit.org/show_bug.cgi?id=67960

Patch by Jeremy Apthorp <jeremya@google.com> on 2011-09-13
Reviewed by Adam Barth.

Test: fullscreen/full-screen-remove-ancestor-during-transition.html

  • dom/Document.cpp:

(WebCore::Document::~Document):
Clear the list of elements to which we need to send a fullscreenchange
event.

LayoutTests: Removing an iframe from the document during a transition to fullscreen
should not crash.
https://bugs.webkit.org/show_bug.cgi?id=67960

Patch by Jeremy Apthorp <jeremya@google.com> on 2011-09-13
Reviewed by Adam Barth.

  • fullscreen/full-screen-remove-ancestor-during-transition-expected.txt: Added.
  • fullscreen/full-screen-remove-ancestor-during-transition.html: Added.
17:17 Changeset [95058] by hyatt@apple.com
  • 4 edits
    3 adds in trunk

https://bugs.webkit.org/show_bug.cgi?id=68040

Make sure border image sub-properties can be specified in any order.

Reviewed by Beth Dakin.

Source/WebCore:

New tests in fast/borders.

  • css/CSSParser.cpp:

(WebCore::BorderImageParseContext::BorderImageParseContext):
(WebCore::BorderImageParseContext::canAdvance):
(WebCore::BorderImageParseContext::setCanAdvance):
(WebCore::BorderImageParseContext::allowCommit):
(WebCore::BorderImageParseContext::allowImage):
(WebCore::BorderImageParseContext::allowImageSlice):
(WebCore::BorderImageParseContext::allowSlash):
(WebCore::BorderImageParseContext::requireWidth):
(WebCore::BorderImageParseContext::requireOutset):
(WebCore::BorderImageParseContext::commitImage):
(WebCore::BorderImageParseContext::commitImageSlice):
(WebCore::BorderImageParseContext::commitSlash):
(WebCore::BorderImageParseContext::commitBorderWidth):
(WebCore::BorderImageParseContext::commitBorderOutset):
(WebCore::BorderImageParseContext::commitRepeat):
(WebCore::CSSParser::parseBorderImage):
(WebCore::CSSParser::parseBorderImageRepeat):
(WebCore::CSSParser::parseBorderImageSlice):
(WebCore::CSSParser::parseBorderImageQuad):

  • css/CSSParserValues.h:

(WebCore::CSSParserValueList::previous):

LayoutTests:

  • fast/borders/border-image-scrambled.html: Added.
  • platform/mac/fast/borders/border-image-scrambled-expected.png: Added.
  • platform/mac/fast/borders/border-image-scrambled-expected.txt: Added.
17:05 Changeset [95057] by jeffm@apple.com
  • 2 edits in trunk/Source/WebCore

WebCore::Cursor::ensurePlatformCursor() should always set a valid platform cursor on Windows
https://bugs.webkit.org/show_bug.cgi?id=68043

Make sure we set a valid platform cursor in the Cursor::NoDrop case, and add a default
clause that uses the arrow cursor in case another cursor type is added in the future
and we forget to update ensurePlatformCursor().

Reviewed by Anders Carlsson.

  • platform/win/CursorWin.cpp:

(WebCore::Cursor::ensurePlatformCursor): Always set a valid platform cursor.

16:32 Changeset [95056] by jhoneycutt@apple.com
  • 3 edits
    2 adds in trunk

MSAA: WebKit reports the document state as disabled
https://bugs.webkit.org/show_bug.cgi?id=67974
<rdar://problem/10095898>

Reviewed by Brian Weinstein.

Source/WebCore:

Test: platform/win/accessibility/document-enabled-state.html

  • accessibility/AccessibilityScrollView.h:

(WebCore::AccessibilityScrollView::isEnabled):
This object backs the AccessibleDocument on Windows - always return
true for its enabled state.

LayoutTests:

  • platform/win/accessibility/document-enabled-state-expected.txt: Added.
  • platform/win/accessibility/document-enabled-state.html: Added.
16:10 Changeset [95055] by commit-queue@webkit.org
  • 4 edits
    1 add in trunk/Source/WebKit/qt

[Qt] Fix state of stop/reload actions in QWebPage
https://bugs.webkit.org/show_bug.cgi?id=65977

FrameLoader does ask its DocumentLoader to stop loading subresources before
setting the state to FrameStateCommittedPage. But it does
not check if the the DocumentLoader actually stopped loading before
it changes the state.
Therefore a subresourceLoader can still be active, when we receive the
call to dispatchDidFinishLoad(). This leads to an inconsistent behavior
of the stop/reload actions in QWebPage.
This changeset fixes the inconsistent state by updating the action states
also when frameLoadCompleted() is called.

Patch by Zeno Albisser <zeno.albisser@nokia.com> on 2011-09-13
Reviewed by Chang Shu.

  • WebCoreSupport/FrameLoaderClientQt.cpp:

(WebCore::FrameLoaderClientQt::frameLoadCompleted):

15:49 Changeset [95054] by cdn@chromium.org
  • 4 edits
    2 adds in trunk

Source/WebCore: Fixes several bugs when adding CounterNodes to a tree which can cause asymetrical relationships.
https://bugs.webkit.org/show_bug.cgi?id=65996

Reviewed by Eric Seidel.

Test: fast/css/counters/counter-reparent-table-children-crash.html

  • rendering/CounterNode.cpp:

(WebCore::CounterNode::insertAfter):

  • rendering/RenderCounter.cpp:

(WebCore::findPlaceForCounter):
(WebCore::makeCounterNode):

LayoutTests: Test for crash when reparenting table elements with associated counters outside the table.
https://bugs.webkit.org/show_bug.cgi?id=65996

Reviewed by Eric Seidel.

  • fast/css/counters/counter-reparent-table-children-crash-expected.txt: Added.
  • fast/css/counters/counter-reparent-table-children-crash.html: Added.
15:41 Changeset [95053] by bdakin@apple.com
  • 2 edits in trunk/Source/WebCore

Adding a comment I forgot to add before.

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::imageSizeForError):

15:38 Changeset [95052] by antti@apple.com
  • 5 edits in trunk/Source/WebCore

Move identifier filter from CSSStyleSelector to SelectorChecker
https://bugs.webkit.org/show_bug.cgi?id=68025

Reviewed by Sam Weinig.

This is a more logical place for this code. It also makes CSSStyleSelector slightly less bloated.
It will make it possible to use fastRejectSelector for querySelectorAll in the future.

  • css/CSSStyleSelector.cpp:

(WebCore::loadViewSourceStyle):
(WebCore::CSSStyleSelector::matchRulesForList):
(WebCore::RuleData::RuleData):

  • css/CSSStyleSelector.h:

(WebCore::CSSStyleSelector::pushParent):
(WebCore::CSSStyleSelector::popParent):

  • css/SelectorChecker.cpp:

(WebCore::collectElementIdentifierHashes):
(WebCore::SelectorChecker::pushParentStackFrame):
(WebCore::SelectorChecker::popParentStackFrame):
(WebCore::SelectorChecker::pushParent):
(WebCore::SelectorChecker::popParent):
(WebCore::collectDescendantSelectorIdentifierHashes):
(WebCore::SelectorChecker::collectIdentifierHashes):

  • css/SelectorChecker.h:

(WebCore::SelectorChecker::parentStackIsConsistent):
(WebCore::SelectorChecker::ParentStackFrame::ParentStackFrame):
(WebCore::SelectorChecker::fastRejectSelector):

15:33 Changeset [95051] by bdakin@apple.com
  • 1 edit in trunk/Source/WebCore/ChangeLog

Restoring a ChangeLog entry that I accidentally trampled.

15:31 Changeset [95050] by commit-queue@webkit.org
  • 3 edits
    4 adds in trunk

For compatibility, execCommand should support deprecated 'useCSS' alias for 'styleWithCSS'
https://bugs.webkit.org/show_bug.cgi?id=36683

Patch by Kiyoto Tamura <owenestea@gmail.com> on 2011-09-13
Reviewed by Ryosuke Niwa.

Source/WebCore:

In addition to supporting the deprecated 'useCSS', 'styleWithCSS' now accepts any argument other than
the boolean false or the case-insensitive string "false". This is per
http://aryeh.name/spec/editing/editing.html#the-stylewithcss-command

Tests: editing/execCommand/style-with-css.html

editing/execCommand/use-css.html

  • editing/EditorCommand.cpp:

(WebCore::executeStyleWithCSS):
(WebCore::executeUseCSS):
(WebCore::createCommandMap):

LayoutTests:

Testing useCSS, the command previously unsupported by WebKit. Also, we are testing
styleWithCSS accepts anything that is not the boolean false or the string "false" as true.
Furthermore, we test that queryCommandValue/State('useCSS') return boolean false and
queryCommandValue/State('useStyleWithCSS') returns booleans (as opposed to 'true'/'false'
strings)

  • editing/execCommand/style-with-css-expected.txt: Added.
  • editing/execCommand/style-with-css.html: Added.
  • editing/execCommand/use-css-expected.txt: Added.
  • editing/execCommand/use-css.html: Added.
15:28 Changeset [95049] by andersca@apple.com
  • 16 edits in trunk

Disable C++ exceptions when building with clang
https://bugs.webkit.org/show_bug.cgi?id=68031
<rdar://problem/9556880>

Reviewed by Mark Rowe.

Source/JavaScriptCore:

  • Configurations/Base.xcconfig:

Source/JavaScriptGlue:

  • Configurations/Base.xcconfig:

Source/ThirdParty/ANGLE:

  • Configurations/Base.xcconfig:

Source/WebCore:

  • Configurations/Base.xcconfig:

Source/WebKit/mac:

  • Configurations/Base.xcconfig:

Source/WebKit2:

  • Configurations/Base.xcconfig:

Tools:

  • MiniBrowser/Configurations/Base.xcconfig:
  • TestWebKitAPI/Configurations/Base.xcconfig:
  • WebKitTestRunner/Configurations/Base.xcconfig:
15:17 Changeset [95048] by bdakin@apple.com
  • 2 edits in trunk/Source/WebCore

https://bugs.webkit.org/show_bug.cgi?id=67885
Outline for the high-resolution broken image icon draws at 2x
-and corresponding-
<rdar://problem/10104637>

Reviewed by Dan Bernstein.

Scaled the image size to account for the deviceScaleFactor.

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::imageSizeForError):

14:54 Changeset [95047] by timothy_horton@apple.com
  • 4 edits
    3 adds in trunk

REGRESSION (64275): Shape pattern-image fill turns black
https://bugs.webkit.org/show_bug.cgi?id=51061
<rdar://problem/8504705>

Reviewed by Simon Fraser.

Source/WebCore:

When destroying a resource, register clients who are losing their
resource as having pending resources, so they can be resolved in the case a
resource with that id is re-registered.

Test: svg/custom/pending-resource-after-removal.xhtml

  • rendering/svg/SVGResourcesCache.cpp:

(WebCore::SVGResourcesCache::resourceDestroyed):

  • svg/SVGStyledElement.h:

(WebCore::toSVGStyledElement): Added.

LayoutTests:

Add a test ensuring that replacing a SVG pattern without changing
the id causes the clients to be updated properly.

  • svg/custom/pending-resource-after-removal-expected.png: Added.
  • svg/custom/pending-resource-after-removal-expected.txt: Added.
  • svg/custom/pending-resource-after-removal.xhtml: Added.
14:50 Changeset [95046] by ojan@chromium.org
  • 3 edits in trunk/Tools

[chromium] fix flakiness dashboard for chromium interactive tests
https://bugs.webkit.org/show_bug.cgi?id=68029

Reviewed by Tony Chang.

  • TestResultServer/static-dashboards/flakiness_dashboard.html:
  • TestResultServer/static-dashboards/flakiness_dashboard_tests.js:
14:43 Changeset [95045] by abarth@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] The checked state of WebPopupMenuItem isn't initialized
https://bugs.webkit.org/show_bug.cgi?id=67889

Reviewed by Darin Fisher.

It seems we're failing to initialize the checked state of
WebPopupMenuItems, potentially because Android is the first platform to
use popup menus for <select> elements.

  • src/ExternalPopupMenu.cpp:

(WebKit::ExternalPopupMenu::getPopupMenuInfo):

14:29 QtWebKitRelease22 edited by ademar.reis@openbossa.org
(diff)
14:08 Changeset [95044] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Add Alice and Aryeh to the list of contributors.

  • Scripts/webkitpy/common/config/committers.py:
13:59 Changeset [95043] by caryclark@google.com
  • 1 edit
    2 adds in trunk/LayoutTests

Unreviewed; new baselines (Skia on Mac)
Updated reference images.

  • platform/chromium-gpu-mac/platform/chromium/compositing/zoom-animator-scale-test-expected.png: Added.
  • platform/chromium-gpu-mac/compositing/overflow/overflow-positioning-expected.png: Added.
13:51 Changeset [95042] by rniwa@webkit.org
  • 3 edits in trunk/Tools

sheriffbot whois should also tell us email addresses
https://bugs.webkit.org/show_bug.cgi?id=67975

Reviewed by Eric Seidel and David Levin.

Taught sheriffbot how to tell us contributor's email addresses.

  • Scripts/webkitpy/tool/bot/irc_command.py:
  • Scripts/webkitpy/tool/bot/irc_command_unittest.py:
13:35 Changeset [95041] by caryclark@google.com
  • 1 edit
    7 adds
    1 delete in trunk/LayoutTests

Unreviewed; new baselines (Skia on Mac)
Updated reference images, text.

  • platform/chromium-mac/http/tests/eventsource/existent-eventsource-status-error-iframe-crash-expected.txt: Removed.
  • platform/chromium-mac/platform/chromium/fast/repaint: Added.
  • platform/chromium-mac/platform/chromium/fast/repaint/fixed-layout-360x240-expected.png: Added.
  • platform/chromium-mac/fast/lists/list-marker-before-content-table-expected.png: Added.
  • platform/chromium-mac/fast/runin/runin-generated-before-content-expected.png: Added.
  • platform/chromium-mac/tables/mozilla_expected_failures/bugs/bug85016-expected.png: Added.
  • platform/chromium-mac/css3/unicode-bidi-isolate-aharon-expected.png: Added.
  • platform/chromium-mac/css3/unicode-bidi-isolate-basic-expected.png: Added.
13:19 Changeset [95040] by eric@webkit.org
  • 38 edits in trunk

Remove ENABLE_SVG_FOREIGN_OBJECT as it is a required part of HTML5
https://bugs.webkit.org/show_bug.cgi?id=68018

Reviewed by Ryosuke Niwa.

.:

  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/OptionsWinCE.cmake:
  • Source/cmakeconfig.h.cmake:
  • configure.ac:

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

  • Configurations/FeatureDefines.xcconfig:
  • DerivedSources.make:
  • GNUmakefile.am:
  • WebCore.exp.in:
  • dom/DOMImplementation.cpp:

(WebCore::isSVG10Feature):
(WebCore::isSVG11Feature):

  • dom/Text.cpp:

(WebCore::Text::createRenderer):

  • features.pri:
  • page/DOMWindow.idl:
  • rendering/svg/RenderSVGForeignObject.cpp:
  • rendering/svg/RenderSVGForeignObject.h:
  • svg/SVGAnimateMotionElement.cpp:

(WebCore::SVGAnimateMotionElement::hasValidAttributeType):

  • svg/SVGForeignObjectElement.cpp:
  • svg/SVGForeignObjectElement.h:
  • svg/SVGForeignObjectElement.idl:
  • svg/SVGLocatable.cpp:

(WebCore::isViewportElement):

  • svg/SVGSVGElement.cpp:

(WebCore::SVGSVGElement::isOutermostSVG):

  • svg/SVGUseElement.cpp:

(WebCore::isDisallowedElement):
(WebCore::SVGUseElement::associateInstancesWithShadowTreeElements):

  • svg/svgtags.in:

Source/WebKit/chromium:

  • features.gypi:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:

Tools:

  • Scripts/build-webkit:
  • waf/build/settings.py:

WebKitLibraries:

  • win/tools/vsprops/FeatureDefines.vsprops:
  • win/tools/vsprops/FeatureDefinesCairo.vsprops:
12:26 Changeset [95039] by commit-queue@webkit.org
  • 21 edits
    1 copy
    1 add in trunk

[WK2] [Mac] Implement KeyDown function for WebKit2 EventSender.
https://bugs.webkit.org/show_bug.cgi?id=57515

Source/WebKit2:

The code change in WebKit2 allows key events being sent to WebProcess from UIProcess synchronously.

Patch by Chang Shu <cshu@webkit.org> on 2011-09-13
Reviewed by Darin Adler.

  • UIProcess/API/C/WKPage.cpp:

(WKPageSetShouldSendKeyboardEventSynchronously):

  • UIProcess/API/C/WKPagePrivate.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::handleKeyboardEvent):

  • UIProcess/WebPageProxy.h:

(WebKit::WebPageProxy::setShouldSendKeyboardEventSynchronously):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::keyEventSyncForTesting):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:

Tools:

The code change in WebKitTestRunner first sends keydown event from InjectedBundle to
TestController synchronously. The latter then sends simulated event to WebKit2 module,
which is synchronous, too.

Patch by Chang Shu <cshu@webkit.org> on 2011-09-13
Reviewed by Darin Adler.

  • WebKitTestRunner/EventSenderProxy.h: Added.

(WTR::EventSenderProxy::EventSenderProxy):

  • WebKitTestRunner/InjectedBundle/Bindings/EventSendingController.idl:
  • WebKitTestRunner/InjectedBundle/EventSendingController.cpp:

(WTR::EventSendingController::keyDown):

  • WebKitTestRunner/InjectedBundle/EventSendingController.h:
  • WebKitTestRunner/PlatformWebView.h:

(WTR::PlatformWebView::platformWindow):

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::TestController):
(WTR::TestController::didReceiveSynchronousMessageFromInjectedBundle):

  • WebKitTestRunner/TestController.h:
  • WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
  • WebKitTestRunner/mac/EventSenderProxy.mm: Added.

(WTR::buildModifierFlags):
(WTR::EventSenderProxy::keyDown):

LayoutTests:

Unskip passed tests for Mac.

Patch by Chang Shu <cshu@webkit.org> on 2011-09-13
Reviewed by Darin Adler.

  • platform/mac-wk2/Skipped:
  • platform/qt-wk2/Skipped:
  • platform/win-wk2/Skipped:
  • platform/wk2/Skipped:
12:24 Changeset [95038] by joepeck@webkit.org
  • 3 edits
    3 adds in trunk

<http://webkit.org/b/67983> CRASH under WebCore::ArchiveResourceCollection::addAllResources loading WebArchive

Reviewed by Darin Adler.

Source/WebCore:

Null mimetypes are okay for subresources, but as previously discovered
in bug 41082 they were required for main resources. Here we ensure
that they are required for main resources, but we allow null mimetypes
for subresources.

To fix a crash for bad input we never add a null ArchiveResource to the
Archive's subresource collection. It is useless and causes crashes whenever
someone iterates the Archive's subresource collection.

Test: webarchive/loading/test-loading-archive-subresource-null-mimetype.html

  • loader/archive/cf/LegacyWebArchive.cpp:

(WebCore::LegacyWebArchive::createResource):
Allow a null mimetype, just type check from the dictionary.

(WebCore::LegacyWebArchive::extract):
Require a mimetype for the main resource. Do not add null
subresources to the subresource list.

LayoutTests:

Test a WebArchive that has been constructed to have a null
mimetype for a subresource.

  • webarchive/loading/test-loading-archive-subresource-null-mimetype-expected.txt: Added.
  • webarchive/loading/test-loading-archive-subresource-null-mimetype.html: Added.
  • webarchive/loading/resources/subresource-null-mimetype.webarchive: Added.
12:18 Changeset [95037] by simonjam@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

2011-09-13 James Simonsen <simonjam@chromium.org>

[Chromium] Ref protect element in FrameLoaderClientImpl::createPlugin
https://bugs.webkit.org/show_bug.cgi?id=68014

Reviewed by Nate Chapin.

Test: plugins/destroy-during-npp-new.htm under valgrind

  • src/FrameLoaderClientImpl.cpp: (WebKit::FrameLoaderClientImpl::createPlugin):
11:33 Changeset [95036] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled DEPS.

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-09-13

  • DEPS:
11:25 Changeset [95035] by mihaip@chromium.org
  • 2 edits in trunk/Source/WebCore

[Chromium] Remove javascript_engine from WebCore.gyp
https://bugs.webkit.org/show_bug.cgi?id=68001

Reviewed by Tony Chang.

Remove javascript_engine GYP variable (similar to the removal done on
the Chromium side with http://crrev.com/100692)

  • WebCore.gyp/WebCore.gyp:
10:58 Changeset [95034] by adamk@chromium.org
  • 1 edit in branches/chromium/874/Source/WebCore/platform/graphics/Gradient.cpp

Merge 95010 - Fix out-of-bounds access in Gradient::sortStopsIfNecessary
https://bugs.webkit.org/show_bug.cgi?id=67958

Reviewed by Darin Adler.

Reported by Valgrind in http://crbug.com/77049.

The errant code was added as an optimization in r67804.
This patch reverts that one, as all parties agree that the optimization
doesn't seem worthwhile, and there clearly aren't any tests covering
the special case.

No new tests, as existing tests should cover the remaining call to
|std::stable_sort|.

  • platform/graphics/Gradient.cpp:

(WebCore::Gradient::sortStopsIfNecessary):

TBR=adamk@chromium.org
Review URL: http://codereview.chromium.org/7891013

10:54 Changeset [95033] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/efl

[EFL] Do not always return the cached frame name.
https://bugs.webkit.org/show_bug.cgi?id=66856

Patch by Raphael Kubo da Costa <kubo@profusion.mobi> on 2011-09-13
Reviewed by Antonio Gomes.

When a frame has its parent changed (via adoptNode and appendChild,
for example), the frame name will change, so we need to account for
that case and change the cached name when needed.

This should make fast/frames/iframe-reparenting-unique-name.html pass.

  • ewk/ewk_frame.cpp:

(ewk_frame_name_get):

10:46 Changeset [95032] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Update chromium test expectation since fast/borders/border-image-omit-right-slice.html no longer hits an assertion.

  • platform/chromium/test_expectations.txt:
10:31 Changeset [95031] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

[CSS3 Backgrounds and Borders] Add unprefixed border-image shorthand.
https://bugs.webkit.org/show_bug.cgi?id=67970

Reviewed by David Hyatt.

Also update CSSStyleSelector.cpp to support border-image to suppress assertion in
fast/borders/border-image-omit-right-slice.html

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::applyProperty):
(WebCore::CSSStyleSelector::mapNinePieceImage):

09:44 Changeset [95030] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Patch by Xianzhu Wang <wangxianzhu@chromium.org> on 2011-09-13
Reviewed by Darin Adler.

Source/WebCore:

Webkit wraps between hyphen-minus and numeric characters
https://bugs.webkit.org/show_bug.cgi?id=20677

Disallow wrapping between a hyphen-minus and a digit if the hyphen-minus
is not directly after a digit or a letter.

Test: fast/text/line-breaks-after-hyphen-before-number.html

  • rendering/break_lines.cpp:

(WebCore::asciiLineBreakTable): Disabled line-breaking after '-' and before '.', '0'-'9'. Note: the change for '0'-'9' doesn't really matter because the case is handled hard-coded in shouldBreakAfter().
(WebCore::shouldBreakAfter): Changed line-breaking behavior after '-'.
(WebCore::nextBreakablePosition): Passes lastLastCh to shouldBreakAfter.

LayoutTests:

Webkit wraps between hyphen-minus and numeric characters
https://bugs.webkit.org/show_bug.cgi?id=20677

Disallow wrapping between a hyphen-minus and a digit if the hyphen-minus
is not directly after a digit or a letter.

  • fast/text/line-breaks-after-hyphen-before-number-expected.txt: Added.
  • fast/text/line-breaks-after-hyphen-before-number.html: Added.
09:23 Changeset [95029] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

platform/graphics/gtk/FontGtk.cpp was renamed to platform/graphics/pango/FontPango.cpp . Reflect this change in WebCore.gypi to fix a Chromium build breakage.
https://bugs.webkit.org/show_bug.cgi?id=68000

Patch by Erik Wright <erikwright@chromium.org> on 2011-09-13
Reviewed by Tony Gentilcore.

No change in functionality, thus no new tests.

  • WebCore.gypi:
09:01 Changeset [95028] by weinig@apple.com
  • 3 edits
    3 adds in trunk

Object.getPrototypeOf should use JSValue::get()
https://bugs.webkit.org/show_bug.cgi?id=67973

Reviewed by Darin Adler.

Source/JavaScriptCore:

  • runtime/ObjectConstructor.cpp:

(JSC::objectConstructorGetPrototypeOf):
Pipe through JSValue::get() to allow overrides.

LayoutTests:

  • http/tests/security/cross-frame-access-object-getPrototypeOf-expected.txt: Added.
  • http/tests/security/cross-frame-access-object-getPrototypeOf.html: Added.
  • http/tests/security/resources/cross-frame-iframe-for-object-getPrototypeOf-test.html: Added.
08:32 Changeset [95027] by mnaganov@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: Profiler: Fix overlapping data in function names column.
https://bugs.webkit.org/show_bug.cgi?id=67896

Reviewed by Pavel Feldman.

  • inspector/front-end/ProfileDataGridTree.js:

(WebInspector.ProfileDataGridNode.prototype.createCell):

  • inspector/front-end/dataGrid.css:

(.data-grid table.data):
(.data-grid td):

08:20 Changeset [95026] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Unreviewed, rolling out r95025.
http://trac.webkit.org/changeset/95025
https://bugs.webkit.org/show_bug.cgi?id=68005

Test failed on Snow Leopard bots. (Requested by yutak_home on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-09-13

  • websockets/ThreadableWebSocketChannelClientWrapper.cpp:

(WebCore::ThreadableWebSocketChannelClientWrapper::ThreadableWebSocketChannelClientWrapper):
(WebCore::ThreadableWebSocketChannelClientWrapper::subprotocol):
(WebCore::ThreadableWebSocketChannelClientWrapper::setSubprotocol):

  • websockets/ThreadableWebSocketChannelClientWrapper.h:
06:53 QtWebKitSupportedStandards edited by ademar.reis@openbossa.org
(diff)
06:53 QtWebKitFeatures22 edited by ademar.reis@openbossa.org
(diff)
06:52 QtWebKitFeatures22 edited by ademar.reis@openbossa.org
(diff)
06:52 QtWebKitFeatures22 edited by ademar.reis@openbossa.org
(diff)
06:25 Changeset [95025] by yutak@chromium.org
  • 3 edits in trunk/Source/WebCore

ThreadableWebSocketChannelClientWrapper shouldn't have a String in it.
https://bugs.webkit.org/show_bug.cgi?id=67908

Reviewed by David Levin.

Replace a String member variable in ThreadableWebSocketChannelClientWrapper with Vector<UChar>.

No change in functionality, thus no new tests. WebSocket worker tests
(tests under http/tests/websocket/tests/{hixie76,hybi}/workers/) should keep passing.

  • websockets/ThreadableWebSocketChannelClientWrapper.cpp:

(WebCore::ThreadableWebSocketChannelClientWrapper::ThreadableWebSocketChannelClientWrapper):
(WebCore::ThreadableWebSocketChannelClientWrapper::subprotocol):
Create a String from Vector<UChar>.
(WebCore::ThreadableWebSocketChannelClientWrapper::setSubprotocol):
Copy the content of the given String into Vector.

  • websockets/ThreadableWebSocketChannelClientWrapper.h:
06:00 Changeset [95024] by ukai@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, update chromium test expectations

  • platform/chromium/test_expectations.txt: fast/borders/border-image-omit-right-slice.html fails on release
03:39 Changeset [95023] by ukai@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, build fix.

CSSPropertyBorderImage was added in r94989, but not yet added in
WebCore::CSSStyleSelector::applyProperty

CSSStyleSelector.cpp:2481: warning: enumeration value 'CSSPropertyBorderImage' not handled in switch

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::applyProperty):

02:33 QtWebKitRelease22 edited by ossy@webkit.org
Add link to the waterfall of QtWebKit 2.2 buildbots (diff)
01:26 Changeset [95022] by reni@webkit.org
  • 2 edits in trunk/LayoutTests

eventSender.keyDown is unimplemented (WKTR)
https://bugs.webkit.org/show_bug.cgi?id=57515

Unreviewed gardening.

  • platform/qt-wk2/Skipped:

09/12/11:

23:57 Changeset [95021] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[chromium] fast/js/parseInt.html does not fail any more.
https://bugs.webkit.org/show_bug.cgi?id=65366

parseInt bug was fixed in v8 version 3.6.0.

Patch by Shinya Kawanaka <shinyak@google.com> on 2011-09-12
Reviewed by Eric Seidel.

  • platform/chromium/test_expectations.txt:
23:18 Changeset [95020] by ukai@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Roll DEPS again.

  • DEPS:
23:14 Changeset [95019] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed, rolling out r95015.
http://trac.webkit.org/changeset/95015
https://bugs.webkit.org/show_bug.cgi?id=67987

compiled failed on Chromium Win bot (Requested by ukai on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-09-12

  • DEPS:
23:10 Changeset [95018] by commit-queue@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

Add a test that ensures that the accessibility tree
does not contain duplicate child nodes.
https://bugs.webkit.org/show_bug.cgi?id=58930

This test failed when the bug was originally filed, but was
fixed in: https://bugs.webkit.org/show_bug.cgi?id=61805
so no code changes are accompanying this new layout test.

Patch by Dominic Mazzoni <dmazzoni@google.com> on 2011-09-12
Reviewed by Chris Fleizach.

  • accessibility/duplicate-child-nodes-expected.txt: Added.
  • accessibility/duplicate-child-nodes.html: Added.
22:57 Changeset [95017] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Crashes in WebCore::InsertListCommand::unlistifyParagraph.
https://bugs.webkit.org/show_bug.cgi?id=67918

Patch by Shinya Kawanaka <shinyak@google.com> on 2011-09-12
Reviewed by Ryosuke Niwa.

Source/WebCore:

execCommand("InsertUnorderedList") was crashing if the parent node of the target is
a kind of list element and it is not contenteditable.
This patch checks the parent node is contenteditable.

Test: editing/execCommand/insert-list-in-noneditable-list-parent.html

  • editing/htmlediting.cpp:

(WebCore::enclosingListChild): Checks the parent node is contenteditable.

LayoutTests:

Added tests.

  • editing/execCommand/insert-list-in-noneditable-list-parent-expected.txt: Added.
  • editing/execCommand/insert-list-in-noneditable-list-parent.html: Added.
22:35 Changeset [95016] by fpizlo@apple.com
  • 23 edits
    4 adds
    1 delete in trunk/Source/JavaScriptCore

JavaScriptCore does not have baseline->speculative OSR
https://bugs.webkit.org/show_bug.cgi?id=67920

Reviewed by Oliver Hunt.

This adds the ability to on-stack-replace (OSR) from code that is
running hot in the old JIT to code compiled by the new JIT. This
ensures that long-running loops benefit from DFG optimization.
It also ensures that if code experiences a speculation failure
in DFG code, it has an opportunity to reenter the DFG once every
1,000 loop iterations or so.

This results in a 2.88x speed-up on Kraken/imaging-desaturate,
and is a pure win on the main three benchmark suites (SunSpider,
V8, Kraken), when tiered compilation is enabled.

(JSC::CodeBlock::dump):
(JSC::CodeBlock::CodeBlock):
(JSC::ProgramCodeBlock::compileOptimized):
(JSC::EvalCodeBlock::compileOptimized):
(JSC::FunctionCodeBlock::compileOptimized):

  • bytecode/CodeBlock.h:
  • bytecode/Opcode.h:
  • bytecode/PredictedType.h: Added.

(JSC::isCellPrediction):
(JSC::isArrayPrediction):
(JSC::isInt32Prediction):
(JSC::isDoublePrediction):
(JSC::isNumberPrediction):
(JSC::isBooleanPrediction):
(JSC::isStrongPrediction):
(JSC::predictionToString):
(JSC::mergePredictions):
(JSC::mergePrediction):
(JSC::makePrediction):

  • bytecode/PredictionTracker.h: Added.

(JSC::operandIsArgument):
(JSC::PredictionSlot::PredictionSlot):
(JSC::PredictionTracker::PredictionTracker):
(JSC::PredictionTracker::initializeSimilarTo):
(JSC::PredictionTracker::copyLocalsFrom):
(JSC::PredictionTracker::numberOfArguments):
(JSC::PredictionTracker::numberOfVariables):
(JSC::PredictionTracker::argumentIndexForOperand):
(JSC::PredictionTracker::predictArgument):
(JSC::PredictionTracker::predict):
(JSC::PredictionTracker::predictGlobalVar):
(JSC::PredictionTracker::getArgumentPrediction):
(JSC::PredictionTracker::getPrediction):
(JSC::PredictionTracker::getGlobalVarPrediction):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitLoopHint):

  • bytecompiler/BytecodeGenerator.h:
  • bytecompiler/NodesCodegen.cpp:

(JSC::DoWhileNode::emitBytecode):
(JSC::WhileNode::emitBytecode):
(JSC::ForNode::emitBytecode):
(JSC::ForInNode::emitBytecode):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGCapabilities.h:

(JSC::DFG::canCompileOpcode):

  • dfg/DFGDriver.cpp:

(JSC::DFG::compile):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::dump):

  • dfg/DFGGraph.h:

(JSC::DFG::BasicBlock::BasicBlock):
(JSC::DFG::Graph::predict):
(JSC::DFG::Graph::getPrediction):

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::exitSpeculativeWithOSR):
(JSC::DFG::JITCompiler::compileEntry):
(JSC::DFG::JITCompiler::compileBody):

  • dfg/DFGJITCompiler.h:

(JSC::DFG::JITCompiler::noticeOSREntry):

  • dfg/DFGNode.h:
  • dfg/DFGOSREntry.cpp: Added.

(JSC::DFG::predictionIsValid):
(JSC::DFG::prepareOSREntry):

  • dfg/DFGOSREntry.h: Added.

(JSC::DFG::prepareOSREntry):

  • dfg/DFGPredictionTracker.h: Removed.
  • dfg/DFGPropagator.cpp:

(JSC::DFG::Propagator::mergeUse):
(JSC::DFG::Propagator::mergePrediction):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • jit/CompactJITCodeMap.h:

(JSC::CompactJITCodeMap::numberOfEntries):
(JSC::CompactJITCodeMap::decode):
(JSC::CompactJITCodeMap::Decoder::Decoder):
(JSC::CompactJITCodeMap::Decoder::numberOfEntriesRemaining):
(JSC::CompactJITCodeMap::Decoder::read):

  • jit/JIT.cpp:

(JSC::JIT::emitOptimizationCheck):
(JSC::JIT::emitTimeoutCheck):
(JSC::JIT::privateCompileMainPass):

  • jit/JIT.h:

(JSC::JIT::emit_op_loop_hint):

  • jit/JITStubs.cpp:

(JSC::DEFINE_STUB_FUNCTION):

  • runtime/Executable.cpp:

(JSC::EvalExecutable::compileInternal):
(JSC::ProgramExecutable::compileInternal):
(JSC::FunctionExecutable::compileForCallInternal):
(JSC::FunctionExecutable::compileForConstructInternal):

21:50 Changeset [95015] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled DEPS.

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-09-12

  • DEPS:
21:44 Changeset [95014] by commit-queue@webkit.org
  • 38 edits
    3 deletes in trunk

Unreviewed, rolling out r94975.
http://trac.webkit.org/changeset/94975
https://bugs.webkit.org/show_bug.cgi?id=67984

crash in PrerenderBrowserTest.PrerenderHTML5VideoJs (Requested
by ukai on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-09-12

Source/WebCore:

  • platform/graphics/chromium/CanvasLayerChromium.h:

(WebCore::CanvasLayerChromium::layerTypeAsString):

  • platform/graphics/chromium/ContentLayerChromium.h:

(WebCore::ContentLayerChromium::layerTypeAsString):

  • platform/graphics/chromium/ImageLayerChromium.h:

(WebCore::ImageLayerChromium::layerTypeAsString):

  • platform/graphics/chromium/LayerChromium.cpp:

(WebCore::LayerChromium::layerTreeAsText):
(WebCore::writeIndent):
(WebCore::LayerChromium::dumpLayer):
(WebCore::LayerChromium::dumpLayerProperties):

  • platform/graphics/chromium/LayerChromium.h:

(WebCore::LayerChromium::layerTypeAsString):

  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererChromium::textureMemoryReclaimLimit):
(WebCore::LayerRendererChromium::create):
(WebCore::LayerRendererChromium::LayerRendererChromium):
(WebCore::LayerRendererChromium::close):
(WebCore::LayerRendererChromium::releaseTextures):
(WebCore::LayerRendererChromium::drawLayers):
(WebCore::LayerRendererChromium::drawLayersInternal):
(WebCore::LayerRendererChromium::getOffscreenLayerTexture):
(WebCore::LayerRendererChromium::initializeSharedObjects):
(WebCore::LayerRendererChromium::cleanupSharedObjects):
(WebCore::LayerRendererChromium::layerTreeAsText):
(WebCore::LayerRendererChromium::dumpRenderSurfaces):

  • platform/graphics/chromium/LayerRendererChromium.h:

(WebCore::LayerRendererChromium::owner):
(WebCore::LayerRendererChromium::rootLayer):
(WebCore::LayerRendererChromium::rootLayerImpl):
(WebCore::LayerRendererChromium::viewportSize):
(WebCore::LayerRendererChromium::contentsTextureManager):

  • platform/graphics/chromium/ManagedTexture.cpp:

(WebCore::ManagedTexture::bindTexture):
(WebCore::ManagedTexture::framebufferTexture2D):

  • platform/graphics/chromium/PluginLayerChromium.h:

(WebCore::PluginLayerChromium::layerTypeAsString):

  • platform/graphics/chromium/RenderSurfaceChromium.cpp:

(WebCore::RenderSurfaceChromium::name):
(WebCore::writeIndent):
(WebCore::RenderSurfaceChromium::dumpSurface):

  • platform/graphics/chromium/RenderSurfaceChromium.h:
  • platform/graphics/chromium/TextureManager.cpp:

(WebCore::TextureManager::deleteEvictedTextures):
(WebCore::TextureManager::removeTexture):
(WebCore::TextureManager::allocateTexture):
(WebCore::TextureManager::requestTexture):

  • platform/graphics/chromium/TextureManager.h:

(WebCore::TextureManager::setAssociatedContextDebugOnly):
(WebCore::TextureManager::associatedContextDebugOnly):

  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::writeIndent):
(WebCore::TiledLayerChromium::dumpLayerProperties):

  • platform/graphics/chromium/TiledLayerChromium.h:
  • platform/graphics/chromium/VideoLayerChromium.h:

(WebCore::VideoLayerChromium::layerTypeAsString):

  • platform/graphics/chromium/WebGLLayerChromium.h:

(WebCore::WebGLLayerChromium::layerTypeAsString):

  • platform/graphics/chromium/cc/CCCanvasLayerImpl.cpp:
  • platform/graphics/chromium/cc/CCCanvasLayerImpl.h:
  • platform/graphics/chromium/cc/CCLayerImpl.cpp:
  • platform/graphics/chromium/cc/CCLayerImpl.h:
  • platform/graphics/chromium/cc/CCLayerTreeHost.cpp:

(WebCore::CCLayerTreeHost::initialize):
(WebCore::CCLayerTreeHost::~CCLayerTreeHost):
(WebCore::CCLayerTreeHost::commitTo):
(WebCore::CCLayerTreeHost::didRecreateGraphicsContext):
(WebCore::CCLayerTreeHost::setVisible):
(WebCore::CCLayerTreeHost::contentsTextureManager):

  • platform/graphics/chromium/cc/CCLayerTreeHost.h:
  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:

(WebCore::CCLayerTreeHostImpl::drawLayers):
(WebCore::CCLayerTreeHostImpl::setVisible):
(WebCore::CCLayerTreeHostImpl::initializeLayerRenderer):

  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
  • platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:
  • platform/graphics/chromium/cc/CCPluginLayerImpl.h:
  • platform/graphics/chromium/cc/CCProxy.h:
  • platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:

(WebCore::CCSingleThreadProxy::initializeLayerRenderer):
(WebCore::CCSingleThreadProxy::stop):
(WebCore::CCSingleThreadProxy::contentsTextureManager):
(WebCore::CCSingleThreadProxy::recreateContextIfNeeded):

  • platform/graphics/chromium/cc/CCSingleThreadProxy.h:
  • platform/graphics/chromium/cc/CCThreadProxy.cpp:

(WebCore::CCThreadProxy::initializeLayerRenderer):
(WebCore::CCThreadProxy::contentsTextureManager):
(WebCore::CCThreadProxy::initializeLayerRendererOnCCThread):
(WebCore::CCThreadProxy::layerTreeHostClosedOnCCThread):

  • platform/graphics/chromium/cc/CCThreadProxy.h:
  • platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:

(WebCore::CCTiledLayerImpl::dumpLayerProperties):

  • platform/graphics/chromium/cc/CCTiledLayerImpl.h:
  • platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
  • platform/graphics/chromium/cc/CCVideoLayerImpl.h:

LayoutTests:

  • platform/chromium/compositing/lost-compositor-context-with-rendersurface-expected.png: Removed.
  • platform/chromium/compositing/lost-compositor-context-with-rendersurface-expected.txt: Removed.
  • platform/chromium/compositing/lost-compositor-context-with-rendersurface.html: Removed.
21:41 Changeset [95013] by joepeck@webkit.org
  • 2 edits in trunk/Source/WebCore

Possible ASSERT(!storageTracker) in Lazily Initialized StorageTracker
https://bugs.webkit.org/show_bug.cgi?id=67957

Reviewed by Darin Adler.

The storageTracker singleton may already have been created
through StorageTracker::tracker before initializeTracker
gets called. Update the ASSERT in this case to check that
there is no client for the tracker.

No test, this depends on how the port initializes the tracker.

  • storage/StorageTracker.cpp:

(WebCore::StorageTracker::initializeTracker):

21:15 Changeset [95012] by levin@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] Remove AllowCrossThreadAccess for WorkerFileWriterCallbacksBridge.
https://bugs.webkit.org/show_bug.cgi?id=67943

Reviewed by Adam Barth.

  • src/WorkerFileWriterCallbacksBridge.cpp: Removed AllowCrossThreadAccess

allowing the automatic ref counting to work. This was previous needed when
the ref counting wasn't working but that was fixed in r94986. Note that the
design was to have ref counting since the methods take PassRefPtr and the
class is ThreadSafeRefCounted. (Ideally we have noticed this flaw when
adding in AllowCrossThreadAccess.)
(WebKit::WorkerFileWriterCallbacksBridge::postWriteToMainThread):
(WebKit::WorkerFileWriterCallbacksBridge::postTruncateToMainThread):
(WebKit::WorkerFileWriterCallbacksBridge::postAbortToMainThread):
(WebKit::WorkerFileWriterCallbacksBridge::didWrite):
(WebKit::WorkerFileWriterCallbacksBridge::didFail):
(WebKit::WorkerFileWriterCallbacksBridge::didTruncate):
(WebKit::WorkerFileWriterCallbacksBridge::postInitToMainThread):
(WebKit::WorkerFileWriterCallbacksBridge::dispatchTaskToMainThread):
(WebKit::WorkerFileWriterCallbacksBridge::dispatchTaskToWorkerThread):

21:01 Changeset [95011] by weinig@apple.com
  • 5 edits in trunk

Don't allow setting proto to be a getter or setter
https://bugs.webkit.org/show_bug.cgi?id=67982

Reviewed by Gavin Barraclough.

Source/JavaScriptCore:

  • runtime/JSObject.cpp:

(JSC::JSObject::defineGetter):
(JSC::JSObject::defineSetter):
Disallow setting a getter or setter on proto.

LayoutTests:

  • fast/js/prototypes-expected.txt:
  • fast/js/script-tests/prototypes.js:

Add test that we disallow setting a getter or setter on proto.

20:55 Changeset [95010] by adamk@chromium.org
  • 2 edits in trunk/Source/WebCore

Fix out-of-bounds access in Gradient::sortStopsIfNecessary
https://bugs.webkit.org/show_bug.cgi?id=67958

Reviewed by Darin Adler.

Reported by Valgrind in http://crbug.com/77049.

The errant code was added as an optimization in r67804.
This patch reverts that one, as all parties agree that the optimization
doesn't seem worthwhile, and there clearly aren't any tests covering
the special case.

No new tests, as existing tests should cover the remaining call to
|std::stable_sort|.

  • platform/graphics/Gradient.cpp:

(WebCore::Gradient::sortStopsIfNecessary):

20:50 Changeset [95009] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Setting document.title doesn't affect contents of title tag of XHTML documents
https://bugs.webkit.org/show_bug.cgi?id=57537

Patch by Jacky Jiang <zhajiang@rim.com> on 2011-09-12
Reviewed by Alexey Proskuryakov.

Source/WebCore:

Update the contents of the <title> tag of XHTML documents when setting
document.title.

Test: fast/dom/title-content-set-innerText-get.xhtml

  • dom/Document.cpp:

(WebCore::Document::setTitle):

LayoutTests:

  • fast/dom/title-content-set-innerText-get-expected.txt: Added.
  • fast/dom/title-content-set-innerText-get.xhtml: Added.
20:44 Changeset [95008] by commit-queue@webkit.org
  • 1 edit
    4 adds in trunk/LayoutTests

Add GTK & Win expectations for two recently added
accessibility layout tests.
https://bugs.webkit.org/show_bug.cgi?id=67948

Patch by Dominic Mazzoni <dmazzoni@google.com> on 2011-09-12
Reviewed by Chris Fleizach.

  • platform/gtk/accessibility/adjacent-continuations-cause-assertion-failure-expected.txt: Added.
  • platform/gtk/accessibility/div-within-anchors-causes-crash-expected.txt: Added.
  • platform/win/accessibility/adjacent-continuations-cause-assertion-failure-expected.txt: Added.
  • platform/win/accessibility/div-within-anchors-causes-crash-expected.txt: Added.
20:38 Changeset [95007] by commit-queue@webkit.org
  • 2 edits
    1 add in trunk/Tools

[EFL] DRT: Add DumpRenderTreeEfl.h
https://bugs.webkit.org/show_bug.cgi?id=63993

Patch by Leandro Pereira <leandro@profusion.mobi> on 2011-09-12
Reviewed by Eric Seidel.

This header contains some global variables used by EFL's
DumpRenderTree implementation.

  • DumpRenderTree/DumpRenderTree.h: Include DumpRenderTreeEfl.h when

appropriate.

  • DumpRenderTree/efl/DumpRenderTreeEfl.h: Added.
20:34 Changeset [95006] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[EFL] Send the right key names for PageUp and PageDown.
https://bugs.webkit.org/show_bug.cgi?id=67044

Patch by Raphael Kubo da Costa <kubo@profusion.mobi> on 2011-09-12
Reviewed by Kenneth Rohde Christiansen.

PlatformKeyboardEventEfl uses "Prior" and "Next" to refer to PageUp and
PageDown (which is close to the defines in WindowsKeyboardCodes.h).
However, EventSender was sending "Page_Up" and "Page_Down", so tests
such as editing/input/page-up-down-scrolls.html were timing out due to
the right key down events not being sent.

  • DumpRenderTree/efl/EventSender.cpp:

(keyPadNameFromJSValue):
(keyNameFromJSValue):

20:30 Changeset [95005] by ryuan.choi@samsung.com
  • 3 edits in trunk/Source/WebKit2

Reviewed by Eric Seidel.

[CMAKE][WK2] include cmakeconfig.h in WebKit2/config.h
https://bugs.webkit.org/show_bug.cgi?id=62692

  • CMakeLists.txt: define WTF_USE_JSC=1.
  • config.h: add cmakeconfig.h and define necessary macros for CMake build.
20:24 Changeset [95004] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[EFL] Initialize m_unmodifiedText in PlatformKeyboardEventEfl.
https://bugs.webkit.org/show_bug.cgi?id=67038

Patch by Raphael Kubo da Costa <kubo@profusion.mobi> on 2011-09-12
Reviewed by Kenneth Rohde Christiansen.

Since most of the time it will return the same thing as text(), we
initialize it the same way we initialize m_text. The other case (what
would have been generated if no modifiers were pressed) should be
covered by this as well.

As this method is used when handling access keys, tests such as
fast/events/access-key-self-destruct.html should now pass.

No new tests, as this fixes a problem uncovered by the existing ones.

  • platform/efl/PlatformKeyboardEventEfl.cpp:

(WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):

20:13 Changeset [95003] by commit-queue@webkit.org
  • 1 edit
    1 copy
    2 moves
    1 add
    11 deletes in trunk/LayoutTests

Patch by Wyatt Carss <wcarss@chromium.org> on 2011-09-12
Reviewed by Eric Seidel.

convert editing/deleting/5390681-2.html to dump-as-markup
https://bugs.webkit.org/show_bug.cgi?id=63293

Renamed editing/deleting/5390681* to editing/deleting/smart-delete-across-editable-boundaries,
Added doctype/html/body to both tests, and converted smart-delete-across-editable-boundaries-2
to dump-as-markup test in the same style as the first. Also updated results.

  • editing/deleting/5390681.html: Removed.
  • editing/deleting/5390681-expected.txt: Removed.
  • editing/deleting/5390681-2.html: Removed.
  • editing/deleting/smart-delete-across-editable-boundaries.html: Added.
  • editing/deleting/smart-delete-across-editable-boundaries-expected.txt: Added.
  • editing/deleting/smart-delete-across-editable-boundaries-2.html: Added.
  • editing/deleting/smart-delete-across-editable-boundaries-2-expected.txt: Added.
  • platform/chromium-linux/editing/deleting/5390681-2-expected.png: Removed.
  • platform/chromium-win/editing/deleting/5390681-2-expected.png: Removed.
  • platform/chromium-win/editing/deleting/5390681-2-expected.txt: Removed.
  • platform/gtk/editing/deleting/5390681-2-expected.txt: Removed.
  • platform/mac-leopard/editing/deleting/5390681-2-expected.png: Removed.
  • platform/mac/editing/deleting/5390681-2-expected.png: Removed.
  • platform/mac/editing/deleting/5390681-2-expected.txt: Removed.
  • platform/qt/editing/deleting/5390681-2-expected.png: Removed.
  • platform/qt/editing/deleting/5390681-2-expected.txt: Removed.
  • platform/qt/editing/deleting/5390681-expected.png: Removed.
20:12 Changeset [95002] by commit-queue@webkit.org
  • 1 edit
    1 add in trunk/Source/WebCore

Patch by Hyowon Kim <hw1008.kim@samsung.com> on 2011-09-12
Reviewed by Eric Seidel.

[EFL] Add GraphicsContext3DEfl for WebGL and accelerated compositing
https://bugs.webkit.org/show_bug.cgi?id=62709

Add GraphicsContext3D implementation for EFL port.
GraphicsContext3D delegates to GraphicsContext3DInternal.

  • platform/graphics/efl/GraphicsContext3DEfl.cpp: Added.

(WebCore::GraphicsContext3D::create):
(WebCore::GraphicsContext3D::GraphicsContext3D):
(WebCore::GraphicsContext3D::~GraphicsContext3D):
(WebCore::GraphicsContext3D::platformGraphicsContext3D):
(WebCore::GraphicsContext3D::platformLayer):
(WebCore::GraphicsContext3D::makeContextCurrent):
(WebCore::GraphicsContext3D::isGLES2Compliant):
(WebCore::GraphicsContext3D::activeTexture):
(WebCore::GraphicsContext3D::attachShader):
(WebCore::GraphicsContext3D::bindAttribLocation):
(WebCore::GraphicsContext3D::bindBuffer):
(WebCore::GraphicsContext3D::bindFramebuffer):
(WebCore::GraphicsContext3D::bindRenderbuffer):
(WebCore::GraphicsContext3D::bindTexture):
(WebCore::GraphicsContext3D::blendColor):
(WebCore::GraphicsContext3D::blendEquation):
(WebCore::GraphicsContext3D::blendEquationSeparate):
(WebCore::GraphicsContext3D::blendFunc):
(WebCore::GraphicsContext3D::blendFuncSeparate):
(WebCore::GraphicsContext3D::bufferData):
(WebCore::GraphicsContext3D::bufferSubData):
(WebCore::GraphicsContext3D::checkFramebufferStatus):
(WebCore::GraphicsContext3D::clear):
(WebCore::GraphicsContext3D::clearColor):
(WebCore::GraphicsContext3D::clearDepth):
(WebCore::GraphicsContext3D::clearStencil):
(WebCore::GraphicsContext3D::colorMask):
(WebCore::GraphicsContext3D::compileShader):
(WebCore::GraphicsContext3D::copyTexImage2D):
(WebCore::GraphicsContext3D::copyTexSubImage2D):
(WebCore::GraphicsContext3D::cullFace):
(WebCore::GraphicsContext3D::depthFunc):
(WebCore::GraphicsContext3D::depthMask):
(WebCore::GraphicsContext3D::depthRange):
(WebCore::GraphicsContext3D::detachShader):
(WebCore::GraphicsContext3D::disable):
(WebCore::GraphicsContext3D::disableVertexAttribArray):
(WebCore::GraphicsContext3D::drawArrays):
(WebCore::GraphicsContext3D::drawElements):
(WebCore::GraphicsContext3D::enable):
(WebCore::GraphicsContext3D::enableVertexAttribArray):
(WebCore::GraphicsContext3D::finish):
(WebCore::GraphicsContext3D::flush):
(WebCore::GraphicsContext3D::framebufferRenderbuffer):
(WebCore::GraphicsContext3D::framebufferTexture2D):
(WebCore::GraphicsContext3D::frontFace):
(WebCore::GraphicsContext3D::generateMipmap):
(WebCore::GraphicsContext3D::getActiveAttrib):
(WebCore::GraphicsContext3D::getActiveUniform):
(WebCore::GraphicsContext3D::getAttachedShaders):
(WebCore::GraphicsContext3D::getAttribLocation):
(WebCore::GraphicsContext3D::getBooleanv):
(WebCore::GraphicsContext3D::getBufferParameteriv):
(WebCore::GraphicsContext3D::getContextAttributes):
(WebCore::GraphicsContext3D::getError):
(WebCore::GraphicsContext3D::getFloatv):
(WebCore::GraphicsContext3D::getFramebufferAttachmentParameteriv):
(WebCore::GraphicsContext3D::getIntegerv):
(WebCore::GraphicsContext3D::getProgramiv):
(WebCore::GraphicsContext3D::getProgramInfoLog):
(WebCore::GraphicsContext3D::getRenderbufferParameteriv):
(WebCore::GraphicsContext3D::getShaderiv):
(WebCore::GraphicsContext3D::getShaderInfoLog):
(WebCore::GraphicsContext3D::getShaderSource):
(WebCore::GraphicsContext3D::getString):
(WebCore::GraphicsContext3D::getTexParameterfv):
(WebCore::GraphicsContext3D::getTexParameteriv):
(WebCore::GraphicsContext3D::getUniformfv):
(WebCore::GraphicsContext3D::getUniformiv):
(WebCore::GraphicsContext3D::getUniformLocation):
(WebCore::GraphicsContext3D::getVertexAttribfv):
(WebCore::GraphicsContext3D::getVertexAttribiv):
(WebCore::GraphicsContext3D::getVertexAttribOffset):
(WebCore::GraphicsContext3D::hint):
(WebCore::GraphicsContext3D::isBuffer):
(WebCore::GraphicsContext3D::isEnabled):
(WebCore::GraphicsContext3D::isFramebuffer):
(WebCore::GraphicsContext3D::isProgram):
(WebCore::GraphicsContext3D::isRenderbuffer):
(WebCore::GraphicsContext3D::isShader):
(WebCore::GraphicsContext3D::isTexture):
(WebCore::GraphicsContext3D::lineWidth):
(WebCore::GraphicsContext3D::linkProgram):
(WebCore::GraphicsContext3D::pixelStorei):
(WebCore::GraphicsContext3D::polygonOffset):
(WebCore::GraphicsContext3D::readPixels):
(WebCore::GraphicsContext3D::releaseShaderCompiler):
(WebCore::GraphicsContext3D::renderbufferStorage):
(WebCore::GraphicsContext3D::sampleCoverage):
(WebCore::GraphicsContext3D::scissor):
(WebCore::GraphicsContext3D::shaderSource):
(WebCore::GraphicsContext3D::stencilFunc):
(WebCore::GraphicsContext3D::stencilFuncSeparate):
(WebCore::GraphicsContext3D::stencilMask):
(WebCore::GraphicsContext3D::stencilMaskSeparate):
(WebCore::GraphicsContext3D::stencilOp):
(WebCore::GraphicsContext3D::stencilOpSeparate):
(WebCore::GraphicsContext3D::texImage2D):
(WebCore::GraphicsContext3D::texParameterf):
(WebCore::GraphicsContext3D::texParameteri):
(WebCore::GraphicsContext3D::texSubImage2D):
(WebCore::GraphicsContext3D::uniform1f):
(WebCore::GraphicsContext3D::uniform1fv):
(WebCore::GraphicsContext3D::uniform1i):
(WebCore::GraphicsContext3D::uniform1iv):
(WebCore::GraphicsContext3D::uniform2f):
(WebCore::GraphicsContext3D::uniform2fv):
(WebCore::GraphicsContext3D::uniform2i):
(WebCore::GraphicsContext3D::uniform2iv):
(WebCore::GraphicsContext3D::uniform3f):
(WebCore::GraphicsContext3D::uniform3fv):
(WebCore::GraphicsContext3D::uniform3i):
(WebCore::GraphicsContext3D::uniform3iv):
(WebCore::GraphicsContext3D::uniform4f):
(WebCore::GraphicsContext3D::uniform4fv):
(WebCore::GraphicsContext3D::uniform4i):
(WebCore::GraphicsContext3D::uniform4iv):
(WebCore::GraphicsContext3D::uniformMatrix2fv):
(WebCore::GraphicsContext3D::uniformMatrix3fv):
(WebCore::GraphicsContext3D::uniformMatrix4fv):
(WebCore::GraphicsContext3D::useProgram):
(WebCore::GraphicsContext3D::validateProgram):
(WebCore::GraphicsContext3D::vertexAttrib1f):
(WebCore::GraphicsContext3D::vertexAttrib1fv):
(WebCore::GraphicsContext3D::vertexAttrib2f):
(WebCore::GraphicsContext3D::vertexAttrib2fv):
(WebCore::GraphicsContext3D::vertexAttrib3f):
(WebCore::GraphicsContext3D::vertexAttrib3fv):
(WebCore::GraphicsContext3D::vertexAttrib4f):
(WebCore::GraphicsContext3D::vertexAttrib4fv):
(WebCore::GraphicsContext3D::vertexAttribPointer):
(WebCore::GraphicsContext3D::viewport):
(WebCore::GraphicsContext3D::reshape):
(WebCore::GraphicsContext3D::markContextChanged):
(WebCore::GraphicsContext3D::markLayerComposited):
(WebCore::GraphicsContext3D::layerComposited):
(WebCore::GraphicsContext3D::paintRenderingResultsToCanvas):
(WebCore::GraphicsContext3D::paintRenderingResultsToImageData):
(WebCore::GraphicsContext3D::createBuffer):
(WebCore::GraphicsContext3D::createFramebuffer):
(WebCore::GraphicsContext3D::createProgram):
(WebCore::GraphicsContext3D::createRenderbuffer):
(WebCore::GraphicsContext3D::createShader):
(WebCore::GraphicsContext3D::createTexture):
(WebCore::GraphicsContext3D::deleteBuffer):
(WebCore::GraphicsContext3D::deleteFramebuffer):
(WebCore::GraphicsContext3D::deleteProgram):
(WebCore::GraphicsContext3D::deleteRenderbuffer):
(WebCore::GraphicsContext3D::deleteShader):
(WebCore::GraphicsContext3D::deleteTexture):
(WebCore::GraphicsContext3D::synthesizeGLError):
(WebCore::GraphicsContext3D::getExtensions):
(WebCore::GraphicsContext3D::getInternalFramebufferSize):
(WebCore::GraphicsContext3D::setContextLostCallback):
(WebCore::GraphicsContext3D::getImageData):

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

Patch by Hyowon Kim <hw1008.kim@samsung.com> on 2011-09-12
Reviewed by Eric Seidel.

[CMAKE] Remove platform/graphics/opengl/*OpenGL.cpp files in CMakeLists.txt
https://bugs.webkit.org/show_bug.cgi?id=62707

No change in fuctionality so no new tests.

Bug 62376 makes all ports use GraphicsContext3DOpenGL and
Extensions3DOpenGL when enabling WebGL.
However, some ports already have their own GC3D implementation.
In QT and chromium, for example, GC3D delegates to GC3DInternal.
So, it would be better to allow each port to decide whether or not
to include files in platform/graphics/opengl.

  • CMakeLists.txt:
19:59 Changeset [95000] by ukai@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, update chromium test expectations.

  • platform/chromium/test_expectations.txt: fast/borders/border-image-omit-right-slice.html crash on debug
19:43 Changeset [94999] by ukai@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewred, update chromium test expectations.

  • platform/chromium/test_expectations.txt: fast/events/constructors/progress-event-constructor.html on mac
19:25 Changeset [94998] by jamesr@google.com
  • 2 edits in trunk/LayoutTests

[chromium] Remove bad expectation that was causing us to run a compositing/ test on Leopard. Tsk tsk, Mike
Reed!

  • platform/chromium/test_expectations.txt:
18:57 Changeset [94997] by jamesr@google.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed build fix for chromium.

Guard access to UString::latin1() with USE(JSC) since it is defined in JavaScriptCore/runtime/UString.cpp, which
is currently only compiled in by ports that use JavaScriptCore. This code is currently unreachable in builds so
no change in functionality.

  • yarr/YarrInterpreter.cpp:

(JSC::Yarr::Interpreter::CharAccess::CharAccess):

18:33 Changeset [94996] by fpizlo@apple.com
  • 20 edits
    1 add in trunk/Source/JavaScriptCore

JavaScriptCore does not have speculative->baseline OSR
https://bugs.webkit.org/show_bug.cgi?id=67826

Reviewed by Oliver Hunt.

This adds the ability to bail out of DFG speculative JIT execution by
performing an on-stack replacement (OSR) that results in the control
flow going to the equivalent code generated by the old JIT.

This required a number of new features, as well as taking advantage of
some features that happened to already be present:

We already had a policy of storing the bytecode index for which a DFG
node was generated inside the DFG::Node class. This was previously
called exceptionInfo. It's now renamed to codeOrigin to reflect that
it's used for more than just excpetions. OSR uses this to figure out
which bytecode index to use to look up the machine code location in
the code generated by the old JIT that we should be jumping to.

CodeBlock now stores a mapping between bytecode indices and machine
code offsets for code generated by the old JIT. This is implemented
by CompactJITCodeMap, which tries to compress this data a bit. The
OSR compiler decodes this and uses it to find the machine code
locations it should be jumping to.

We already had a mechanism that emitted SetLocal nodes in the DFG graph
that told us the time at which the old JIT would have stored something
into its register file, and the DFG::Node that corresponds to the value
that it would have stored. These SetLocal's were mostly dead-code-
eliminated, but our DCE leaves the nodes intact except for making them
have 0 as the ref count. This allows the OSR compiler to construct a
mapping between the state as it would have been seen by the old JIT
and the state as the DFG JIT sees it. The OSR compiler uses this to
generate code that reshapes the call frame so that it is like what the
old JIT would expect.

Finally, when DFG_OSR is enabled (the default for TIERED_COMPILATION)
we no longer emit the non-speculative path.

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • bytecode/CodeBlock.h:
  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::currentCodeOrigin):
(JSC::DFG::ByteCodeParser::addToGraph):

  • dfg/DFGGPRInfo.h:
  • dfg/DFGGenerationInfo.h:

(JSC::DFG::GenerationInfo::alive):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::dump):

  • dfg/DFGJITCodeGenerator.cpp:

(JSC::DFG::JITCodeGenerator::emitCall):

  • dfg/DFGJITCodeGenerator.h:

(JSC::DFG::JITCodeGenerator::appendCallWithExceptionCheck):

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::exitSpeculativeWithOSR):
(JSC::DFG::JITCompiler::linkOSRExits):
(JSC::DFG::JITCompiler::compileBody):
(JSC::DFG::JITCompiler::link):

  • dfg/DFGJITCompiler.h:

(JSC::DFG::CallRecord::CallRecord):
(JSC::DFG::JITCompiler::notifyCall):
(JSC::DFG::JITCompiler::appendCallWithExceptionCheck):
(JSC::DFG::JITCompiler::appendCallWithFastExceptionCheck):
(JSC::DFG::JITCompiler::addJSCall):
(JSC::DFG::JITCompiler::JSCallRecord::JSCallRecord):

  • dfg/DFGNode.h:

(JSC::DFG::CodeOrigin::CodeOrigin):
(JSC::DFG::CodeOrigin::isSet):
(JSC::DFG::CodeOrigin::bytecodeIndex):
(JSC::DFG::Node::Node):
(JSC::DFG::Node::child1Unchecked):

  • dfg/DFGNonSpeculativeJIT.cpp:

(JSC::DFG::NonSpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::ValueSource::dump):
(JSC::DFG::ValueRecovery::dump):
(JSC::DFG::OSRExit::OSRExit):
(JSC::DFG::SpeculativeJIT::compile):
(JSC::DFG::SpeculativeJIT::compileMovHint):
(JSC::DFG::SpeculativeJIT::computeValueRecoveryFor):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::ValueSource::ValueSource):
(JSC::DFG::ValueSource::isSet):
(JSC::DFG::ValueSource::nodeIndex):
(JSC::DFG::ValueRecovery::ValueRecovery):
(JSC::DFG::ValueRecovery::alreadyInRegisterFile):
(JSC::DFG::ValueRecovery::inGPR):
(JSC::DFG::ValueRecovery::inFPR):
(JSC::DFG::ValueRecovery::displacedInRegisterFile):
(JSC::DFG::ValueRecovery::constant):
(JSC::DFG::ValueRecovery::technique):
(JSC::DFG::ValueRecovery::gpr):
(JSC::DFG::ValueRecovery::fpr):
(JSC::DFG::ValueRecovery::virtualRegister):
(JSC::DFG::OSRExit::numberOfRecoveries):
(JSC::DFG::OSRExit::valueRecovery):
(JSC::DFG::OSRExit::isArgument):
(JSC::DFG::OSRExit::argumentForIndex):
(JSC::DFG::OSRExit::variableForIndex):
(JSC::DFG::OSRExit::operandForIndex):
(JSC::DFG::SpeculativeJIT::osrExits):
(JSC::DFG::SpeculativeJIT::speculationCheck):
(JSC::DFG::SpeculativeJIT::valueSourceForOperand):
(JSC::DFG::SpeculativeJIT::setNodeIndexForOperand):
(JSC::DFG::SpeculativeJIT::valueSourceReferenceForOperand):
(JSC::DFG::SpeculativeJIT::computeValueRecoveryFor):
(JSC::DFG::SpeculationCheckIndexIterator::SpeculationCheckIndexIterator):
(JSC::DFG::SpeculativeJIT::SpeculativeJIT):

  • jit/CompactJITCodeMap.h: Added.

(JSC::BytecodeAndMachineOffset::BytecodeAndMachineOffset):
(JSC::BytecodeAndMachineOffset::getBytecodeIndex):
(JSC::BytecodeAndMachineOffset::getMachineCodeOffset):
(JSC::CompactJITCodeMap::~CompactJITCodeMap):
(JSC::CompactJITCodeMap::decode):
(JSC::CompactJITCodeMap::CompactJITCodeMap):
(JSC::CompactJITCodeMap::at):
(JSC::CompactJITCodeMap::decodeNumber):
(JSC::CompactJITCodeMap::Encoder::Encoder):
(JSC::CompactJITCodeMap::Encoder::~Encoder):
(JSC::CompactJITCodeMap::Encoder::append):
(JSC::CompactJITCodeMap::Encoder::finish):
(JSC::CompactJITCodeMap::Encoder::appendByte):
(JSC::CompactJITCodeMap::Encoder::encodeNumber):
(JSC::CompactJITCodeMap::Encoder::ensureCapacityFor):

  • jit/JIT.cpp:

(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompile):

  • jit/JIT.h:
  • runtime/JSGlobalData.cpp:

(JSC::JSGlobalData::JSGlobalData):
(JSC::JSGlobalData::~JSGlobalData):

  • runtime/JSGlobalData.h:

(JSC::JSGlobalData::osrScratchBufferForSize):

  • runtime/JSValue.cpp:

(JSC::JSValue::description):

18:26 Changeset [94995] by kov@webkit.org
  • 1 edit
    1 move in trunk/Source/WebKit/gtk/po

Unreviewed. Rename Greek translation file, the correct code is el
(http://www.science.co.il/language/Locale-Codes.asp?s=decimal).

Patch by Gustavo Noronha Silva <gns@gnome.org> on 2011-09-12

  • el.po: Renamed from Source/WebKit/gtk/po/gr.po.
17:26 Changeset [94994] by rniwa@webkit.org
  • 1 edit
    2 copies in branches/chromium/874

Merge 94988 - REGRESSION: Moving up doesn't work in some cases
https://bugs.webkit.org/show_bug.cgi?id=67522

Reviewed by Eric Seidel.

Source/WebCore:

The bug was caused by previousLinePosition's attempting to obtain the last root line box using
a position at minCaretOffset (which is, in practice, located at the beginning of wrapped lines).

Fix the bug by calling maxCaretOffset instead. Because isCandidate returns false at (br, 1),
use the positionBeforeNode for br elements.

Test: editing/selection/move-up-into-wrapped-line.html

  • editing/visible_units.cpp:

(WebCore::previousLinePosition):

LayoutTests:

Add a test to move caret upwards from an empty line below wrapped lines.

WebKit used to skip wrapped lines and placed caret at the beginning of the first of those wrapped lines
instead of before the last.

  • editing/selection/move-up-into-wrapped-line-expected.txt: Added.
  • editing/selection/move-up-into-wrapped-line.html: Added.

Review URL: http://codereview.chromium.org/7878009

17:07 Changeset [94993] by eric@webkit.org
  • 5 edits in trunk/Tools

sheriffbot whois is case sensitive
https://bugs.webkit.org/show_bug.cgi?id=67972

Reviewed by Adam Barth.

I also fixed a typo in the "More than 5 contributors" message
from my previous commit.

  • Scripts/webkitpy/common/config/committers.py:
  • Scripts/webkitpy/common/config/committers_unittest.py:
  • Scripts/webkitpy/tool/bot/irc_command.py:
  • Scripts/webkitpy/tool/bot/irc_command_unittest.py:
17:06 Changeset [94992] by ggaren@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Re-enabled ENABLE(LAZY_BLOCK_FREEING).

Reviewed by Stephanie Lewis.

I accidentally disabled this in r94890, causing a big performance regression.

  • wtf/Platform.h:
17:02 Changeset [94991] by mitz@apple.com
  • 4 edits
    3 adds in trunk

<rdar://problem/10054615> Floats in ruby text intrude into the base

Reviewed by Darin Adler.

Source/WebCore:

Test: fast/ruby/float-overhang-from-ruby-text.html

  • rendering/RenderRubyText.cpp:

(WebCore::RenderRubyText::avoidsFloats): Added. Returns true. This ensures that
RenderBlock::clearFloats() will not consider ruby text as having intruding floats.

  • rendering/RenderRubyText.h:

LayoutTests:

  • fast/ruby/float-overhang-from-ruby-text-expected.png: Added.
  • fast/ruby/float-overhang-from-ruby-text-expected.txt: Added.
  • fast/ruby/float-overhang-from-ruby-text.html: Added.
16:43 Changeset [94990] by eric@webkit.org
  • 4 edits in trunk/Tools

sheriffbot whois should be smarter
https://bugs.webkit.org/show_bug.cgi?id=67971

Reviewed by Adam Barth.

This makes sheriffbot whois basically grep the committers list
making it much easier to find a contributor by name.

Unfortunately the current unittests depend on the real committers.py
file, so as we add more eric's to the project, this unittest result will
change. I think that's OK for now. We'll fix it when it breaks.

  • Scripts/webkitpy/common/config/committers.py:
  • Scripts/webkitpy/tool/bot/irc_command.py:
  • Scripts/webkitpy/tool/bot/irc_command_unittest.py:
16:38 Changeset [94989] by hyatt@apple.com
  • 4 edits in trunk/Source/WebCore

https://bugs.webkit.org/show_bug.cgi?id=67970

Add unprefixed border-image property.

Reviewed by Beth Dakin.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):

  • css/CSSPropertyNames.in:
16:32 Changeset [94988] by rniwa@webkit.org
  • 3 edits
    2 adds in trunk

REGRESSION: Moving up doesn't work in some cases
https://bugs.webkit.org/show_bug.cgi?id=67522

Reviewed by Eric Seidel.

Source/WebCore:

The bug was caused by previousLinePosition's attempting to obtain the last root line box using
a position at minCaretOffset (which is, in practice, located at the beginning of wrapped lines).

Fix the bug by calling maxCaretOffset instead. Because isCandidate returns false at (br, 1),
use the positionBeforeNode for br elements.

Test: editing/selection/move-up-into-wrapped-line.html

  • editing/visible_units.cpp:

(WebCore::previousLinePosition):

LayoutTests:

Add a test to move caret upwards from an empty line below wrapped lines.

WebKit used to skip wrapped lines and placed caret at the beginning of the first of those wrapped lines
instead of before the last.

  • editing/selection/move-up-into-wrapped-line-expected.txt: Added.
  • editing/selection/move-up-into-wrapped-line.html: Added.
16:14 Changeset [94987] by msaboff@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Broken Build for ARM - lshift32() needs TrustedImm32 arg
https://bugs.webkit.org/show_bug.cgi?id=67965

Change lshift32(16, ARMRegisters::S1); to lshift32(TrustedImm32(16), ARMRegisters::S1);

Reviewed by Anders Carlsson.

  • assembler/MacroAssemblerARM.h:

(JSC::MacroAssemblerARM::branch16):

15:48 Changeset [94986] by levin@chromium.org
  • 3 edits in trunk/Source/WebCore

Make the ThreadSafeRefCounted support in CrossThreadCopier work for T*.
https://bugs.webkit.org/show_bug.cgi?id=67947

Reviewed by Adam Barth.

The changes are tested by compiling and added compile asserts to do some verification as well.

  • platform/CrossThreadCopier.cpp:

Added some compile asserts to verify various match and non-matches for CrossThreadCopier.

  • platform/CrossThreadCopier.h:

Added a typedef to convert T* to T, just like the typedef's to remove RefPtr and PassRefPtr.
Added a compile assert to verify that only one of the typedefs did anything.
(CrossThreadCopierBase<false, true, T>::copy): Remove "get" as it is unnecessary.
It shouldn't have been here (PassRefPtr and RefPtr easily and sometimes more efficiently
convert to PassRefPtr without get). Also, a raw pointer doesn't have a get() method.

15:43 Changeset [94985] by msaboff@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Broken ARM build - missing semicolon in JavaScriptCore/assembler/MacroAssemblerARM.h
https://bugs.webkit.org/show_bug.cgi?id=67961

Added missing semicolon.

Reviewed by Ryosuke Niwa.

  • assembler/MacroAssemblerARM.h:

(JSC::MacroAssemblerARM::branch16):

15:43 Changeset [94984] by crogers@google.com
  • 2 edits in trunk/Source/WebCore

Address lifetime issues in OfflineAudioDestinationNode
https://bugs.webkit.org/show_bug.cgi?id=67949

Reviewed by Kenneth Russell.

No new tests. This does not change JavaScript API.

  • webaudio/OfflineAudioDestinationNode.cpp:

(WebCore::OfflineAudioDestinationNode::~OfflineAudioDestinationNode):
(WebCore::OfflineAudioDestinationNode::render):
(WebCore::OfflineAudioDestinationNode::notifyCompleteDispatch):

15:21 Changeset [94983] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Unreviewed, rolling out r94976.
http://trac.webkit.org/changeset/94976
https://bugs.webkit.org/show_bug.cgi?id=67953

Broke a bunch of security/load& tests (Requested by rniwa on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-09-12

  • DumpRenderTree/mac/LayoutTestControllerMac.mm:

(LayoutTestController::pathToLocalResource):

15:19 Changeset [94982] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[chromium] Prevent a crash when tearing down an ImageBuffer that was not successfully initialized.
https://bugs.webkit.org/show_bug.cgi?id=67944

Patch by Jeff Timanus <twiz@chromium.org> on 2011-09-12
Reviewed by Stephen White.

  • platform/graphics/skia/ImageBufferSkia.cpp:

(WebCore::ImageBuffer::~ImageBuffer):

15:17 Changeset [94981] by msaboff@apple.com
  • 24 edits in trunk/Source

Update RegExp and related classes to use 8 bit strings when available
https://bugs.webkit.org/show_bug.cgi?id=67337

Source/JavaScriptCore:

Modified both the Yarr interpreter and JIT to handle 8 bit subject strings.
The code paths are triggered by the UString::is8bit() method which currently
returns false. Implemented JIT changes for all current architectures.
Tested X86_64 and ARM v7.

This includes some code that will likely change as we complete the
8 bit string changes. This includes the way the raw buffer pointers
are accessed as well as replacing the CharAccess class with a
string interator returned from UString.

Fixed build breakage in testRegExp.cpp due to globalObject construction
changes.

Reviewed by Gavin Barraclough.

(GlobalObject::finishCreation):
(GlobalObject::GlobalObject):

  • assembler/ARMAssembler.cpp:

(JSC::ARMAssembler::baseIndexTransfer32):

  • assembler/ARMAssembler.h:
  • assembler/ARMv7Assembler.h:

(JSC::ARMv7Assembler::ubfx):
(JSC::ARMv7Assembler::ARMInstructionFormatter::twoWordOp12Reg40Imm3Reg4Imm20Imm5):

  • assembler/MacroAssemblerARM.h:

(JSC::MacroAssemblerARM::load8):
(JSC::MacroAssemblerARM::branch8):
(JSC::MacroAssemblerARM::branch16):

  • assembler/MacroAssemblerARMv7.h:

(JSC::MacroAssemblerARMv7::load8):
(JSC::MacroAssemblerARMv7::branch16):
(JSC::MacroAssemblerARMv7::branch8):

  • assembler/MacroAssemblerMIPS.h:

(JSC::MacroAssemblerMIPS::load8):
(JSC::MacroAssemblerMIPS::branch8):
(JSC::MacroAssemblerMIPS::branch16):

  • assembler/MacroAssemblerSH4.h:

(JSC::MacroAssemblerSH4::load8):
(JSC::MacroAssemblerSH4::branch8):
(JSC::MacroAssemblerSH4::branch16):

  • assembler/MacroAssemblerX86Common.h:

(JSC::MacroAssemblerX86Common::load8):
(JSC::MacroAssemblerX86Common::branch16):
(JSC::MacroAssemblerX86Common::branch8):

  • assembler/SH4Assembler.h:

(JSC::SH4Assembler::extub):
(JSC::SH4Assembler::printInstr):

  • assembler/X86Assembler.h:

(JSC::X86Assembler::cmpw_ir):
(JSC::X86Assembler::movzbl_mr):

  • runtime/RegExp.cpp:

(JSC::RegExp::compile):
(JSC::RegExp::compileIfNecessary):
(JSC::RegExp::match):
(JSC::RegExp::matchCompareWithInterpreter):

  • runtime/RegExp.h:
  • runtime/UString.h:

(JSC::UString::is8Bit):

  • yarr/Yarr.h:
  • yarr/YarrInterpreter.cpp:

(JSC::Yarr::Interpreter::CharAccess::CharAccess):
(JSC::Yarr::Interpreter::CharAccess::~CharAccess):
(JSC::Yarr::Interpreter::CharAccess::operator[]):
(JSC::Yarr::Interpreter::InputStream::InputStream):
(JSC::Yarr::Interpreter::Interpreter):
(JSC::Yarr::interpret):

  • yarr/YarrJIT.cpp:

(JSC::Yarr::YarrGenerator::jumpIfCharNotEquals):
(JSC::Yarr::YarrGenerator::readCharacter):
(JSC::Yarr::YarrGenerator::generatePatternCharacterOnce):
(JSC::Yarr::YarrGenerator::generatePatternCharacterFixed):
(JSC::Yarr::YarrGenerator::generatePatternCharacterGreedy):
(JSC::Yarr::YarrGenerator::backtrackPatternCharacterNonGreedy):
(JSC::Yarr::YarrGenerator::generateCharacterClassFixed):
(JSC::Yarr::YarrGenerator::generateDotStarEnclosure):
(JSC::Yarr::YarrGenerator::YarrGenerator):
(JSC::Yarr::YarrGenerator::compile):
(JSC::Yarr::jitCompile):
(JSC::Yarr::execute):

  • yarr/YarrJIT.h:

(JSC::Yarr::YarrCodeBlock::has8BitCode):
(JSC::Yarr::YarrCodeBlock::has16BitCode):
(JSC::Yarr::YarrCodeBlock::set8BitCode):
(JSC::Yarr::YarrCodeBlock::set16BitCode):
(JSC::Yarr::YarrCodeBlock::execute):

  • yarr/YarrParser.h:

(JSC::Yarr::Parser::Parser):

Source/WebCore:

Updated call to match to use UString& instead of UChar*.

Reviewed by Gavin Barraclough.

No new tests, Covered by existing tests.

  • platform/text/RegularExpression.cpp:

(WebCore::RegularExpression::match):

14:52 Changeset [94980] by bdakin@apple.com
  • 6 edits in trunk

https://bugs.webkit.org/show_bug.cgi?id=67898
REGRESSION(r94900): fast/images/support-broken-image-delegate.html fails on Mac

Reviewed by Simon Fraser.

Source/WebCore:

New function willPaintBrokenImage() returns true when there has been an error
loading the image and the broken image icon will be used in its place. This is
necessary since it is possible to have an error loading an image and to NOT use
the broken image icon.

  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::willPaintBrokenImage):

  • loader/cache/CachedImage.h:
  • rendering/RenderImage.cpp:

(WebCore::RenderImage::imageSizeForError):

LayoutTests:

  • platform/mac/Skipped:
14:41 Changeset [94979] by igor.oliveira@openbossa.org
  • 9 edits in trunk/Source/WebKit2

2011-09-12 Igor Oliveira <igor.oliveira@openbossa.org>

[Qt] [WK2] implement support to upload files in Qt WebKit2
https://bugs.webkit.org/show_bug.cgi?id=67228

This patch implements support to upload files in the Desktop Qt WebKit2 implementation.

Reviewed by Andreas Kling.

  • Shared/WebOpenPanelParameters.h: (WebKit::WebOpenPanelParameters::selectedFileNames):
  • UIProcess/API/qt/qdesktopwebview.cpp: (QDesktopWebViewPrivate::chooseFiles): (QDesktopWebViewPrivate::onOpenPanelFilesSelected): (QDesktopWebViewPrivate::onOpenPanelFinished):
  • UIProcess/API/qt/qdesktopwebview_p.h:
  • UIProcess/qt/ClientImpl.cpp:

qt_wk_runOpenPanel supports single and multiple files selection.

(qt_wk_runOpenPanel):

  • UIProcess/qt/ClientImpl.h:
  • UIProcess/qt/QtWebPageProxy.cpp: (QtWebPageProxy::init):
  • UIProcess/qt/TouchViewInterface.h: (WebKit::TouchViewInterface::chooseFiles):
  • UIProcess/qt/ViewInterface.h:
14:11 Changeset [94978] by eric@webkit.org
  • 10 edits
    1 delete in trunk/Tools

Rubber-stamped by Adam Barth.

Remove the "the tree is burning!" warning previously shown
when landing patches. It was a dream. But it's just noise now.

Some bots will require a restart to notice the removal of the option
so I've left the --ignore-builders option in for now.

  • Scripts/webkitpy/tool/bot/commitqueuetask_unittest.py:
  • Scripts/webkitpy/tool/bot/patchanalysistask.py:
  • Scripts/webkitpy/tool/commands/download.py:
  • Scripts/webkitpy/tool/commands/download_unittest.py:
  • Scripts/webkitpy/tool/commands/queues_unittest.py:
  • Scripts/webkitpy/tool/steps/init.py:
  • Scripts/webkitpy/tool/steps/commit.py:
  • Scripts/webkitpy/tool/steps/ensurebuildersaregreen.py: Removed.
  • Scripts/webkitpy/tool/steps/postdiffforrevert.py:
14:05 Changeset [94977] by rniwa@webkit.org
  • 3 edits in trunk/LayoutTests

Fix a test added by r94966 to work on Mac.

  • fast/events/selectstart-by-arrow-keys.html:
  • platform/chromium/test_expectations.txt:
13:54 Changeset [94976] by eric@webkit.org
  • 2 edits in trunk/Tools

[NRWT] REGRESSION: Local loader tests are failing on machines that lost /tmp/LayoutTests symlink
https://bugs.webkit.org/show_bug.cgi?id=65781

Reviewed by Ryosuke Niwa.

Instead of making NRWT create the symlink, I just made DumpRenderTree smart enough
to resolve the passed in url relative to the absolute url for the test.

I believe this is a better approach than the on used in the Qt and Chromium DRT's
(which resolves the path relative to the built location of the DRT executable)
and we should move this new code into a shared location in a follow-up patch.

  • DumpRenderTree/mac/LayoutTestControllerMac.mm:

(LayoutTestController::pathToLocalResource):

13:30 Changeset [94975] by jamesr@google.com
  • 37 edits
    3 adds in trunk

[chromium] Move contents texture manager from LayerRendererChromium to CCLayerTreeHost
https://bugs.webkit.org/show_bug.cgi?id=67440

Reviewed by Kenneth Russell.

This moves the contents TextureManager over to the CCLayerTreeHost, where it belongs, and adds in a commit path
to make sure that textures are deleted even if the page is not visible. This move also removed the need for
LayerRendererChromium's CCLayerTreeHost pointer, so I removed that as well. That meant moving the
layerTreeAsText() logic over to the CCLayerImpl side, which is where it really belonged anyway.

Covered by existing compositing/ tests and
platform/chromium/compositor/lost-compositor-context-with-rendersurface.html

  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererChromium::releaseRenderSurfaceTextures):
(WebCore::LayerRendererChromium::drawLayers):
(WebCore::LayerRendererChromium::initializeSharedObjects):
(WebCore::LayerRendererChromium::cleanupSharedObjects):

  • platform/graphics/chromium/LayerRendererChromium.h:

(WebCore::LayerRendererChromium::setContentsTextureMemoryUseBytes):

  • platform/graphics/chromium/TextureManager.cpp:

(WebCore::TextureManager::highLimitBytes):
(WebCore::TextureManager::reclaimLimitBytes):
(WebCore::TextureManager::lowLimitBytes):

  • platform/graphics/chromium/TextureManager.h:
  • platform/graphics/chromium/cc/CCLayerTreeHost.cpp:

(WebCore::CCLayerTreeHost::initialize):
(WebCore::CCLayerTreeHost::~CCLayerTreeHost):
(WebCore::CCLayerTreeHost::deleteContentsTextures):
(WebCore::CCLayerTreeHost::commitTo):
(WebCore::CCLayerTreeHost::setVisible):
(WebCore::CCLayerTreeHost::contentsTextureManager):

  • platform/graphics/chromium/cc/CCLayerTreeHost.h:
  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:

(WebCore::CCLayerTreeHostImpl::setVisible):

  • platform/graphics/chromium/cc/CCProxy.h:
  • platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:

(WebCore::CCSingleThreadProxy::setNeedsCommit):
(WebCore::CCSingleThreadProxy::stop):

  • platform/graphics/chromium/cc/CCSingleThreadProxy.h:
  • platform/graphics/chromium/cc/CCThreadProxy.cpp:

(WebCore::CCThreadProxy::setNeedsCommit):
(WebCore::CCThreadProxy::setNeedsCommitOnCCThread):
(WebCore::CCThreadProxy::layerTreeHostClosedOnCCThread):

  • platform/graphics/chromium/cc/CCThreadProxy.h:
13:15 Changeset [94974] by japhet@chromium.org
  • 2 edits in trunk/LayoutTests

2011-09-12 Nate Chapin <japhet@chromium.org>

Fix up duplicate expectations and add expected failure
for selectstart-by-arrow-keys.html for chromium mac.

  • platform/chromium/test_expectations.txt:
13:06 Changeset [94973] by eric@webkit.org
  • 3 edits in trunk/Tools

Reshuffle some code in WebKitDriver._read_block in preparation for reading stderr/stdout separately
https://bugs.webkit.org/show_bug.cgi?id=67530

Reviewed by Adam Barth.

I believe I've fixed the bug in the original patch which prompted the rollout.
The previous patch was using the wrong deadline for the initial read,
subtracting time.time() twice from the deadline value.

  • Scripts/webkitpy/layout_tests/port/webkit.py:
  • Scripts/webkitpy/layout_tests/port/webkit_unittest.py:
13:05 Changeset [94972] by commit-queue@webkit.org
  • 20 edits
    1 delete in trunk/LayoutTests

Rebaseline for r94703.
https://bugs.webkit.org/show_bug.cgi?id=67945

Patch by David Reveman <reveman@chromium.org> on 2011-09-12
Reviewed by James Robinson.

  • platform/chromium-gpu-cg-mac/compositing/color-matching/image-color-matching-expected.png:
  • platform/chromium-gpu-cg-mac/compositing/flat-with-transformed-child-expected.png:
  • platform/chromium-gpu-cg-mac/compositing/masks/masked-ancestor-expected.png:
  • platform/chromium-gpu-cg-mac/compositing/reflections/nested-reflection-transformed-expected.png:
  • platform/chromium-gpu-cg-mac/compositing/reflections/nested-reflection-transformed2-expected.png:
  • platform/chromium-gpu-cg-mac/compositing/reflections/reflection-in-composited-expected.png:
  • platform/chromium-gpu-cg-mac/compositing/scaling/tiled-layer-recursion-expected.png:
  • platform/chromium-gpu-cg-mac/media/video-layer-crash-expected.png:
  • platform/chromium-gpu-cg-mac/media/video-transformed-expected.png:
  • platform/chromium-gpu-win/compositing/color-matching/image-color-matching-expected.png:
  • platform/chromium-gpu-win/compositing/flat-with-transformed-child-expected.png:
  • platform/chromium-gpu-win/compositing/masks/masked-ancestor-expected.png:
  • platform/chromium-gpu-win/compositing/reflections/nested-reflection-transformed-expected.png:
  • platform/chromium-gpu-win/compositing/reflections/nested-reflection-transformed2-expected.png:
  • platform/chromium-gpu-win/compositing/reflections/reflection-in-composited-expected.png:
  • platform/chromium-gpu-win/compositing/scaling/tiled-layer-recursion-expected.png:
  • platform/chromium-gpu-win/media/video-layer-crash-expected.png:
  • platform/chromium-gpu-win/media/video-transformed-expected.png:
  • platform/chromium/test_expectations.txt:
  • platform/mac-snowleopard/media/video-layer-crash-expected.txt: Removed.
13:05 Porting Macros plan edited by abarth@webkit.org
(diff)
12:53 Changeset [94971] by nduca@chromium.org
  • 7 edits in trunk/Source/WebKit/chromium

[chromium] Add GraphicsContext3DPrivate:createGraphicsContextForAnotherThread
https://bugs.webkit.org/show_bug.cgi?id=67832

The compositor thread needs to create a GraphicsContext3D without
actually making it current. In previous attempts at doing this, we
modified all graphics3D creation to not make the contexts current, but
this prove to be shockingly fragile. Since this is a very
Chromium-specific behavior, this patch makes creationForAnotherThread a
method on the private GraphicsContext3D interface.
GraphicsContext3D::create behaves as usual.

Reviewed by Kenneth Russell.

  • src/GraphicsContext3DChromium.cpp:

(WebCore::GraphicsContext3DPrivate::createGraphicsContextFromWebContext):
(WebCore::GraphicsContext3DPrivate::createGraphicsContextForAnotherThread):
(WebCore::GraphicsContext3D::create):

  • src/GraphicsContext3DPrivate.h:
  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::createLayerTreeHostContext3D):
(WebKit::WebViewImpl::graphicsContext3D):

  • tests/MockGraphicsContext3DTest.cpp:

(TEST):

12:50 Changeset [94970] by eric@webkit.org
  • 2 edits in trunk/LayoutTests

Implement a HashChangeEvent constructor for JSC
https://bugs.webkit.org/show_bug.cgi?id=67924

Unreviewed. Updating results which were forgotten.

  • fast/dom/constructed-objects-prototypes-expected.txt:
12:35 WebKit Team edited by adauria@apple.com
Adding myself to list of committers. (diff)
11:55 Changeset [94969] by crogers@google.com
  • 3 edits
    2 adds in trunk

DelayNode delay buffer is not correctly wrapping around
https://bugs.webkit.org/show_bug.cgi?id=67872

Reviewed by Kenneth Russell.

Source/WebCore:

Test: webaudio/delaynode.html

  • webaudio/DelayDSPKernel.cpp:

(WebCore::DelayDSPKernel::process):

LayoutTests:

  • webaudio/delaynode-expected.txt: Added.
  • webaudio/delaynode.html: Added.
11:12 Changeset [94968] by ossy@webkit.org
  • 4 edits in trunk/Source/WebKit/qt

[Qt] Fix "Unmatched parentheses are deprecated." warnings
https://bugs.webkit.org/show_bug.cgi?id=67775

Reviewed by Zoltan Herczeg.

Modify function declarations to single line to make qmake happier.

  • Api/qwebframe.h:
  • Api/qwebpluginfactory.h:
  • Api/qwebview.h:
11:00 Changeset [94967] by jamesr@google.com
  • 6 edits in branches/chromium/874/Source/WebCore

Merge 94964 - [chromium] REGRESSION(94353): Compositor textures and resources leaked when tab closed that is not last tab in the process
https://bugs.webkit.org/show_bug.cgi?id=67816

Reviewed by Kenneth Russell.

We lack infrastructure to construct an automated test for this today. To test manually, open up a composited
page (like the poster circle), duplicate the tab many times, close all the duplicates, and verify that the
memory use returns to the single tab level.

  • platform/graphics/chromium/LayerChromium.h:
  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::setLayerTreeHost):

  • platform/graphics/chromium/VideoLayerChromium.cpp:

(WebCore::VideoLayerChromium::setLayerTreeHost):

  • platform/graphics/chromium/cc/CCLayerTreeHost.cpp:

(WebCore::CCLayerTreeHost::clearRenderSurfacesRecursive):
(WebCore::CCLayerTreeHost::setRootLayer):

  • platform/graphics/chromium/cc/CCLayerTreeHost.h:

TBR=jamesr@google.com
BUG=96288
Review URL: http://codereview.chromium.org/7873004

10:55 Changeset [94966] by commit-queue@webkit.org
  • 4 edits
    4 adds in trunk

Selectstart is not fired when selection was created by arrow keys.
https://bugs.webkit.org/show_bug.cgi?id=60430

Patch by Arko Saha <arko@motorola.com> on 2011-09-12
Reviewed by Ryosuke Niwa.

Source/WebCore:

Fire selectstart when a user starts extending the selection using arrow key.
Fixed by Arko Saha <arko@motorola.com> and Kaustubh Atrawalkar <kaustubh@motorola.com>

Tests: fast/events/selectstart-by-arrow-keys-prevent-default.html

fast/events/selectstart-by-arrow-keys.html

  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::modify):
(WebCore::FrameSelection::shouldChangeSelection):
(WebCore::FrameSelection::dispatchSelectStart):

  • editing/FrameSelection.h:

LayoutTests:

  • fast/events/selectstart-by-arrow-keys-expected.txt: Added.
  • fast/events/selectstart-by-arrow-keys-prevent-default-expected.txt: Added.
  • fast/events/selectstart-by-arrow-keys-prevent-default.html: Added.
  • fast/events/selectstart-by-arrow-keys.html: Added.
10:54 Changeset [94965] by commit-queue@webkit.org
  • 5 edits
    4 adds in trunk/Source/WebKit/efl

Patch by Flavio Ceolin <flavio.ceolin@profusion.mobi> on 2011-09-12
Reviewed by Martin Robinson.

[EFL] Add custom network resource handler
https://bugs.webkit.org/show_bug.cgi?id=44759

This patch adds support for handling user-specific protocols.
It allows browsers to intercept and handle non-standard url schemes (such as preferences://)
allowing to load some resource from non-http/file storage, like a tar/zip/eet.

  • CMakeListsEfl.txt:
  • ewk/ewk_protocol_handler.cpp: Added.
  • ewk/ewk_protocol_handler.h: Added.
  • ewk/ewk_protocol_handler_soup.cpp: Added.
  • ewk/ewk_protocol_handler_soup.h: Added.
  • ewk/ewk_private.h:
  • ewk/ewk_view.cpp:

(ewk_view_protocol_handler_set):
(ewk_view_protocol_handler_unset):
(ewk_view_protocol_handler_resource_get):

  • ewk/ewk_view.h:
10:52 Changeset [94964] by jamesr@google.com
  • 6 edits in trunk/Source/WebCore

[chromium] REGRESSION(94353): Compositor textures and resources leaked when tab closed that is not last tab in the process
https://bugs.webkit.org/show_bug.cgi?id=67816

Reviewed by Kenneth Russell.

We lack infrastructure to construct an automated test for this today. To test manually, open up a composited
page (like the poster circle), duplicate the tab many times, close all the duplicates, and verify that the
memory use returns to the single tab level.

  • platform/graphics/chromium/LayerChromium.h:
  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::setLayerTreeHost):

  • platform/graphics/chromium/VideoLayerChromium.cpp:

(WebCore::VideoLayerChromium::setLayerTreeHost):

  • platform/graphics/chromium/cc/CCLayerTreeHost.cpp:

(WebCore::CCLayerTreeHost::clearRenderSurfacesRecursive):
(WebCore::CCLayerTreeHost::setRootLayer):

  • platform/graphics/chromium/cc/CCLayerTreeHost.h:
10:45 Changeset [94963] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

Chromium shadow-buffer-partial test change.
https://bugs.webkit.org/show_bug.cgi?id=67849

Patch by Ben Wagner <bungeman@chromium.org> on 2011-09-12
Reviewed by Kenneth Russell.

  • platform/chromium/test_expectations.txt:
10:44 Rebaseline edited by jamesr@google.com
(diff)
10:40 Changeset [94962] by commit-queue@webkit.org
  • 7 edits
    2 adds in trunk

Implement a HashChangeEvent constructor for JSC
https://bugs.webkit.org/show_bug.cgi?id=67924

Patch by Kentaro Hara <haraken@google.com> on 2011-09-12
Reviewed by Sam Weinig.

Source/WebCore:

The spec for the HashChangeEvent constructor is here:
http://www.whatwg.org/specs/web-apps/current-work/#hashchangeevent

Test: fast/events/constructors/hash-change-event-constructor.html

  • bindings/generic/EventConstructors.h: Added a definition for the HashChangeEvent constructor.
  • bindings/js/JSEventConstructors.cpp: Added #includes for HashChangeEvent.
  • dom/HashChangeEvent.h: Added a definition for HashChangeEventInit.

(WebCore::HashChangeEventInit::HashChangeEventInit):
(WebCore::HashChangeEvent::create):
(WebCore::HashChangeEvent::HashChangeEvent):

  • dom/HashChangeEvent.idl: Makes HashChangeEvent constructible.

LayoutTests:

hash-change-event-constructor.html checks the behavior of the HashChangeEvent constructor.

  • fast/events/constructors/hash-change-event-constructor-expected.txt: Added.
  • fast/events/constructors/hash-change-event-constructor.html: Added.
  • platform/chromium/test_expectations.txt: Skipped hash-change-event-constructor.html, since V8 does not yet have the HashChangeEvent constructor.
10:31 Changeset [94961] by reed@google.com
  • 2 edits in trunk/Source/WebCore

[skia] remove dead code, no functionality change
https://bugs.webkit.org/show_bug.cgi?id=67844

Reviewed by Kenneth Russell.

No new tests. just removing dead-code, existing tests apply

  • platform/graphics/chromium/FontChromiumWin.cpp:

(WebCore::Font::drawGlyphs):

10:02 Changeset [94960] by alexis.menard@openbossa.org
  • 2 edits in trunk/Source/WebKit2

[Qt]Style error fix.

Reviewed by Andreas Kling.

  • UIProcess/qt/QtWebPageProxy.cpp:
09:46 Changeset [94959] by japhet@chromium.org
  • 2 edits in trunk/LayoutTests

2011-09-12 Nate Chapin <japhet@chromium.org>

Add video-zoom-controls.html to chromium expectations
for leopard gpu.

  • platform/chromium/test_expectations.txt:
08:24 Changeset [94958] by pfeldman@chromium.org
  • 5 edits in trunk

Web Inspector: Runtime.callFunctionOn does not accept arguments that evaluate to false.
https://bugs.webkit.org/show_bug.cgi?id=67934

Reviewed by Tony Gentilcore.

Source/WebCore:

  • inspector/InjectedScriptSource.js:

LayoutTests:

  • inspector/runtime/runtime-setPropertyValue.html:
08:22 Changeset [94957] by pfeldman@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: event dividers do not update timeline boundaries.
https://bugs.webkit.org/show_bug.cgi?id=67932

  • inspector/front-end/NetworkPanel.js:

(WebInspector.NetworkLogView.prototype._onLoadEventFired):
(WebInspector.NetworkLogView.prototype._domContentLoadedEventFired):
(WebInspector.NetworkLogView.prototype.refresh):
(WebInspector.NetworkTimeCalculator.prototype.updateBoundariesForEventTime):

07:54 Changeset [94956] by kbalazs@webkit.org
  • 1 edit in trunk/Tools/ChangeLog

Oops. Missed the reviewer in my the previous commit.

07:20 Changeset [94955] by kbalazs@webkit.org
  • 2 edits in trunk/Tools

[Qt][WK2] WebKitTestRunner does not produce crash logs
https://bugs.webkit.org/show_bug.cgi?id=67714

Added a simple way of generating backtrace on crash
to the web process. The implementation is similar what
we have in DRT. It depends on GNU libc functionality
so it is only enabled where we are running in such an environment.

  • WebKitTestRunner/InjectedBundle/qt/InjectedBundleQt.cpp:

(WTR::printBacktrace):
(WTR::crashHandler):
(WTR::InjectedBundle::platformInitialize):

06:33 Changeset [94954] by abecsi@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[Qt] Build fails after r94920 with strict compiler
https://bugs.webkit.org/show_bug.cgi?id=67928

Reviewed by Csaba Osztrogonác.

  • wtf/RedBlackTree.h:

(WTF::RedBlackTree::insert): Remove dead variables updateStart and newSubTreeRoot.

04:09 Changeset [94953] by commit-queue@webkit.org
  • 5 edits in trunk

Implement a WebKitAnimationEvent constructor for V8
https://bugs.webkit.org/show_bug.cgi?id=67922

Patch by Kentaro Hara <haraken@google.com> on 2011-09-12
Reviewed by Adam Barth.

Source/WebCore:

Test: fast/events/constructors/webkit-animation-event-constructor.html

  • bindings/v8/custom/V8EventConstructors.cpp: Added the WebKitAnimationEvent constructor.
  • dom/WebKitAnimationEvent.idl: Added a 'V8CustomConstructor' attribute.

LayoutTests:

Enabled webkit-animation-event-constructor.html, since now V8 has a WebKitAnimationEvent constructor.

  • platform/chromium/test_expectations.txt:
04:03 Changeset [94952] by paroga@webkit.org
  • 4 edits in trunk/Source/JavaScriptCore

Unreviewed build fix after r94871.

  • runtime/InitializeThreading.cpp:

(JSC::initializeThreadingOnce):

  • wtf/FastMalloc.cpp:
  • wtf/RefCountedLeakCounter.h:
02:48 Changeset [94951] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Shrink CanvasGradient for builds without ENABLE(DASHBOARD_SUPPORT).
https://bugs.webkit.org/show_bug.cgi?id=67916

Patch by Andreas Kling <kling@webkit.org> on 2011-09-12
Reviewed by Kenneth Rohde Christiansen.

  • html/canvas/CanvasGradient.cpp:

(WebCore::CanvasGradient::CanvasGradient):
(WebCore::CanvasGradient::addColorStop):

  • html/canvas/CanvasGradient.h:
01:45 Changeset [94950] by zoltan@webkit.org
  • 2 edits in trunk/LayoutTests

[Qt][ARMv5] fast/events/constructors/progress-event-constructor.html is failing
https://bugs.webkit.org/show_bug.cgi?id=67927

Skip it.

  • platform/qt-arm/Skipped:
01:09 Changeset [94949] by ukai@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, update chromium test expectations.

  • platform/chromium/test_expectations.txt: add fast/events/constructors/progress-event-constructor.html
00:21 Changeset [94948] by ukai@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, update chromium test expectations.

  • platform/chromium/test_expectations.txt: perf/show-hide-table-rows.html slow to timeout
00:14 Changeset [94947] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Characters beyond U+10000 should be deleted by one pressing delete key.
https://bugs.webkit.org/show_bug.cgi?id=40351

Patch by Shinya Kawanaka <shinyak@google.com> on 2011-09-12
Reviewed by Kent Tamura.

Source/WebCore:

If a character is the trail part of unicode surrogate pair, the lead part of it
should also be deleted. Also, If in MacOSX, the deletion should honor Mac's behavior.

Test: editing/deleting/delete-surrogatepair.html

  • rendering/RenderText.cpp:

(WebCore::RenderText::previousOffsetForBackwardDeletion):

Added if-macro to support chromium on mac, and added trail part check for unicode character.

LayoutTests:

Added deletion tests.

  • editing/deleting/delete-surrogatepair-expected.txt: Added.
  • editing/deleting/delete-surrogatepair.html: Added.

09/11/11:

22:46 Changeset [94946] by hayato@chromium.org
  • 8 edits in trunk

Implement a ProgressEvent constructor for V8
https://bugs.webkit.org/show_bug.cgi?id=67800

Patch by Kentaro Hara <haraken@google.com> on 2011-09-11
Reviewed by Sam Weinig.

Source/WebCore:

Test: fast/events/constructors/progress-event-constructor.html

  • bindings/js/JSDictionary.cpp:

(WebCore::JSDictionary::convertValue): Replaced UnsignedLongLongMax with std::numeric_limits<unsigned long long>::max().

  • bindings/v8/OptionsObject.cpp:

(WebCore::OptionsObject::getKeyValue): Returns an unsigned long long value corresponding to a given key. Spec: http://www.w3.org/TR/WebIDL/#es-unsigned-long-long

  • bindings/v8/OptionsObject.h:
  • bindings/v8/custom/V8EventConstructors.cpp: Added the ProgressEvent constructor.
  • dom/ProgressEvent.idl: Added a 'V8CustomConstructor' attribute.

LayoutTests:

Enabled fast/events/constructors/progress-event-constructor.html

  • platform/chromium/test_expectations.txt:
22:26 Changeset [94945] by ukai@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, update chromium test expectations.

  • platform/chromium/test_expectations.txt: slow perf/show-hide-table-rows.html
21:20 Changeset [94944] by ukai@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, update chromium test expectations.

  • platform/chromium/test_expectations.txt: slow perf/document-contains.html
21:00 Changeset [94943] by ukai@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, update chromium test expectations.

  • platform/chromium/test_expectations.txt: add svg/custom/simple-text-double-shadow.svg
20:42 Changeset [94942] by fpizlo@apple.com
  • 16 edits in trunk/Source/JavaScriptCore

DFGNode.h has macros that indicate the enabling of a feature, but
they do not use the ENABLE() idiom.
https://bugs.webkit.org/show_bug.cgi?id=67907

Reviewed by Oliver Hunt.

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::stronglyPredict):
(JSC::DFG::ByteCodeParser::parse):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::predictArgumentTypes):

  • dfg/DFGJITCodeGenerator.cpp:
  • dfg/DFGJITCodeGenerator.h:
  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::fillInt32ToInteger):
(JSC::DFG::JITCompiler::jumpFromSpeculativeToNonSpeculative):
(JSC::DFG::JITCompiler::compileBody):
(JSC::DFG::JITCompiler::link):

  • dfg/DFGJITCompiler.h:
  • dfg/DFGNode.h:
  • dfg/DFGNonSpeculativeJIT.cpp:

(JSC::DFG::NonSpeculativeJIT::compile):

  • dfg/DFGOperations.cpp:
  • dfg/DFGOperations.h:
  • dfg/DFGPropagator.cpp:

(JSC::DFG::Propagator::fixpoint):
(JSC::DFG::Propagator::propagateNode):
(JSC::DFG::Propagator::propagateForward):
(JSC::DFG::Propagator::propagateBackward):
(JSC::DFG::propagate):

  • dfg/DFGScoreBoard.h:
  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::terminateSpeculativeExecution):

  • jit/JIT.cpp:

(JSC::JIT::privateCompile):

20:34 Changeset [94941] by koz@chromium.org
  • 6 edits
    14 moves
    34 adds
    28 deletes in trunk/LayoutTests

Rebaseline for bug 65583 (path based border radius drawing on skia) part 3
https://bugs.webkit.org/show_bug.cgi?id=67830

Patch by Ben Wells <benwells@chromium.org> on 2011-09-11
Reviewed by Kenneth Russell.

  • fast/borders/: 13 changes
  • fast/frames/iframe-scaling-with-scroll-expected.txt: Renamed from LayoutTests/platform/gtk/fast/frames/iframe-scaling-with-scroll-expected.txt.
  • platform/chromium-linux/fast/: 18 changes
  • platform/chromium-win/fast/: 21 changes
  • platform/chromium/test_expectations.txt:
  • platform/mac/fast/: 13 removals
  • platform/qt/fast/: 14 removals
20:34 Changeset [94940] by mrowe@apple.com
  • 3 edits in trunk/Source/WebKit2

<rdar://problem/9878268> Pressing caps lock after closing a showModalDialog window results in WebProcess exiting

It's incorrect to try and use -[NSApplication run] to run nested runloops as it is not possible to
interrupt a nested invocation of -run without also causing outer invocations to exit after processing
their next event. We can avoid this issue by using -[NSApplication run] for the outermost invocation
of the main runloop, while using CFRunLoopRun for any nested invocations.

Reviewed by Anders Carlsson.

  • Platform/RunLoop.h:
  • Platform/mac/RunLoopMac.mm:

(RunLoop::RunLoop): Initialize the nesting level to 0.
(RunLoop::run): Bump the nesting level, and only use -[NSApplication run] for the outermost invocation of the
runloop. We also switch from -[NSRunloop run] to CFRunLoopRun as the former will only exit when it has no sources
left to process, while CFRunLoopRun will return immediately after CFRunLoopStop is called on it.
(RunLoop::stop): Only go down the NSApp path for the outermost invocation of the runloop.

20:31 Changeset [94939] by ukai@chromium.org
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed build fix for chromium/mac & clang.

Fix the macro redefinition error by r94927, because chromium set
ENABLE_JSC_MULTIPLE_THREADS=0 in WebKit/chromium/features.gypi and
it is not PLATFORM(QT).

../../JavaScriptCore/wtf/Platform.h:512:9: error: 'ENABLE_JSC_MULTIPLE_THREADS' macro redefined [-Werror]
#define ENABLE_JSC_MULTIPLE_THREADS 1
<command line>:43:9: note: previous definition is here
#define ENABLE_JSC_MULTIPLE_THREADS 0
1 error generated.

  • wtf/Platform.h:
20:25 Changeset [94938] by dglazkov@chromium.org
  • 4 edits
    2 adds in trunk

REGRESSION (r87351): toggling display of lots (thousands) of elements with display:none is very slow
https://bugs.webkit.org/show_bug.cgi?id=67581

Reviewed by Darin Adler.

Source/WebCore:

Test: perf/show-hide-table-rows.html

  • dom/NodeRenderingContext.cpp:

(WebCore::NodeRendererFactory::createRendererAndStyle): Moved style-creating code into createRendererIfNeeded, renamed

to createRenderer.

(WebCore::NodeRendererFactory::createRendererIfNeeded): Re-arrange code to avoid unnecessary creation of renderers.

LayoutTests:

  • perf/show-hide-table-rows-expected.txt: Added.
  • perf/show-hide-table-rows.html: Added.
20:21 Changeset [94937] by kbalazs@webkit.org
  • 2 edits in trunk/Source/WebKit2

[Qt][WK2] Qt layer should be hardened against C API versioning in the sense of build failures
https://bugs.webkit.org/show_bug.cgi?id=67094

Reviewed by Andreas Kling.

  • UIProcess/qt/QtWebPageProxy.cpp:

(QtWebPageProxy::init):

20:14 Changeset [94936] by jeremy@chromium.org
  • 7 edits in trunk/Source

[Chromium] Change OOP Font loading code to use CGFont*() APIs.
https://bugs.webkit.org/show_bug.cgi?id=66935

This change is necessary due a bug in ATSFontDeactivate() on 10.7.
See crbug.com/93191 for details.

Reviewed by Eric Seidel.

Source/WebCore:

No new tests - covered by existing tests.

  • platform/chromium/PlatformBridge.h:
  • platform/graphics/chromium/CrossProcessFontLoading.h:
  • platform/graphics/chromium/CrossProcessFontLoading.mm:

(WebCore::MemoryActivatedFont::create):
(WebCore::MemoryActivatedFont::MemoryActivatedFont):
(WebCore::MemoryActivatedFont::~MemoryActivatedFont):

Source/WebKit/chromium:

  • public/mac/WebSandboxSupport.h:
  • src/PlatformBridge.cpp:

(WebCore::PlatformBridge::loadFont):

19:22 Changeset [94935] by abarth@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] Add more key codes to WebInputEvent for Android
https://bugs.webkit.org/show_bug.cgi?id=67887

Reviewed by Darin Fisher.

  • src/WebInputEvent.cpp:

(WebKit::staticKeyIdentifiers):

19:19 Changeset [94934] by ukai@chromium.org
  • 2 edits
    1 delete in trunk/LayoutTests

Unreviewed, one more rebaseline for r94912

  • platform/chromium-cg-mac/fast/css/getComputedStyle/computed-style-expected.txt: Removed.
  • platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt:
18:52 Changeset [94933] by ukai@chromium.org
  • 4 edits
    2 deletes in trunk/LayoutTests

Unreviewed, update chromium test expectations and rebaselines for r94912

  • platform/chromium-cg-mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Removed.
  • platform/chromium-cg-mac/svg/css/getComputedStyle-basic-expected.txt: Removed.
  • platform/chromium-win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt:
  • platform/chromium/test_expectations.txt:
15:41 Changeset [94932] by weinig@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Remove JSCell::isPropertyNameIterator(), it is unused
https://bugs.webkit.org/show_bug.cgi?id=67911

Reviewed by Oliver Hunt.

  • runtime/JSCell.h:
  • runtime/JSPropertyNameIterator.h:
15:29 Changeset [94931] by weinig@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

De-virtualize JSCell::isAPIValueWrapper
https://bugs.webkit.org/show_bug.cgi?id=67909

Reviewed by Oliver Hunt.

  • runtime/JSAPIValueWrapper.h:

(JSC::JSAPIValueWrapper::createStructure):
Set the correct type on structure creation.

  • runtime/JSCell.h:

Remove virtual keyword and default implementation.

  • runtime/JSType.h:

Add type for APIValueWrapper. It must come after CompoundType since
the APIValueWrapper has children in need of marking.

  • runtime/Structure.h:

(JSC::JSCell::isAPIValueWrapper):
Implement predicate using type info.

14:45 Changeset [94930] by weinig@apple.com
  • 8 edits in trunk/Source/JavaScriptCore

De-virtualize JSCell::isGetterSetter, type information is available for it
https://bugs.webkit.org/show_bug.cgi?id=67902

Reviewed by Dan Bernstein.

  • runtime/GetterSetter.cpp:
  • runtime/GetterSetter.h:

Remove override of isGetterSetter.

  • runtime/JSCell.cpp:
  • runtime/JSCell.h:

De-virtualize and remove silly base implementation.

  • runtime/Structure.h:

(JSC::JSCell::isGetterSetter):
Use type info to determine getter-setter-hood.

14:11 Changeset [94929] by oliver@apple.com
  • 110 edits in trunk/Source

Remove support for anonymous storage from jsobjects
https://bugs.webkit.org/show_bug.cgi?id=67881

Reviewed by Sam Weinig.

Source/JavaScriptCore:

Remove all use of anonymous slots, essentially a mechanical change
in JavaScriptCore

  • API/JSCallbackConstructor.h:

(JSC::JSCallbackConstructor::createStructure):

  • API/JSCallbackFunction.h:

(JSC::JSCallbackFunction::createStructure):

  • API/JSCallbackObject.h:

(JSC::JSCallbackObject::createStructure):

(JSC::DebuggerActivation::createStructure):

  • heap/MarkStack.cpp:

(JSC::MarkStack::validateValue):

  • heap/MarkStack.h:
  • runtime/Arguments.h:

(JSC::Arguments::createStructure):

  • runtime/ArrayConstructor.h:

(JSC::ArrayConstructor::createStructure):

  • runtime/ArrayPrototype.cpp:

(JSC::ArrayPrototype::finishCreation):

  • runtime/ArrayPrototype.h:

(JSC::ArrayPrototype::createStructure):

  • runtime/BooleanObject.h:

(JSC::BooleanObject::createStructure):

  • runtime/BooleanPrototype.cpp:

(JSC::BooleanPrototype::BooleanPrototype):

  • runtime/BooleanPrototype.h:

(JSC::BooleanPrototype::createStructure):

  • runtime/DateConstructor.h:

(JSC::DateConstructor::createStructure):

  • runtime/DateInstance.h:

(JSC::DateInstance::createStructure):

  • runtime/DatePrototype.cpp:

(JSC::DatePrototype::DatePrototype):

  • runtime/DatePrototype.h:

(JSC::DatePrototype::createStructure):

  • runtime/ErrorInstance.h:

(JSC::ErrorInstance::createStructure):

  • runtime/ErrorPrototype.cpp:

(JSC::ErrorPrototype::finishCreation):

  • runtime/ErrorPrototype.h:

(JSC::ErrorPrototype::createStructure):

  • runtime/ExceptionHelpers.h:

(JSC::InterruptedExecutionError::createStructure):
(JSC::TerminatedExecutionError::createStructure):

  • runtime/Executable.h:

(JSC::ExecutableBase::createStructure):
(JSC::NativeExecutable::createStructure):
(JSC::EvalExecutable::createStructure):
(JSC::ProgramExecutable::createStructure):
(JSC::FunctionExecutable::createStructure):

  • runtime/FunctionPrototype.h:

(JSC::FunctionPrototype::createStructure):

  • runtime/GetterSetter.h:

(JSC::GetterSetter::createStructure):

  • runtime/InternalFunction.h:

(JSC::InternalFunction::createStructure):

  • runtime/JSAPIValueWrapper.h:

(JSC::JSAPIValueWrapper::createStructure):

  • runtime/JSActivation.h:

(JSC::JSActivation::createStructure):

  • runtime/JSArray.h:

(JSC::JSArray::createStructure):

  • runtime/JSByteArray.cpp:

(JSC::JSByteArray::createStructure):

  • runtime/JSCell.h:
  • runtime/JSFunction.h:

(JSC::JSFunction::createStructure):

  • runtime/JSGlobalObject.h:

(JSC::JSGlobalObject::finishCreation):
(JSC::JSGlobalObject::createStructure):

  • runtime/JSNotAnObject.h:

(JSC::JSNotAnObject::createStructure):

  • runtime/JSONObject.h:

(JSC::JSONObject::createStructure):

  • runtime/JSObject.h:

(JSC::JSObject::createStructure):
(JSC::JSNonFinalObject::createStructure):
(JSC::JSFinalObject::createStructure):

  • runtime/JSPropertyNameIterator.cpp:

(JSC::JSPropertyNameIterator::create):

  • runtime/JSPropertyNameIterator.h:

(JSC::JSPropertyNameIterator::createStructure):

  • runtime/JSStaticScopeObject.h:

(JSC::JSStaticScopeObject::createStructure):

  • runtime/JSString.h:

(JSC::RopeBuilder::createStructure):

  • runtime/JSVariableObject.h:

(JSC::JSVariableObject::createStructure):

  • runtime/JSWrapperObject.h:

(JSC::JSWrapperObject::createStructure):

  • runtime/MathObject.h:

(JSC::MathObject::createStructure):

  • runtime/NativeErrorConstructor.h:

(JSC::NativeErrorConstructor::createStructure):

  • runtime/NumberConstructor.h:

(JSC::NumberConstructor::createStructure):

  • runtime/NumberObject.h:

(JSC::NumberObject::createStructure):

  • runtime/NumberPrototype.cpp:

(JSC::NumberPrototype::NumberPrototype):

  • runtime/NumberPrototype.h:

(JSC::NumberPrototype::createStructure):

  • runtime/ObjectConstructor.h:

(JSC::ObjectConstructor::createStructure):

  • runtime/ObjectPrototype.cpp:

(JSC::ObjectPrototype::finishCreation):

  • runtime/ObjectPrototype.h:

(JSC::ObjectPrototype::createStructure):

  • runtime/RegExp.h:

(JSC::RegExp::createStructure):

  • runtime/RegExpConstructor.h:

(JSC::RegExpConstructor::createStructure):

  • runtime/RegExpObject.h:

(JSC::RegExpObject::createStructure):

  • runtime/RegExpPrototype.h:

(JSC::RegExpPrototype::createStructure):

  • runtime/ScopeChain.h:

(JSC::ScopeChainNode::createStructure):

  • runtime/StrictEvalActivation.h:

(JSC::StrictEvalActivation::createStructure):

  • runtime/StringConstructor.h:

(JSC::StringConstructor::createStructure):

  • runtime/StringObject.h:

(JSC::StringObject::createStructure):

  • runtime/StringObjectThatMasqueradesAsUndefined.h:

(JSC::StringObjectThatMasqueradesAsUndefined::createStructure):

  • runtime/StringPrototype.cpp:

(JSC::StringPrototype::StringPrototype):

  • runtime/StringPrototype.h:

(JSC::StringPrototype::createStructure):

  • runtime/Structure.cpp:

(JSC::Structure::Structure):
(JSC::Structure::materializePropertyMap):
(JSC::Structure::addPropertyTransitionToExistingStructure):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::removePropertyTransition):
(JSC::Structure::changePrototypeTransition):
(JSC::Structure::despecifyFunctionTransition):
(JSC::Structure::getterSetterTransition):
(JSC::Structure::toDictionaryTransition):
(JSC::Structure::preventExtensionsTransition):
(JSC::Structure::flattenDictionaryStructure):
(JSC::Structure::addPropertyWithoutTransition):
(JSC::Structure::removePropertyWithoutTransition):
(JSC::Structure::get):
(JSC::Structure::putSpecificValue):
(JSC::Structure::remove):
(JSC::Structure::checkConsistency):

  • runtime/Structure.h:

(JSC::Structure::create):
(JSC::Structure::propertyStorageSize):
(JSC::Structure::get):

  • runtime/StructureChain.h:

(JSC::StructureChain::createStructure):

Source/JavaScriptGlue:

Don't need an anonymous slot count anymore

  • UserObjectImp.h:

(UserObjectImp::createStructure):

Source/WebCore:

Remove all use of anonymous slots, this required modifying
bindings generation to add member variables for cached attributes,
and override visitChildren with the necessary logic to mark those
new members.

I added bindings generation tests for these values.

  • bindings/js/JSAudioConstructor.h:

(WebCore::JSAudioConstructor::createStructure):

  • bindings/js/JSDOMBinding.h:

(WebCore::DOMConstructorObject::createStructure):

  • bindings/js/JSDOMGlobalObject.h:

(WebCore::JSDOMGlobalObject::createStructure):

  • bindings/js/JSDOMWindowBase.h:

(WebCore::JSDOMWindowBase::createStructure):

  • bindings/js/JSDOMWindowShell.h:

(WebCore::JSDOMWindowShell::createStructure):

  • bindings/js/JSDOMWrapper.h:

(WebCore::JSDOMWrapper::createStructure):

  • bindings/js/JSImageConstructor.h:

(WebCore::JSImageConstructor::createStructure):

  • bindings/js/JSMessageEventCustom.cpp:

(WebCore::JSMessageEvent::data):
(WebCore::JSMessageEvent::initMessageEvent):

  • bindings/js/JSOptionConstructor.h:

(WebCore::JSOptionConstructor::createStructure):

  • bindings/js/JSWorkerContextBase.h:

(WebCore::JSWorkerContextBase::createStructure):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader):
(GenerateImplementation):
(GenerateConstructorDeclaration):

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

(WebCore::JSTestInterfaceConstructor::createStructure):

  • bindings/scripts/test/JS/JSTestInterface.h:

(WebCore::JSTestInterface::createStructure):
(WebCore::JSTestInterfacePrototype::createStructure):

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

(WebCore::JSTestMediaQueryListListenerConstructor::createStructure):

  • bindings/scripts/test/JS/JSTestMediaQueryListListener.h:

(WebCore::JSTestMediaQueryListListener::createStructure):
(WebCore::JSTestMediaQueryListListenerPrototype::createStructure):

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

(WebCore::JSTestObjConstructor::createStructure):
(WebCore::jsTestObjCachedAttribute1):
(WebCore::jsTestObjCachedAttribute2):
(WebCore::JSTestObj::visitChildren):

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

(WebCore::JSTestObj::createStructure):
(WebCore::JSTestObjPrototype::createStructure):

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

(WebCore::JSTestSerializedScriptValueInterfaceConstructor::createStructure):

  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:

(WebCore::JSTestSerializedScriptValueInterface::createStructure):
(WebCore::JSTestSerializedScriptValueInterfacePrototype::createStructure):

  • bindings/scripts/test/TestObj.idl:
  • bindings/scripts/test/V8/V8TestObj.cpp:

(WebCore::TestObjInternal::cachedAttribute1AttrGetter):
(WebCore::TestObjInternal::cachedAttribute2AttrGetter):

  • bridge/c/CRuntimeObject.h:

(JSC::Bindings::CRuntimeObject::createStructure):

  • bridge/c/c_instance.cpp:

(JSC::Bindings::CRuntimeMethod::createStructure):

  • bridge/jni/jsc/JavaInstanceJSC.cpp:

(JavaRuntimeMethod::createStructure):

  • bridge/jni/jsc/JavaRuntimeObject.h:

(JSC::Bindings::JavaRuntimeObject::createStructure):

  • bridge/objc/ObjCRuntimeObject.h:

(JSC::Bindings::ObjCRuntimeObject::createStructure):

  • bridge/objc/objc_instance.mm:

(ObjCRuntimeMethod::createStructure):

  • bridge/objc/objc_runtime.h:

(JSC::Bindings::ObjcFallbackObjectImp::createStructure):

  • bridge/runtime_array.h:

(JSC::RuntimeArray::createStructure):

  • bridge/runtime_method.h:

(JSC::RuntimeMethod::createStructure):

  • bridge/runtime_object.h:

(JSC::Bindings::RuntimeObject::createStructure):

Source/WebKit/mac:

Remove the use of AnonymousSlotCount

  • Plugins/Hosted/ProxyInstance.mm:

(WebKit::ProxyRuntimeMethod::createStructure):

  • Plugins/Hosted/ProxyRuntimeObject.h:

(WebKit::ProxyRuntimeObject::createStructure):

Source/WebKit2:

Remove the use of AnonymousSlotCount.

  • WebProcess/Plugins/Netscape/JSNPMethod.h:

(WebKit::JSNPMethod::createStructure):

  • WebProcess/Plugins/Netscape/JSNPObject.h:

(WebKit::JSNPObject::createStructure):

13:49 Changeset [94928] by mitz@apple.com
  • 4 edits in trunk/Source/WebCore/svg

Removed the svn:executable property from some source files

11:34 Changeset [94927] by ossy@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[Qt] Win32 build broken due to MachineStackMarker.cpp/.o failing to link against pthreads library
https://bugs.webkit.org/show_bug.cgi?id=67864

Qt Win32 is not pthread compatible and cannot participate in multithreaded JSC or it fails to build.

Patch by Jarred Nicholls <jarred@sencha.com> on 2011-09-11
Reviewed by Csaba Osztrogonác.

  • wtf/Platform.h:
10:21 Changeset [94926] by mrobinson@webkit.org
  • 3 edits
    2 deletes in trunk/LayoutTests

Remove two platform-specific results for GTK+ that no longer apply and
rebaseline one more test.

  • platform/gtk/fast/multicol/inherit-column-values-expected.txt: Removed.
  • platform/gtk/fast/multicol/initial-column-values-expected.txt: Removed.
  • svg/W3C-SVG-1.1-SE/filters-image-05-f-expected.png: Rebaselined.
  • svg/W3C-SVG-1.1-SE/filters-image-05-f-expected.txt: Ditto.
09:56 Changeset [94925] by mrobinson@webkit.org
  • 2 edits in trunk/LayoutTests

Unskip two tests that should be passing now that 67383 is resolved.

  • platform/gtk/Skipped: Unskip passing tests.
00:27 Changeset [94924] by ossy@webkit.org
  • 2 edits in trunk/LayoutTests

[Qt][Mac] Unreviewed gardening. Paint the Qt-Mac bot green.

  • platform/qt-mac/Skipped: Skip new failing tests.
00:13 Changeset [94923] by fpizlo@apple.com
  • 2 edits in trunk/Tools

Added my IRC nick to the committers file.

  • Scripts/webkitpy/common/config/committers.py:
00:08 Changeset [94922] by ossy@webkit.org
  • 5 edits in trunk/Source/JavaScriptCore

ARM and MIPS assemblers still refer to executable pools.
https://bugs.webkit.org/show_bug.cgi?id=67903

Patch by Filip Pizlo <fpizlo@apple.com> on 2011-09-11
Reviewed by Csaba Osztrogonác.

  • assembler/ARMAssembler.cpp:

(JSC::ARMAssembler::executableCopy):

  • assembler/ARMAssembler.h:
  • assembler/AssemblerBufferWithConstantPool.h:
  • assembler/MIPSAssembler.h:

(JSC::MIPSAssembler::executableCopy):

00:06 Changeset [94921] by ossy@webkit.org
  • 1 edit
    16 adds in trunk/LayoutTests

[Qt] Unreviewed gardening. Add Qt specific expected results for new passing tests.

  • platform/qt/fast/borders/block-mask-overlay-image-outset-expected.png: Added.
  • platform/qt/fast/borders/block-mask-overlay-image-outset-expected.txt: Added.
  • platform/qt/fast/borders/border-image-outset-expected.png: Added.
  • platform/qt/fast/borders/border-image-outset-expected.txt: Added.
  • platform/qt/fast/borders/border-image-outset-in-shorthand-expected.png: Added.
  • platform/qt/fast/borders/border-image-outset-in-shorthand-expected.txt: Added.
  • platform/qt/fast/borders/border-image-outset-split-inline-expected.png: Added.
  • platform/qt/fast/borders/border-image-outset-split-inline-expected.txt: Added.
  • platform/qt/fast/borders/border-image-outset-split-inline-vertical-lr-expected.png: Added.
  • platform/qt/fast/borders/border-image-outset-split-inline-vertical-lr-expected.txt: Added.
  • platform/qt/fast/borders/inline-mask-overlay-image-outset-expected.png: Added.
  • platform/qt/fast/borders/inline-mask-overlay-image-outset-expected.txt: Added.
  • platform/qt/fast/borders/inline-mask-overlay-image-outset-vertical-rl-expected.png: Added.
  • platform/qt/fast/borders/inline-mask-overlay-image-outset-vertical-rl-expected.txt: Added.
  • platform/qt/fast/reflections/reflection-masks-outset-expected.png: Added.
  • platform/qt/fast/reflections/reflection-masks-outset-expected.txt: Added.

09/10/11:

22:49 Changeset [94920] by fpizlo@apple.com
  • 41 edits
    8 adds in trunk

The executable allocator makes it difficult to free individual
chunks of executable memory
https://bugs.webkit.org/show_bug.cgi?id=66363

Reviewed by Oliver Hunt.

Introduced a best-fit, balanced-tree based allocator. The allocator
required a balanced tree that does not allocate memory and that
permits the removal of individual nodes directly (as opposed to by
key); neither AVLTree nor WebCore's PODRedBlackTree supported this.
Changed all references to executable code to use a reference counted
handle.

Source/JavaScriptCore:

(JSC::AssemblerBuffer::executableCopy):

  • assembler/LinkBuffer.h:

(JSC::LinkBuffer::LinkBuffer):
(JSC::LinkBuffer::finalizeCode):
(JSC::LinkBuffer::linkCode):

  • assembler/MacroAssemblerCodeRef.h:

(JSC::MacroAssemblerCodeRef::MacroAssemblerCodeRef):
(JSC::MacroAssemblerCodeRef::createSelfManagedCodeRef):
(JSC::MacroAssemblerCodeRef::executableMemory):
(JSC::MacroAssemblerCodeRef::code):
(JSC::MacroAssemblerCodeRef::size):
(JSC::MacroAssemblerCodeRef::operator!):

  • assembler/X86Assembler.h:

(JSC::X86Assembler::executableCopy):
(JSC::X86Assembler::X86InstructionFormatter::executableCopy):

  • bytecode/CodeBlock.h:
  • bytecode/Instruction.h:
  • bytecode/StructureStubInfo.h:
  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::compile):
(JSC::DFG::JITCompiler::compileFunction):

  • dfg/DFGRepatch.cpp:

(JSC::DFG::generateProtoChainAccessStub):
(JSC::DFG::tryCacheGetByID):
(JSC::DFG::tryBuildGetByIDList):
(JSC::DFG::tryBuildGetByIDProtoList):
(JSC::DFG::tryCachePutByID):

  • jit/ExecutableAllocator.cpp:

(JSC::ExecutableAllocator::initializeAllocator):
(JSC::ExecutableAllocator::ExecutableAllocator):
(JSC::ExecutableAllocator::allocate):
(JSC::ExecutableAllocator::committedByteCount):
(JSC::ExecutableAllocator::dumpProfile):

  • jit/ExecutableAllocator.h:

(JSC::ExecutableAllocator::dumpProfile):

  • jit/ExecutableAllocatorFixedVMPool.cpp:

(JSC::ExecutableAllocator::initializeAllocator):
(JSC::ExecutableAllocator::ExecutableAllocator):
(JSC::ExecutableAllocator::isValid):
(JSC::ExecutableAllocator::underMemoryPressure):
(JSC::ExecutableAllocator::allocate):
(JSC::ExecutableAllocator::committedByteCount):
(JSC::ExecutableAllocator::dumpProfile):

  • jit/JIT.cpp:

(JSC::JIT::privateCompile):

  • jit/JIT.h:

(JSC::JIT::compileCTIMachineTrampolines):
(JSC::JIT::compileCTINativeCall):

  • jit/JITCode.h:

(JSC::JITCode::operator !):
(JSC::JITCode::addressForCall):
(JSC::JITCode::offsetOf):
(JSC::JITCode::execute):
(JSC::JITCode::start):
(JSC::JITCode::size):
(JSC::JITCode::getExecutableMemory):
(JSC::JITCode::HostFunction):
(JSC::JITCode::JITCode):

  • jit/JITOpcodes.cpp:

(JSC::JIT::privateCompileCTIMachineTrampolines):
(JSC::JIT::privateCompileCTINativeCall):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::privateCompileCTIMachineTrampolines):
(JSC::JIT::privateCompileCTINativeCall):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::stringGetByValStubGenerator):
(JSC::JIT::emitSlow_op_get_by_val):
(JSC::JIT::privateCompilePutByIdTransition):
(JSC::JIT::privateCompilePatchGetArrayLength):
(JSC::JIT::privateCompileGetByIdProto):
(JSC::JIT::privateCompileGetByIdSelfList):
(JSC::JIT::privateCompileGetByIdProtoList):
(JSC::JIT::privateCompileGetByIdChainList):
(JSC::JIT::privateCompileGetByIdChain):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::stringGetByValStubGenerator):
(JSC::JIT::emitSlow_op_get_by_val):
(JSC::JIT::privateCompilePutByIdTransition):
(JSC::JIT::privateCompilePatchGetArrayLength):
(JSC::JIT::privateCompileGetByIdProto):
(JSC::JIT::privateCompileGetByIdSelfList):
(JSC::JIT::privateCompileGetByIdProtoList):
(JSC::JIT::privateCompileGetByIdChainList):
(JSC::JIT::privateCompileGetByIdChain):

  • jit/JITStubs.cpp:

(JSC::JITThunks::JITThunks):
(JSC::DEFINE_STUB_FUNCTION):
(JSC::getPolymorphicAccessStructureListSlot):
(JSC::JITThunks::ctiStub):
(JSC::JITThunks::hostFunctionStub):

  • jit/JITStubs.h:
  • jit/SpecializedThunkJIT.h:

(JSC::SpecializedThunkJIT::SpecializedThunkJIT):
(JSC::SpecializedThunkJIT::finalize):

  • jit/ThunkGenerators.cpp:

(JSC::charCodeAtThunkGenerator):
(JSC::charAtThunkGenerator):
(JSC::fromCharCodeThunkGenerator):
(JSC::sqrtThunkGenerator):
(JSC::floorThunkGenerator):
(JSC::ceilThunkGenerator):
(JSC::roundThunkGenerator):
(JSC::expThunkGenerator):
(JSC::logThunkGenerator):
(JSC::absThunkGenerator):
(JSC::powThunkGenerator):

  • jit/ThunkGenerators.h:
  • runtime/Executable.h:

(JSC::NativeExecutable::create):

  • runtime/InitializeThreading.cpp:

(JSC::initializeThreadingOnce):

  • runtime/JSGlobalData.cpp:

(JSC::JSGlobalData::JSGlobalData):
(JSC::JSGlobalData::dumpSampleData):

  • runtime/JSGlobalData.h:

(JSC::JSGlobalData::getCTIStub):

  • wtf/CMakeLists.txt:
  • wtf/MetaAllocator.cpp: Added.

(WTF::MetaAllocatorHandle::MetaAllocatorHandle):
(WTF::MetaAllocatorHandle::~MetaAllocatorHandle):
(WTF::MetaAllocatorHandle::shrink):
(WTF::MetaAllocator::MetaAllocator):
(WTF::MetaAllocator::allocate):
(WTF::MetaAllocator::currentStatistics):
(WTF::MetaAllocator::findAndRemoveFreeSpace):
(WTF::MetaAllocator::addFreeSpaceFromReleasedHandle):
(WTF::MetaAllocator::addFreshFreeSpace):
(WTF::MetaAllocator::debugFreeSpaceSize):
(WTF::MetaAllocator::addFreeSpace):
(WTF::MetaAllocator::incrementPageOccupancy):
(WTF::MetaAllocator::decrementPageOccupancy):
(WTF::MetaAllocator::roundUp):
(WTF::MetaAllocator::allocFreeSpaceNode):
(WTF::MetaAllocator::freeFreeSpaceNode):
(WTF::MetaAllocator::dumpProfile):

  • wtf/MetaAllocator.h: Added.

(WTF::MetaAllocator::bytesAllocated):
(WTF::MetaAllocator::bytesReserved):
(WTF::MetaAllocator::bytesCommitted):
(WTF::MetaAllocator::dumpProfile):
(WTF::MetaAllocator::~MetaAllocator):

  • wtf/MetaAllocatorHandle.h: Added.
  • wtf/RedBlackTree.h: Added.

(WTF::RedBlackTree::Node::Node):
(WTF::RedBlackTree::Node::successor):
(WTF::RedBlackTree::Node::predecessor):
(WTF::RedBlackTree::Node::reset):
(WTF::RedBlackTree::Node::parent):
(WTF::RedBlackTree::Node::setParent):
(WTF::RedBlackTree::Node::left):
(WTF::RedBlackTree::Node::setLeft):
(WTF::RedBlackTree::Node::right):
(WTF::RedBlackTree::Node::setRight):
(WTF::RedBlackTree::Node::color):
(WTF::RedBlackTree::Node::setColor):
(WTF::RedBlackTree::RedBlackTree):
(WTF::RedBlackTree::insert):
(WTF::RedBlackTree::remove):
(WTF::RedBlackTree::findExact):
(WTF::RedBlackTree::findLeastGreaterThanOrEqual):
(WTF::RedBlackTree::findGreatestLessThanOrEqual):
(WTF::RedBlackTree::first):
(WTF::RedBlackTree::last):
(WTF::RedBlackTree::size):
(WTF::RedBlackTree::isEmpty):
(WTF::RedBlackTree::treeMinimum):
(WTF::RedBlackTree::treeMaximum):
(WTF::RedBlackTree::treeInsert):
(WTF::RedBlackTree::leftRotate):
(WTF::RedBlackTree::rightRotate):
(WTF::RedBlackTree::removeFixup):

  • wtf/wtf.pri:
  • yarr/YarrJIT.cpp:

(JSC::Yarr::YarrGenerator::compile):

  • yarr/YarrJIT.h:

(JSC::Yarr::YarrCodeBlock::execute):
(JSC::Yarr::YarrCodeBlock::getAddr):

Source/JavaScriptGlue:

  • ForwardingHeaders/wtf/MetaAllocatorHandle.h: Added.

Source/WebCore:

No new layout tests because behavior is not changed. New API unit
tests:
Tests/WTF/RedBlackTree.cpp
Tests/WTF/MetaAllocator.cpp

  • ForwardingHeaders/wtf/MetaAllocatorHandle.h: Added.

Tools:

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WTF/MetaAllocator.cpp: Added.

(TestWebKitAPI::TEST_F):

  • TestWebKitAPI/Tests/WTF/RedBlackTree.cpp: Added.

(TestWebKitAPI::Pair::findExact):
(TestWebKitAPI::Pair::remove):
(TestWebKitAPI::Pair::findLeastGreaterThanOrEqual):
(TestWebKitAPI::Pair::assertFoundAndRemove):
(TestWebKitAPI::Pair::assertEqual):
(TestWebKitAPI::Pair::assertSameValuesForKey):
(TestWebKitAPI::Pair::testDriver):
(TestWebKitAPI::TEST_F):

22:24 Changeset [94919] by weinig@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

Remove JSC::isZombie() function, it did nothing and was called by no-one.
https://bugs.webkit.org/show_bug.cgi?id=67901

Reviewed by Andy Estes.

22:16 Changeset [94918] by weinig@apple.com
  • 10 edits in trunk/Source

Add isInterruptedExecutionException and isTerminatedExecutionException predicates
https://bugs.webkit.org/show_bug.cgi?id=67892

Reviewed by Andy "First Time Reviewer" Estes.

../JavaScriptCore:

Add symbols.

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::throwException):
Use new predicates.

  • runtime/ExceptionHelpers.cpp:

(JSC::createInterruptedExecutionException):
(JSC::isInterruptedExecutionException):
(JSC::createTerminatedExecutionException):
(JSC::isTerminatedExecutionException):

  • runtime/ExceptionHelpers.h:

(JSC::InterruptedExecutionError::InterruptedExecutionError):
Add predicates.

../WebCore:

  • bindings/js/JSDOMBinding.cpp:

(WebCore::reportException):

  • bindings/js/JSEventListener.cpp:

(WebCore::JSEventListener::handleEvent):

  • bindings/js/WorkerScriptController.cpp:

(WebCore::WorkerScriptController::evaluate):
Use the new predicates instead of probing the ClassInfo directly.

22:16 Changeset [94917] by aestes@apple.com
  • 2 edits in trunk/Tools

Move myself from committers_unable_to_review to reviewers_list.

  • Scripts/webkitpy/common/config/committers.py:
17:52 Changeset [94916] by kevino@webkit.org
  • 5 edits in trunk

[wx] Unreviewed build fix. MSW build fixes.

17:17 Changeset [94915] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Skip fast/images/support-broken-image-delegate.html temporarily on Mac.
The failure is tracked by the bug 67898.

  • platform/mac/Skipped:
14:23 Changeset [94914] by fpizlo@apple.com
  • 7 edits in trunk/Source/JavaScriptCore

DFG JIT completely undoes speculative compilation even in the case of
a partial static speculation failure
https://bugs.webkit.org/show_bug.cgi?id=67798

Reviewed by Geoffrey Garen.

This is a regression with static speculation, so it is turned off by
default. But it is a necessary prerequisite for further work on
dynamic speculation.

  • dfg/DFGJITCodeGenerator.cpp:

(JSC::DFG::JITCodeGenerator::clearGenerationInfo):

  • dfg/DFGJITCodeGenerator.h:
  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::fillSpeculateIntInternal):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::terminateSpeculativeExecution):

14:14 Changeset [94913] by hyatt@apple.com
  • 1 delete in trunk/LayoutTests/fast/borders/block-mask-overlay-image.html~

Remove emacs backup file that got committed by mistake.

14:08 Changeset [94912] by hyatt@apple.com
  • 30 edits
    25 adds in trunk

https://bugs.webkit.org/show_bug.cgi?id=67861

Implement border-image-outset (and the mask equivalents).

Reviewed by Beth Dakin.

Source/WebCore:

Added new tests in fast/borders and fast/reflections.

  • css/CSSBorderImageValue.cpp:

(WebCore::CSSBorderImageValue::CSSBorderImageValue):
(WebCore::CSSBorderImageValue::cssText):

  • css/CSSBorderImageValue.h:

(WebCore::CSSBorderImageValue::create):
Add m_outset field to CSSBorderImageValue and teach it how to dump the field as
part of cssText().

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::valueForNinePieceImageQuad):
(WebCore::valueForNinePieceImage):
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
Add support for border-image-outset and -webkit-mask-box-image-outset. Refactor
the code so that border-image-width and border-image-outset use a common
function.

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):
(WebCore::BorderImageParseContext::BorderImageParseContext):
(WebCore::BorderImageParseContext::allowOutset):
(WebCore::BorderImageParseContext::commitSlash):
(WebCore::BorderImageParseContext::commitBorderWidth):
(WebCore::BorderImageParseContext::commitBorderOutset):
(WebCore::BorderImageParseContext::commitRepeat):
(WebCore::BorderImageParseContext::commitBorderImage):
(WebCore::CSSParser::parseBorderImage):
Teach the border image parsing code about outsets. This code will soon be
replaced by true shorthand parsing code, but for now keep it working and add
outset support to it.

(WebCore::BorderImageQuadParseContext::BorderImageQuadParseContext):
(WebCore::BorderImageQuadParseContext::commitBorderImageQuad):
(WebCore::CSSParser::parseBorderImageQuad):
(WebCore::CSSParser::parseBorderImageWidth):
(WebCore::CSSParser::parseBorderImageOutset):

  • css/CSSParser.h:

Refactor the border-image-width code so that it can be shared by border-image-outset, since
they are extremely similar.

  • css/CSSPropertyNames.in:

Add the new properties.

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::applyProperty):
(WebCore::CSSStyleSelector::mapNinePieceImage):
(WebCore::CSSStyleSelector::mapNinePieceImageQuad):
(WebCore::CSSStyleSelector::loadPendingImages):

  • css/CSSStyleSelector.h:

Refactor the code so that width/outset share common mapping functions. Add support for outset.

  • rendering/InlineFlowBox.cpp:

(WebCore::InlineFlowBox::addToLine):
(WebCore::InlineFlowBox::addBoxShadowVisualOverflow):
(WebCore::InlineFlowBox::addBorderOutsetVisualOverflow):
(WebCore::InlineFlowBox::computeOverflow):
Add new functions for computing the visual overflow caused by border outsets. Fix bugs in
the shadow overflow code as well.

(WebCore::clipRectForNinePieceImageStrip):
(WebCore::InlineFlowBox::paintBoxDecorations):
(WebCore::InlineFlowBox::paintMask):

  • rendering/InlineFlowBox.h:

Make sure the clip rect pushed when painting one piece of a split inline strip is expanded to
include the border and mask outsets. Always include the block direction expansion, and conditionally
include the inline direction expansion based off includeLogicalLeftEdge()/includeLogicalRightEdge().
clipRectForNinePieceImageStrip is a common function shared by masks and border images that does this
work.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::computeOverflow):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::maskClipRect):
(WebCore::RenderBox::addBoxShadowAndBorderOverflow):

  • rendering/RenderBox.h:

Rename addShadowOverflow to addBoxShadowAndBorderOverflow. Have it compute both shadow and border image
outset overflow. Fix bugs with shadow overflow computation.

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintNinePieceImage):
Change painting to apply the outsets to inflate the border image drawing area.

  • rendering/RenderEmbeddedObject.cpp:

(WebCore::RenderEmbeddedObject::layout):

  • rendering/RenderIFrame.cpp:

(WebCore::RenderIFrame::layout):
Patched to call the renamed addBoxShadowAndBorderOverflow function instead of addShadowOverflow.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::calculateRects):
Patched to no longer apply box-shadow to overflow clip areas when inflating the intersection area for the
layer bounds. Instead we generically apply all visual overflow so that border image outsets will also be
included. This fixes https://bugs.webkit.org/show_bug.cgi?id=37467.

  • rendering/RenderReplaced.cpp:

(WebCore::RenderReplaced::layout):
Patched to call the renamed addBoxShadowAndBorderOverflow function instead of addShadowOverflow.

  • rendering/style/NinePieceImage.cpp:

(WebCore::NinePieceImage::operator==):

  • rendering/style/NinePieceImage.h:

(WebCore::NinePieceImage::NinePieceImage):
(WebCore::NinePieceImage::outset):
(WebCore::NinePieceImage::setOutset):
(WebCore::NinePieceImage::computeOutset):
(WebCore::NinePieceImage::copyOutsetFrom):
Add the outset field to NinePieceImage along with some helpers for manipulating outsets.

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::getImageOutsets):
(WebCore::RenderStyle::getImageHorizontalOutsets):
(WebCore::RenderStyle::getImageVerticalOutsets):

  • rendering/style/RenderStyle.h:

(WebCore::InheritedFlags::hasBorderImageOutsets):
(WebCore::InheritedFlags::getBorderImageOutsets):
(WebCore::InheritedFlags::getBorderImageHorizontalOutsets):
(WebCore::InheritedFlags::getBorderImageVerticalOutsets):
(WebCore::InheritedFlags::getBorderImageInlineDirectionOutsets):
(WebCore::InheritedFlags::getBorderImageBlockDirectionOutsets):
(WebCore::InheritedFlags::getImageInlineDirectionOutsets):
(WebCore::InheritedFlags::getImageBlockDirectionOutsets):
Helpers for outset computation used by painting and overflow functions.

LayoutTests:

  • fast/borders/block-mask-overlay-image-outset.html: Added.
  • fast/borders/block-mask-overlay-image.html~: Added.
  • fast/borders/border-image-outset-in-shorthand.html: Added.
  • fast/borders/border-image-outset-split-inline-vertical-lr.html: Added.
  • fast/borders/border-image-outset-split-inline.html: Added.
  • fast/borders/border-image-outset.html: Added.
  • fast/borders/inline-mask-overlay-image-outset-vertical-rl.html: Added.
  • fast/borders/inline-mask-overlay-image-outset.html: Added.
  • fast/css/getComputedStyle/computed-style-expected.txt:
  • fast/css/getComputedStyle/computed-style-with-zoom-expected.txt:
  • fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • fast/css/getComputedStyle/getComputedStyle-border-image-expected.txt:
  • fast/reflections/reflection-computed-style-expected.txt:
  • fast/reflections/reflection-masks-outset.html: Added.
  • platform/mac/fast/borders/block-mask-overlay-image-outset-expected.png: Added.
  • platform/mac/fast/borders/block-mask-overlay-image-outset-expected.txt: Added.
  • platform/mac/fast/borders/border-image-outset-expected.png: Added.
  • platform/mac/fast/borders/border-image-outset-expected.txt: Added.
  • platform/mac/fast/borders/border-image-outset-in-shorthand-expected.png: Added.
  • platform/mac/fast/borders/border-image-outset-in-shorthand-expected.txt: Added.
  • platform/mac/fast/borders/border-image-outset-split-inline-expected.png: Added.
  • platform/mac/fast/borders/border-image-outset-split-inline-expected.txt: Added.
  • platform/mac/fast/borders/border-image-outset-split-inline-vertical-lr-expected.png: Added.
  • platform/mac/fast/borders/border-image-outset-split-inline-vertical-lr-expected.txt: Added.
  • platform/mac/fast/borders/inline-mask-overlay-image-outset-expected.png: Added.
  • platform/mac/fast/borders/inline-mask-overlay-image-outset-expected.txt: Added.
  • platform/mac/fast/borders/inline-mask-overlay-image-outset-vertical-rl-expected.png: Added.
  • platform/mac/fast/borders/inline-mask-overlay-image-outset-vertical-rl-expected.txt: Added.
  • platform/mac/fast/reflections/reflection-masks-outset-expected.png: Added.
  • platform/mac/fast/reflections/reflection-masks-outset-expected.txt: Added.
  • svg/css/getComputedStyle-basic-expected.txt:
12:17 Changeset [94911] by mitz@apple.com
  • 2 edits in trunk/Source/WebCore

Actually prevent unnecessary casts to MediaControls*.

Reviewed by Oliver Hunt.

  • html/shadow/MediaControls.h:
11:54 Changeset [94910] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove printf added by r94900.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::drawPlatformResizerImage):

10:52 Changeset [94909] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Crash beneath WKURLIsEqual() when reloading in MiniBrowser.
https://bugs.webkit.org/show_bug.cgi?id=59328

Patch by Andreas Kling <kling@webkit.org> on 2011-09-10
Reviewed by Kenneth Rohde Christiansen.

  • MiniBrowser/mac/BrowserWindowController.m:

(-[BrowserWindowController updateProvisionalURLForFrame:]): Add missing null check.

07:21 Changeset [94908] by cmarrin@apple.com
  • 20 edits in trunk/Source

requestAnimationFrame doesn't throttle on Mac
https://bugs.webkit.org/show_bug.cgi?id=67171

Reviewed by Simon Fraser.

Source/JavaScriptCore:

Added WTF_USE_REQUEST_ANIMATION_FRAME_TIMER to allow any platform to run
requestAnimationFrame callbacks on a Timer defined in ScriptedAnimationController.
Currently only enabled for PLATFORM(MAC)

  • wtf/Platform.h:

Source/WebCore:

Changed requestAnimationFrame to use a Timer in ScriptedAnimationController
on Mac, rather than runLoopObservers. The Timer is throttled to fire no
faster than every 15ms. It is behind a WTF_USE_REQUEST_ANIMATION_FRAME_TIMER
flag and can be used by any implementation, but currently it is only enabled
by PLATFORM(MAC).

  • dom/ScriptedAnimationController.cpp:

(WebCore::ScriptedAnimationController::ScriptedAnimationController):
(WebCore::ScriptedAnimationController::resume):
(WebCore::ScriptedAnimationController::registerCallback):
(WebCore::ScriptedAnimationController::serviceScriptedAnimations):
(WebCore::ScriptedAnimationController::scheduleAnimation):
(WebCore::ScriptedAnimationController::animationTimerFired):

  • dom/ScriptedAnimationController.h:
  • loader/EmptyClients.h:
  • page/Chrome.cpp:

(WebCore::Chrome::scheduleAnimation):

  • page/ChromeClient.h:

Source/WebKit/mac:

Removed runLoopObserver for requestAnimationFrame. It's now
done by a Timer in ScriptedAnimationController in WebCore.

  • WebCoreSupport/WebChromeClient.h:
  • WebCoreSupport/WebChromeClient.mm:
  • WebView/WebView.mm:

(-[WebView _close]):

  • WebView/WebViewData.h:
  • WebView/WebViewInternal.h:

Source/WebKit2:

Removed runLoopObserver for requestAnimationFrame. It's now
done by a Timer in ScriptedAnimationController in WebCore.

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:
  • WebProcess/WebCoreSupport/WebChromeClient.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::~WebPage):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/mac/WebPageMac.mm:
07:06 Changeset [94907] by ossy@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

[Qt] Unreviewed gardening after r94897.

  • platform/qt/svg/custom/simple-text-double-shadow-expected.png: Added.
  • platform/qt/svg/custom/simple-text-double-shadow-expected.txt: Added.
06:15 Changeset [94906] by commit-queue@webkit.org
  • 4 edits
    1 add in trunk/Source

Source/WebCore: [Qt] QWebSettings::setUserStyleSheetUrl() does not work with windows paths that contain drive letters
https://bugs.webkit.org/show_bug.cgi?id=34884

KURL::path() alone does not handle removing the leading slash from a windows file path.
Using QUrl::toLocalFile() will turn file:///C:/path into C:/path appropriately.

Patch by Jarred Nicholls <jarred@sencha.com> on 2011-09-10
Reviewed by Andreas Kling.

  • platform/qt/KURLQt.cpp:

(WebCore::KURL::fileSystemPath):

Source/WebKit/qt: [Qt] QWebSettings::setUserStyleSheetUrl() does not work with windows paths that contain drive letters
https://bugs.webkit.org/show_bug.cgi?id=34884

KURL::path() alone does not handle removing the leading slash from a windows file path.
Using QUrl::toLocalFile() will turn file:///C:/path into C:/path appropriately.

New test case that ensures a user stylesheet from the file system will load correctly
on all platforms.

Patch by Jarred Nicholls <jarred@sencha.com> on 2011-09-10
Reviewed by Andreas Kling.

  • tests/qwebpage/resources/user.css: Added.

(p):

  • tests/qwebpage/tst_qwebpage.cpp:

(tst_QWebPage::userStyleSheetFromFile):

04:25 Changeset [94905] by commit-queue@webkit.org
  • 8 edits
    3 adds in trunk

Source/WebCore: Crash due to bad data in SVGDocumentExtensions m_pendingResources
https://bugs.webkit.org/show_bug.cgi?id=67488

Patch by Ken Buchanan <kenrb@chromium.org> on 2011-09-10
Reviewed by Nikolas Zimmermann.

Resolving a crash condition caused by the deletion of
elements while pending resource entries for those elements are still
recorded.

  • rendering/svg/RenderSVGResourceContainer.cpp:

(WebCore::RenderSVGResourceContainer::registerResource)

  • svg/SVGDocumentExtensions.h:

(WebCore::SVGDocumentExtensions::isElementInPendingResources)

  • svg/SVGDocumentExtensions.cpp:

(WebCore::SVGDocumentExtensions::addPendingResource)
(WebCore::SVGDocumentExtensions::isElementInPendingResources)
(WebCore::SVGDocumentExtensions::removeElementFromPendingResources)

  • svg/SVGStyledElement.h:

(WebCore::SVGStyledElement::clearHasPendingResourcesIfPossible)

  • svg/SVGStyledElement.cpp:

(WebCore::SVGStyledElement::buildPendingResourcesIfNeeded)
(WebCore::SVGStyledElement::clearHasPendingResourcesIfPossible)

  • svg/SVGUseElement.cpp:

(WebCore::SVGUseElement::svgAttributeChanged)

LayoutTests: Crash due to bad data in SVGDocumentExtensions m_pendingResources.
https://bugs.webkit.org/show_bug.cgi?id=67488

Patch by Ken Buchanan <kenrb@chromium.org> on 2011-09-10
Reviewed by Nikolas Zimmermann.

Test added: validating that the crash referenced in the bug is not present.

  • svg/dom/SVGStyledElement-pendingResource-crash.html: Added.
  • svg/dom/SVGStyledElement-pendingResource-crash-expected.txt: Added.
  • svg/dom/resources/SVGStyledElement-pendingResource-crash.svg: Added.
01:33 Changeset [94904] by abarth@webkit.org
  • 2 edits in trunk/Tools

Build fix for Android. DumpRenderTree is a client of the WebKit API
and does not have access to notImplemented().

  • DumpRenderTree/chromium/TestShellAndroid.cpp:

(openStartupDialog):

00:56 Changeset [94903] by abarth@webkit.org
  • 2 edits in trunk/Source/WebKit/gtk

Fix build break.

  • webkit/webkitwebview.cpp:

(webkit_web_view_get_encoding):

00:54 Changeset [94902] by abarth@webkit.org
  • 6 edits in trunk/Source/WebCore

Remove DocumentWriter::deprecatedFrameEncoding()
https://bugs.webkit.org/show_bug.cgi?id=67882

Reviewed by Eric Seidel.

Three years ago, in http://trac.webkit.org/changeset/39026, Alexey
Proskuryakov added ContentDispositionEncodingFallbackArray to work
around a web site compatibility issue with a non-ASCII file name
becoming garbled when received in the Content-Disposition header.

Since that time, there has been copious discussion of this topic among
browser vendors, in the IETF, and in the broader web community. For
example, here is a Stack Overflow thread about this topic:

http://stackoverflow.com/questions/93551/how-to-encode-the-filename-parameter-of-content-disposition-header-in-http

Eric Lawrence has written a blog post that summarizes IE's perspective
on this issue:

http://blogs.msdn.com/b/ieinternals/archive/2010/06/07/content-disposition-attachment-and-international-unicode-characters.aspx

The current consensus is that browsers should implement RFC 6266,
which is a new RFC that updates the definition of the
Content-Disposition header. Chrome and Firefox have both implemented
RFC 6266 and have encountered only one issue, which was then fixed by
the web site operator. IE has also implemented RFC 6266, but I don't
have detailed information about their compatibility experience.

This patch add explicit PLATFORM #ifdefs around the quirky
implementation previously used in Apple's Mac and Windows ports. This
code is already only used on Apple's ports, so this patch introduces no
functional changes. It does, however, discourage other ports from
adopting this quirk. IMHO, Apple should remove this quirk as soon as
compatibility allows and converge behavior with the other major browser
vendors.

See bug for manual test (the bug manifests in Safari download UI).

  • loader/DocumentWriter.cpp:
  • loader/DocumentWriter.h:
  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::addExtraFieldsToRequest):

  • platform/network/ResourceRequestBase.cpp:

(WebCore::ResourceRequestBase::adopt):
(WebCore::ResourceRequestBase::copyData):

  • platform/network/ResourceRequestBase.h:

09/09/11:

23:47 Changeset [94901] by bdakin@apple.com
  • 3 edits in trunk/Source/WebCore

Attempted Leopard build fix.

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::paintReplaced):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::drawPlatformResizerImage):

23:28 Changeset [94900] by bdakin@apple.com
  • 11 edits
    5 adds in trunk/Source/WebCore

Fix for https://bugs.webkit.org/show_bug.cgi?id=67819
Use high resolution platform images when the deviceScaleFactor > 1
-and corresponding-
<rdar://problem/10003098>

Reviewed by Darin Adler.

Add all of the new high resolution images. I also removed some tiffs from the
project and replaced them with png equivalents (that are already checked into
WebCore anyway). Since the high resolution images are pngs, it makes sense to use
pngs for all of the images that load through Image::loadPlatformResource()

  • WebCore.xcodeproj/project.pbxproj:
  • platform/graphics/mac/ImageMac.mm:

(WebCore::Image::loadPlatformResource):

Load the @2x resource for deviceScaleFactors >= 2.

  • editing/DeleteButtonController.cpp:

(WebCore::DeleteButtonController::createDeletionUI):

CachedImage::brokenImage() is no longer a static helper function, but a real
member function. It also now loads the @2x resource for deviceScaleFactors >= 2
and takes a parameter for the deviceScaleFactor. When CachedImage::image() returns
the brokenImage(), it just returns the 1x version. brokenImage() has to be called
directly to reliably return the deviceScaleFactor-appropriate resource.

  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::brokenImage):
(WebCore::CachedImage::image):

  • loader/cache/CachedImage.h:
  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::drawPlatformResizerImage):
(WebCore::RenderLayer::paintResizer):

  • rendering/RenderLayer.h:

New static function to retrieve the deviceScaleFactor for callers that do not have
direct access to a Page.

  • page/Page.cpp:

(WebCore::Page::deviceScaleFactor):

  • page/Page.h:

Call CachedImage::brokenImage() for the broken-image image at an accurate
resolution.

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::imageSizeForError):
(WebCore::RenderImage::paintReplaced):

21:00 Changeset [94899] by ap@apple.com
  • 1 edit
    1 add in trunk/Tools

Add a script to create a monolithic script-test
https://bugs.webkit.org/show_bug.cgi?id=67747

Reviewed by Darin Adler.

  • Scripts/make-new-script-test: Added.
20:55 WebKit Team edited by luiz@webkit.org
(diff)
20:21 Changeset [94898] by arv@chromium.org
  • 12 edits
    1 move
    4 adds
    2 deletes in trunk

Move Element.contains to Node
https://bugs.webkit.org/show_bug.cgi?id=67651

Reviewed by Darin Adler.

This moves the contains method from Element to Node as in the DOM4 working draft:
http://dvcs.w3.org/hg/domcore/raw-file/tip/Overview.html#dom-node-contains

This also special cases Document contains to make it O(1) instead of O(depth).

Source/WebCore:

Tests: fast/dom/Node/contains-method.html

perf/document-contains.html

  • bindings/objc/PublicDOMInterfaces.h: Move contains from DOMElement to DOMNode.
  • dom/Element.idl:
  • dom/Node.cpp:

(WebCore::Node::contains): Added document special case.

  • dom/Node.idl:
  • editing/DeleteSelectionCommand.cpp:

(WebCore::DeleteSelectionCommand::mergeParagraphs): Added a null check.

LayoutTests:

  • fast/dom/Element/contains-method-expected.txt: Removed.
  • fast/dom/Element/script-tests/contains-method.js: Removed.
  • fast/dom/Node/contains-method-expected.txt: Added.
  • fast/dom/Node/contains-method.html: Renamed from LayoutTests/fast/dom/Element/contains-method.html.
  • fast/dom/Node/script-tests/contains-method.js: Added. Expanded tests.
  • fast/dom/Window/window-properties-expected.txt:
  • perf/document-contains-expected.txt: Added.
  • perf/document-contains.html: Added.

Perf test to ensure that document.contains is O(1).

  • platform/gtk/fast/dom/Window/window-properties-expected.txt:
  • platform/mac/fast/dom/Window/window-properties-expected.txt:
  • platform/qt-wk2/fast/dom/Window/window-properties-expected.txt:
  • platform/qt/fast/dom/Window/window-properties-expected.txt:
19:56 Changeset [94897] by timothy_horton@apple.com
  • 22 edits
    3 adds in trunk

Text rendered with a simple (i.e. 0px blur) shadow inside a transparency layer has a double shadow
https://bugs.webkit.org/show_bug.cgi?id=67543
<rdar://problem/10070536>

Reviewed by Darin Adler.

Source/WebCore:

Generalize (begin|end)TransparencyLayer, which now forward
through to (begin|end)PlatformTransparencyLayer, so that
isInTransparencyLayer can exist on every platform.

Make use of isInTransparencyLayer in FontMac to disable
"simple" shadow drawing when the text is being rendered
into a transparency layer.

Test: svg/custom/simple-text-double-shadow.svg

  • platform/graphics/GraphicsContext.cpp:

(WebCore::GraphicsContext::GraphicsContext):
(WebCore::GraphicsContext::~GraphicsContext):
(WebCore::GraphicsContext::beginTransparencyLayer):
(WebCore::GraphicsContext::endTransparencyLayer):
(WebCore::GraphicsContext::isInTransparencyLayer):

  • platform/graphics/GraphicsContext.h:
  • platform/graphics/cairo/GraphicsContextCairo.cpp:

(WebCore::GraphicsContext::beginPlatformTransparencyLayer):
(WebCore::GraphicsContext::endPlatformTransparencyLayer):
(WebCore::GraphicsContext::supportsTransparencyLayers):

  • platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::GraphicsContext::beginPlatformTransparencyLayer):
(WebCore::GraphicsContext::endPlatformTransparencyLayer):
(WebCore::GraphicsContext::supportsTransparencyLayers):

  • platform/graphics/cg/GraphicsContextPlatformPrivateCG.h:

(WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):

  • platform/graphics/haiku/GraphicsContextHaiku.cpp:

(WebCore::GraphicsContext::beginPlatformTransparencyLayer):
(WebCore::GraphicsContext::endPlatformTransparencyLayer):
(WebCore::GraphicsContext::supportsTransparencyLayers):

  • platform/graphics/mac/FontMac.mm:

(WebCore::Font::drawGlyphs):

  • platform/graphics/openvg/GraphicsContextOpenVG.cpp:

(WebCore::GraphicsContext::beginPlatformTransparencyLayer):
(WebCore::GraphicsContext::endPlatformTransparencyLayer):
(WebCore::GraphicsContext::supportsTransparencyLayers):

  • platform/graphics/qt/GraphicsContextQt.cpp:

(WebCore::GraphicsContext::isInTransparencyLayer):
(WebCore::GraphicsContext::beginPlatformTransparencyLayer):
(WebCore::GraphicsContext::endPlatformTransparencyLayer):
(WebCore::GraphicsContext::supportsTransparencyLayers):

  • platform/graphics/skia/GraphicsContextSkia.cpp:

(WebCore::GraphicsContext::beginPlatformTransparencyLayer):
(WebCore::GraphicsContext::endPlatformTransparencyLayer):
(WebCore::GraphicsContext::supportsTransparencyLayers):

  • platform/graphics/win/FontCGWin.cpp:

(WebCore::drawGDIGlyphs):

  • platform/graphics/win/GraphicsContextCGWin.cpp:

(WebCore::GraphicsContext::releaseWindowsContext):

  • platform/graphics/win/GraphicsContextCairoWin.cpp:

(WebCore::GraphicsContext::releaseWindowsContext):

  • platform/graphics/win/GraphicsContextWin.cpp:

(WebCore::GraphicsContext::getWindowsContext):

  • platform/graphics/wince/GraphicsContextWinCE.cpp:

(WebCore::GraphicsContext::beginPlatformTransparencyLayer):
(WebCore::GraphicsContext::endPlatformTransparencyLayer):
(WebCore::GraphicsContext::supportsTransparencyLayers):

  • platform/graphics/wx/GraphicsContextWx.cpp:

(WebCore::GraphicsContext::beginPlatformTransparencyLayer):
(WebCore::GraphicsContext::endPlatformTransparencyLayer):
(WebCore::GraphicsContext::supportsTransparencyLayers):

  • platform/win/ScrollbarThemeWin.cpp:
  • plugins/win/PluginViewWin.cpp:
  • rendering/RenderThemeWin.cpp:

LayoutTests:

Add a test ensuring that text with 0px blur CSS shadow doesn't get rendered
with a second shadow when inside a transparency layer.

  • platform/mac/svg/custom/simple-text-double-shadow-expected.png: Added.
  • platform/mac/svg/custom/simple-text-double-shadow-expected.txt: Added.
  • svg/custom/simple-text-double-shadow.svg: Added.
19:49 Changeset [94896] by luiz@webkit.org
  • 2 edits in trunk/Tools

Adding myself to the reviewers list.

  • Scripts/webkitpy/common/config/committers.py:
18:58 Changeset [94895] by mdelaney@apple.com
  • 3 edits in trunk/LayoutTests

Update Skipped lists for mac and mac-lion w.r.t. canvas
https://bugs.webkit.org/show_bug.cgi?id=67867

Reviewed by Simon Fraser.

  • platform/mac-lion/Skipped:
  • platform/mac/Skipped:
18:16 Changeset [94894] by jchaffraix@webkit.org
  • 2 edits in trunk/Source/WebCore

[V8] V8WebKitPoint::constructorCallback leaks
https://bugs.webkit.org/show_bug.cgi?id=67865

Reviewed by Adam Barth.

Covered by fast/js/instanceof-XMLHttpRequest.html under Valgrind.

  • bindings/v8/custom/V8WebKitPointConstructor.cpp:

(WebCore::V8WebKitPoint::constructorCallback): Changed the code
to use a RefPtr (per our usual style). Also use toV8 that will
take care of properly wrapping the object.

17:59 Changeset [94893] by crogers@google.com
  • 3 edits in trunk/Source/WebCore

HRTFDatabaseLoader should not call WTF::waitForThreadCompletion() more than once
https://bugs.webkit.org/show_bug.cgi?id=67866

Reviewed by David Levin.

No new tests since this is difficult to test.
This is designed to fix existing webaudio layout test failures.

  • platform/audio/HRTFDatabaseLoader.cpp:

(WebCore::HRTFDatabaseLoader::HRTFDatabaseLoader):
(WebCore::HRTFDatabaseLoader::~HRTFDatabaseLoader):
(WebCore::HRTFDatabaseLoader::loadAsynchronously):
(WebCore::HRTFDatabaseLoader::waitForLoaderThreadCompletion):

  • platform/audio/HRTFDatabaseLoader.h:
17:57 Changeset [94892] by jberlin@webkit.org
  • 2 edits in trunk/Source/WebCore

Cookies are not available after turning off Private Browsing after the last window has been
closed.
https://bugs.webkit.org/show_bug.cgi?id=67874

Reviewed by Darin Adler.

The private browsing storage session is a global setting that is being incorrectly set on a
per-page basis (see http://webkit.org/b/67870).

In this case, the global value was getting out of sync with the per-page setting:

  1. The global value was getting set to true when setPrivateBrowsingEnabled(true) was called.
  2. All Pages were then closed, destroying their Settings objects.
  3. When a new Page was created, a new Settings object was created and its m_privateBrowsingEnabled value was getting set to false.
  4. The WebPage settings were then applied to the new Settings object, resulting in setPrivateBrowsingEnabled(false) to be called.
  5. An if (m_privateBrowsingEnabled == privateBrowsingEnabled) early return prevented the global value for the storage session from being destroyed.
  • page/Settings.cpp:

(WebCore::Settings::setPrivateBrowsingEnabled):
Move the early return to be after setting the global private browsing values, and add a
clearer comment + FIXME.

17:29 Changeset [94891] by rolandsteiner@chromium.org
  • 13 edits
    1 delete in trunk

Generate a WebKitCSSMatrix constructor of V8 using the IDL 'Constructor' extended attribute
https://bugs.webkit.org/show_bug.cgi?id=67458

Patch by Kentaro Hara <haraken@google.com> on 2011-09-09
Reviewed by Adam Barth.

Source/WebCore:

Added a 'CallWithNullValue' extended attribute.
If a parameter is optional and missing, 'CallWithDefaultValue'
handles it as a string "undefined". On the other hand,
'CallWithNullValue' handles it as a null string
(Note: not a string "null", but a null string).

Tests: fast/dom/Window/custom-constructors.html

transforms/svg-vs-css.xhtml
transforms/cssmatrix-2d-interface.xhtml
transforms/cssmatrix-3d-interface.xhtmlGenerate a WebKitCSSMatrix constructor

  • WebCore.gypi: Removed V8WebKitCSSMatrixConstructor.cpp.
  • WebCore.pro: Removed V8WebKitCSSMatrixConstructor.cpp.
  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateParametersCheck): If the 'CallWithNullValue' extended attribute is set, we call MAYBE_MISSING_PARAMETER() with MissingIsEmpty mode to obtain a maybe missing parameter. Otherwise, we call MAYBE_MISSING_PARAMETER() with MissingIsUndefined mode.
(RequiresCustomSignature):

  • bindings/scripts/test/V8/V8TestInterface.cpp: Updated test results.

(WebCore::V8TestInterface::constructorCallback):

  • bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp: Ditto.

(WebCore::TestMediaQueryListListenerInternal::methodCallback):

  • bindings/scripts/test/V8/V8TestObj.cpp: Ditto.

(WebCore::TestObjInternal::voidMethodWithArgsCallback):
(WebCore::TestObjInternal::intMethodWithArgsCallback):
(WebCore::TestObjInternal::objMethodWithArgsCallback):
(WebCore::TestObjInternal::methodThatRequiresAllArgsCallback):
(WebCore::TestObjInternal::methodThatRequiresAllArgsAndThrowsCallback):
(WebCore::TestObjInternal::optionsObjectCallback):
(WebCore::TestObjInternal::customArgsAndExceptionCallback):
(WebCore::TestObjInternal::withDynamicFrameAndArgCallback):
(WebCore::TestObjInternal::withDynamicFrameAndOptionalArgCallback):
(WebCore::TestObjInternal::withDynamicFrameAndUserGestureCallback):
(WebCore::TestObjInternal::withDynamicFrameAndUserGestureASADCallback):
(WebCore::TestObjInternal::methodWithOptionalArgCallback):
(WebCore::TestObjInternal::methodWithNonOptionalArgAndOptionalArgCallback):
(WebCore::TestObjInternal::methodWithNonOptionalArgAndTwoOptionalArgsCallback):
(WebCore::TestObjInternal::methodWithNonCallbackArgAndCallbackArgCallback):
(WebCore::TestObjInternal::overloadedMethod1Callback):
(WebCore::TestObjInternal::overloadedMethod2Callback):
(WebCore::TestObjInternal::overloadedMethod3Callback):
(WebCore::TestObjInternal::overloadedMethod4Callback):
(WebCore::TestObjInternal::classMethodWithOptionalCallback):
(WebCore::TestObjInternal::enabledAtRuntimeMethod1Callback):
(WebCore::TestObjInternal::enabledAtRuntimeMethod2Callback):

  • bindings/v8/V8Binding.h:

(WebCore::V8ParameterBase::prepareBase): The fact that V8ParameterBase does not have any object means that we do not need to prepare anything, i.e. we should just return true in this case.
(WebCore::::prepare): If V8ParameterBase does not have any object, then we set a null string.

  • bindings/v8/custom/V8BindingMacros.h: MAYBE_MISSING_PARAMETER() returns the parameter of a given index if the parameter exists. If the parameter does not exist and MissingIsUndefined is set, this macro returns an object that represents undefined. If the parameter does not exist and MissingIsEmpty is set, this macro returns an empty object.
  • bindings/v8/custom/V8WebKitCSSMatrixConstructor.cpp: Removed.
  • css/WebKitCSSMatrix.idl: Added the 'Constructor' extended attribute.

LayoutTests:

Added a test case for "new WebKitCSSMatrix(null)" and "new WebKitCSSMatrix(undefined)".

  • fast/dom/Window/custom-constructors-expected.txt:
  • fast/dom/Window/custom-constructors.html:
17:05 Changeset [94890] by ggaren@apple.com
  • 12 edits in trunk/Source

2011-09-09 Geoffrey Garen <ggaren@apple.com>

Reviewed by Dan Bernstein.

Removed ENABLE(SINGLE_THREADED) support, since it is always false
https://bugs.webkit.org/show_bug.cgi?id=67862

Next step toward making the baseline platform assumption that threads exist.

  • wtf/wtf.pri:
  • JavaScriptCore.gypi:
  • JavaScriptCore.vcproj/WTF/WTF.vcproj: Removed references to ThreadingNone.cpp, which was only compiled in single-threaded mode.
  • wtf/Platform.h:
  • wtf/ThreadSpecific.h: (WTF::::destroy):
  • wtf/qt/ThreadingQt.cpp: Removed now-dead code.
  • wtf/ThreadingNone.cpp: Removed.

2011-09-09 Geoffrey Garen <ggaren@apple.com>

Reviewed by Dan Bernstein.

Removed ENABLE(SINGLE_THREADED) support, since it is always false
https://bugs.webkit.org/show_bug.cgi?id=67862

Next step toward making the baseline platform assumption that threads exist.

  • WebCore.pri:
  • features.pri:
  • platform/sql/SQLiteDatabase.cpp: (WebCore::SQLiteDatabase::interrupt): Removed now-dead code.
16:39 Changeset [94889] by fsamuel@chromium.org
  • 23 edits in trunk/Source

Move pageScaleFactor code from Frame.{h|cpp} to Page.{h|cpp}
https://bugs.webkit.org/show_bug.cgi?id=67250

Reviewed by Simon Fraser.

Source/WebCore:

No new tests because there's no change in functionality.

  • WebCore.exp.in:
  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::styleForDocument):

  • dom/Element.cpp:

(WebCore::Element::getClientRects):
(WebCore::Element::getBoundingClientRect):

  • dom/Range.cpp:

(WebCore::adjustFloatQuadsForScrollAndAbsoluteZoomAndPageScale):

  • loader/HistoryController.cpp:

(WebCore::HistoryController::restoreScrollPositionAndViewState):

  • page/Frame.cpp:

(WebCore::Frame::Frame):
(WebCore::Frame::pageScaleFactor):

  • page/Frame.h:
  • page/Page.cpp:

(WebCore::Page::Page):
(WebCore::Page::setPageScaleFactor):

  • page/Page.h:

(WebCore::Page::pageScaleFactor):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::shouldPropagateCompositingToEnclosingFrame):
(WebCore::RenderLayerCompositor::pageScaleFactor):

  • rendering/RenderView.cpp:

(WebCore::RenderView::paintBoxDecorations):

Source/WebKit/chromium:

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::pageScaleFactor):
(WebKit::WebViewImpl::scalePage):

Source/WebKit/gtk:

  • WebCoreSupport/DumpRenderTreeSupportGtk.cpp:

(DumpRenderTreeSupportGtk::scalePageBy):

Source/WebKit/mac:

  • WebView/WebView.mm:

(-[WebView _scaleWebView:atOrigin:]):
(-[WebView _viewScaleFactor]):

Source/WebKit/qt:

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:

(DumpRenderTreeSupportQt::scalePageBy):

Source/WebKit2:

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::scalePage):
(WebKit::WebPage::pageScaleFactor):

16:24 Changeset [94888] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Source/WebCore: AX: Images within anchors causes crash
https://bugs.webkit.org/show_bug.cgi?id=44149

Patch by Dominic Mazzoni <dmazzoni@google.com> on 2011-09-09
Reviewed by Chris Fleizach.

Fixes the way parent RenderObject of an AccessibilityRenderObject
is computed in the presence of adjacent continuations.

Test: accessibility/div-within-anchors-causes-crash.html

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::renderParentObject):

LayoutTests: Add a test to catch a case where an assertion failure or
crash is triggered in AccessibilityRenderObject when deleting
a node that includes a continuation.
https://bugs.webkit.org/show_bug.cgi?id=44149

Patch by Dominic Mazzoni <dmazzoni@google.com> on 2011-09-09
Reviewed by Chris Fleizach.

  • accessibility/div-within-anchors-causes-crash.html: Added.
  • platform/mac/accessibility/div-within-anchors-causes-crash-expected.txt: Added.
16:22 Changeset [94887] by commit-queue@webkit.org
  • 7 edits
    2 adds in trunk

CSS rules not being applied when a hidden field is inserted between an input[type=checkbox] and a label
https://bugs.webkit.org/show_bug.cgi?id=66887

Patch by Kulanthaivel Palanichamy <kulanthaivel@codeaurora.org> on 2011-09-09
Reviewed by David Hyatt.

Source/WebCore:

Test: fast/css/adjacent-sibling-selector.html

This patch addresses the problem of elements not getting their style recomputed
when they are affected by direct adjacent sibling rules and one of their sibling in
their corresponding rules is modified dynamically.

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::canShareStyleWithElement):
(WebCore::parentStylePreventsSharing):

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::checkSelector):

  • dom/Element.cpp:

(WebCore::Element::recalcStyle):
(WebCore::checkForSiblingStyleChanges):

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::RenderStyle):

  • rendering/style/RenderStyle.h:

(WebCore::InheritedFlags::affectedByDirectAdjacentRules):
(WebCore::InheritedFlags::setAffectedByDirectAdjacentRules):

LayoutTests:

  • fast/css/adjacent-sibling-selector-expected.txt: Added.
  • fast/css/adjacent-sibling-selector.html: Added.
16:14 Changeset [94886] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Make the EFL port use the correct rendering file.
https://bugs.webkit.org/show_bug.cgi?id=66323

Patch by Rafael Antognolli <antognolli@profusion.mobi> on 2011-09-09
Reviewed by Martin Robinson.

When compiling with Pango support, the EFL port should use
FontPango.cpp instead of FontEfl.cpp (which is just full of stubs).

No new functionality so no new tests.

  • CMakeListsEfl.txt:
16:10 Changeset [94885] by sullivan@chromium.org
  • 1 edit
    2 copies in branches/chromium/874

Merge 94841 - Crashes in WebCore::AppendNodeCommand::create().
https://bugs.webkit.org/show_bug.cgi?id=67767

Patch by Shinya Kawanaka <shinyak@google.com> on 2011-09-09
Reviewed by Darin Adler.

Source/WebCore:

In CompositeEditCommand::closeParagraphUnderNewElement(), lastNode could be a non Element node.
The current code assumes lastNode is an Element node. This patch checks it.

Test: editing/execCommand/ident-crashes-topnode-is-text.html

  • editing/CompositeEditCommand.cpp:

(WebCore::CompositeEditCommand::cloneParagraphUnderNewElement): Added an element node check.

LayoutTests:

Added a crash test case.

  • editing/execCommand/ident-crashes-topnode-is-text-expected.txt: Added.
  • editing/execCommand/ident-crashes-topnode-is-text.html: Added.

TBR=sullivan@chromium.org
BUG=95550
Review URL: http://codereview.chromium.org/7863014

16:05 Changeset [94884] by commit-queue@webkit.org
  • 2 edits
    4 adds in trunk/LayoutTests

Add test cases for xss auditor encoding bugs.
https://bugs.webkit.org/show_bug.cgi?id=67134

Patch by Tom Sepez <tsepez@chromium.org> on 2011-09-09
Reviewed by Daniel Bates.

  • http/tests/security/xssAuditor/resources/echo-intertag.pl:
  • http/tests/security/xssAuditor/xss-filter-bypass-big5-expected.txt: Added.
  • http/tests/security/xssAuditor/xss-filter-bypass-big5.html: Added.
  • http/tests/security/xssAuditor/xss-filter-bypass-sjis-expected.txt: Added.
  • http/tests/security/xssAuditor/xss-filter-bypass-sjis.html: Added.
16:05 Changeset [94883] by isherman@chromium.org
  • 1 edit
    2 copies in branches/chromium/874

Merge 94637 - REGRESSION(r94274): The inner text value of an input element is not updated when input.value is set
https://bugs.webkit.org/show_bug.cgi?id=67681

Reviewed by Kent Tamura.

Source/WebCore:

The bug was caused by HTMLInputElement::setValue's not clearing m_suggestedValue before updateInnerTextValue is called.
Since updateInnerTextValue uses the suggested value when one is present, we need to clear m_suggestedValue in advance.

Test: fast/forms/suggested-value-after-setvalue.html

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::setValue):

LayoutTests:

Added a test that overrides the suggested value by modifying the value IDL attribute of an input element.

  • fast/forms/suggested-value-after-setvalue-expected.txt: Added.
  • fast/forms/suggested-value-after-setvalue.html: Added.

TBR=rniwa@webkit.org
Review URL: http://codereview.chromium.org/7768005

16:03 Changeset [94882] by isherman@chromium.org
  • 11 edits
    2 copies in branches/chromium/874

Merge 94586 - REGRESSION(r94274): FormManagerTest.PreviewForm and FillFormNonEmptyField fail on chromium
https://bugs.webkit.org/show_bug.cgi?id=67453

Reviewed by Kent Tamura.

.:

Add symbols for internals.

  • Source/autotools/symbols.filter:

Source/WebCore:

Fixed the bug by updating inner text value in setSuggestedValue.

Also added a suggestedValue and setSuggestedValue on window.internals for testing purposes.

Test: fast/forms/suggested-value.html

  • WebCore.exp.in:
  • testing/Internals.cpp:

(WebCore::Internals::suggestedValue):
(WebCore::Internals::setSuggestedValue):

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

Source/WebKit/chromium:

Chromium code incorrectly calls Node::isFocusable without updating layout, and was hitting assertions.
Fix the assertion failure (and a potential crash) by updating layout in WebCore::isFocusable.

  • src/WebNode.cpp:

(WebKit::WebNode::isFocusable):

Source/WebKit2:

Add symbols for internals.

  • win/WebKit2.def:
  • win/WebKit2CFLite.def:

LayoutTests:

Added a regression test to ensure HTMLInputElement updates its inner text value when the suggested value is set.

  • fast/forms/suggested-value-expected.txt: Added.
  • fast/forms/suggested-value.html: Added.

TBR=rniwa@webkit.org
Review URL: http://codereview.chromium.org/7796022

16:01 Changeset [94881] by sullivan@chromium.org
  • 1 edit
    2 copies in branches/chromium/874

Merge 94840 - Crashes in WebCore::ApplyStyleCommand.doApply()
https://bugs.webkit.org/show_bug.cgi?id=67765

Patch by Shinya Kawanaka <shinyak@google.com> on 2011-09-09
Reviewed by Ryosuke Niwa.

WebCore::enclosingBlock may return null, but ApplyStyleCommand::applyBlockStyle did not check it. This patch make it to be checked.

Source/WebCore:

Test: editing/style/remove-format-without-enclosing-block.html

  • editing/ApplyStyleCommand.cpp:

(WebCore::ApplyStyleCommand::applyBlockStyle): Added null check.

LayoutTests:

  • editing/style/remove-format-without-enclosing-block-expected.txt: Added.
  • editing/style/remove-format-without-enclosing-block.html: Added.

TBR=sullivan@chromium.org
BUG=95550
Review URL: http://codereview.chromium.org/7862013

15:51 Changeset [94880] by sullivan@chromium.org
  • 1 edit
    2 copies in branches/chromium/874

Merge 94832 - Crashes in WebCore::InsertNodeBeforeCommand constructor.
https://bugs.webkit.org/show_bug.cgi?id=67763

Reviewed by Ryosuke Niwa.

Source/WebCore:

Changes editableRootForPosition() to use the position's containerNode instead of deprecatedNode so that
positions which are before or after a given node cannot return that node as the editable root.

Test: editing/inserting/insert-paragraph-selection-outside-contenteditable.html

  • editing/htmlediting.cpp:

(WebCore::editableRootForPosition): use containerNode instead of deprecatedNode.

LayoutTests:

Tests for crash when the selection is outside the contenteditable node.

  • editing/inserting/insert-paragraph-selection-outside-contenteditable-expected.txt: Added.
  • editing/inserting/insert-paragraph-selection-outside-contenteditable.html: Added.

TBR=sullivan@chromium.org
BUG=95550
Review URL: http://codereview.chromium.org/7866016

15:47 Changeset [94879] by sullivan@chromium.org
  • 1 edit
    2 copies in branches/chromium/874

Merge 94793 - Crashes in WebCore::ReplaceSelectionCommand::doApply
https://bugs.webkit.org/show_bug.cgi?id=67762

Patch by Shinya Kawanaka <shinyak@google.com> on 2011-09-08
Reviewed by Ryosuke Niwa.

Source/WebCore:

WebCore::enclosingBlock may return null, but its return value was not checked. This patch checks it.

Tests: editing/inserting/insert-without-enclosing-block.html

  • editing/ReplaceSelectionCommand.cpp:

(WebCore::ReplaceSelectionCommand::doApply): Added null check.

LayoutTests:

WebCore::enclosingBlock may return NULL, but its return value was not checked. This patch checks it.

  • editing/inserting/insert-without-enclosing-block-expected.txt: Added.
  • editing/inserting/insert-without-enclosing-block.html: Added.

TBR=sullivan@chromium.org
Review URL: http://codereview.chromium.org/7780011

15:15 Changeset [94878] by crogers@google.com
  • 7 edits
    1 copy
    2 adds in trunk

AudioBufferSourceNode must validate AudioBuffer in .buffer attribute setter
https://bugs.webkit.org/show_bug.cgi?id=67749

Reviewed by Kenneth Russell.

Source/WebCore:

Test: webaudio/audiobuffersource-channels.html

  • WebCore.gypi:
  • bindings/js/JSAudioBufferSourceNodeCustom.cpp:

(WebCore::JSAudioBufferSourceNode::setBuffer):

  • bindings/v8/custom/V8AudioBufferSourceNodeCustom.cpp: Copied from Source/WebCore/bindings/js/JSAudioBufferSourceNodeCustom.cpp.

(WebCore::V8AudioBufferSourceNode::bufferAccessorSetter):

  • webaudio/AudioBufferSourceNode.cpp:

(WebCore::AudioBufferSourceNode::setBuffer):

  • webaudio/AudioBufferSourceNode.h:
  • webaudio/AudioBufferSourceNode.idl:

LayoutTests:

  • webaudio/audiobuffersource-channels-expected.txt: Added.
  • webaudio/audiobuffersource-channels.html: Added.
15:08 Changeset [94877] by mitz@apple.com
  • 3 edits in trunk/Source/WebCore

RenderBlock::addOverhangingFloats() takes superfluous parameters
https://bugs.webkit.org/show_bug.cgi?id=67863

Reviewed by Dave Hyatt.

No new tests, because behavior is unchanged.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::layoutBlock):
(WebCore::RenderBlock::layoutBlockChild):
(WebCore::RenderBlock::addOverhangingFloats): Removed the logical{Left, Top}Offset parameters,
since they were always the inverse of the logical{Left, Top}() of the child parameter.

  • rendering/RenderBlock.h:
15:06 Changeset [94876] by commit-queue@webkit.org
  • 7 edits
    2 adds in trunk

Add replacement functions for gdk ones.
https://bugs.webkit.org/show_bug.cgi?id=66323

Patch by Rafael Antognolli <antognolli@profusion.mobi> on 2011-09-09
Reviewed by Martin Robinson.

.:

  • Source/cmake/FindPango.cmake:

Source/WebCore:

This will allow the EFL port to don't depend on gdk anymore.

No new functionality so no new tests.

  • CMakeListsEfl.txt:
  • platform/graphics/cairo/CairoUtilities.cpp:

(WebCore::appendRegionToCairoContext):

  • platform/graphics/cairo/CairoUtilities.h:
  • platform/graphics/pango/FontPango.cpp:

(WebCore::drawGlyphsShadow):
(WebCore::Font::drawComplexText):

  • platform/graphics/pango/PangoUtilities.cpp: Added.

(WebCore::getLineClipRegionFromLayoutIter):
(WebCore::getClipRegionFromPangoLayoutLine):

  • platform/graphics/pango/PangoUtilities.h: Added.
14:43 Changeset [94875] by mhahnenberg@apple.com
  • 114 edits in trunk/Source

Unzip initialization lists and constructors in JSCell hierarchy (5/7)
https://bugs.webkit.org/show_bug.cgi?id=67420

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Completed the fifth level of the refactoring to add finishCreation()
methods to all classes within the JSCell hierarchy with non-trivial
constructor bodies.

This primarily consists of pushing the calls to finishCreation() down
into the constructors of the subclasses of the second level of the hierarchy
as well as pulling the finishCreation() calls out into the class's corresponding
create() method if it has one. Doing both simultaneously allows us to
maintain the invariant that the finishCreation() method chain is called exactly
once during the creation of an object, since calling it any other number of
times (0, 2, or more) will cause an assertion failure.

  • API/JSCallbackConstructor.cpp:

(JSC::JSCallbackConstructor::JSCallbackConstructor):

  • API/JSCallbackConstructor.h:

(JSC::JSCallbackConstructor::create):

  • API/JSCallbackFunction.cpp:

(JSC::JSCallbackFunction::JSCallbackFunction):
(JSC::JSCallbackFunction::finishCreation):

  • API/JSCallbackFunction.h:
  • API/JSCallbackObject.h:
  • API/JSCallbackObjectFunctions.h:

(JSC::::JSCallbackObject):
(JSC::::finishCreation):

  • JavaScriptCore.exp:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
  • debugger/DebuggerActivation.cpp:
  • debugger/DebuggerActivation.h:

(JSC::DebuggerActivation::create):

  • jsc.cpp:

(GlobalObject::finishCreation):
(GlobalObject::GlobalObject):

  • runtime/ArrayConstructor.cpp:

(JSC::ArrayConstructor::ArrayConstructor):
(JSC::ArrayConstructor::finishCreation):

  • runtime/ArrayConstructor.h:
  • runtime/ArrayPrototype.cpp:

(JSC::ArrayPrototype::ArrayPrototype):

  • runtime/ArrayPrototype.h:

(JSC::ArrayPrototype::create):

  • runtime/BooleanConstructor.cpp:

(JSC::BooleanConstructor::BooleanConstructor):
(JSC::BooleanConstructor::finishCreation):

  • runtime/BooleanConstructor.h:
  • runtime/BooleanObject.cpp:

(JSC::BooleanObject::BooleanObject):

  • runtime/BooleanObject.h:

(JSC::BooleanObject::create):

  • runtime/BooleanPrototype.cpp:

(JSC::BooleanPrototype::BooleanPrototype):
(JSC::BooleanPrototype::finishCreation):

  • runtime/BooleanPrototype.h:
  • runtime/DateConstructor.cpp:

(JSC::DateConstructor::DateConstructor):
(JSC::DateConstructor::finishCreation):

  • runtime/DateConstructor.h:
  • runtime/DateInstance.cpp:

(JSC::DateInstance::DateInstance):

  • runtime/DateInstance.h:

(JSC::DateInstance::create):

  • runtime/DatePrototype.cpp:

(JSC::DatePrototype::DatePrototype):
(JSC::DatePrototype::finishCreation):

  • runtime/DatePrototype.h:
  • runtime/Error.cpp:

(JSC::StrictModeTypeErrorFunction::StrictModeTypeErrorFunction):

  • runtime/ErrorConstructor.cpp:

(JSC::ErrorConstructor::ErrorConstructor):
(JSC::ErrorConstructor::finishCreation):

  • runtime/ErrorConstructor.h:
  • runtime/ErrorPrototype.cpp:

(JSC::ErrorPrototype::ErrorPrototype):

  • runtime/ErrorPrototype.h:

(JSC::ErrorPrototype::create):

  • runtime/FunctionConstructor.cpp:

(JSC::FunctionConstructor::FunctionConstructor):
(JSC::FunctionConstructor::finishCreation):

  • runtime/FunctionConstructor.h:
  • runtime/FunctionPrototype.cpp:

(JSC::FunctionPrototype::FunctionPrototype):
(JSC::FunctionPrototype::finishCreation):

  • runtime/FunctionPrototype.h:
  • runtime/InternalFunction.cpp:

(JSC::InternalFunction::InternalFunction):

  • runtime/InternalFunction.h:
  • runtime/JSActivation.cpp:

(JSC::JSActivation::JSActivation):

  • runtime/JSActivation.h:

(JSC::JSActivation::create):

  • runtime/JSGlobalObject.h:

(JSC::JSGlobalObject::create):
(JSC::JSGlobalObject::JSGlobalObject):

  • runtime/JSONObject.cpp:

(JSC::JSONObject::JSONObject):

  • runtime/JSONObject.h:

(JSC::JSONObject::create):

  • runtime/JSStaticScopeObject.h:

(JSC::JSStaticScopeObject::create):
(JSC::JSStaticScopeObject::JSStaticScopeObject):

  • runtime/JSString.cpp:

(JSC::StringObject::create):

  • runtime/MathObject.cpp:

(JSC::MathObject::MathObject):

  • runtime/MathObject.h:

(JSC::MathObject::create):

  • runtime/NativeErrorConstructor.cpp:

(JSC::NativeErrorConstructor::NativeErrorConstructor):

  • runtime/NativeErrorConstructor.h:

(JSC::NativeErrorConstructor::finishCreation):

  • runtime/NativeErrorPrototype.cpp:

(JSC::NativeErrorPrototype::NativeErrorPrototype):
(JSC::NativeErrorPrototype::finishCreation):

  • runtime/NativeErrorPrototype.h:
  • runtime/NumberConstructor.cpp:

(JSC::NumberConstructor::NumberConstructor):
(JSC::NumberConstructor::finishCreation):

  • runtime/NumberConstructor.h:
  • runtime/NumberObject.cpp:

(JSC::NumberObject::NumberObject):

  • runtime/NumberObject.h:

(JSC::NumberObject::create):

  • runtime/NumberPrototype.cpp:

(JSC::NumberPrototype::NumberPrototype):
(JSC::NumberPrototype::finishCreation):

  • runtime/NumberPrototype.h:
  • runtime/ObjectConstructor.cpp:

(JSC::ObjectConstructor::ObjectConstructor):
(JSC::ObjectConstructor::finishCreation):

  • runtime/ObjectConstructor.h:
  • runtime/RegExpConstructor.cpp:

(JSC::RegExpConstructor::RegExpConstructor):
(JSC::RegExpConstructor::finishCreation):
(JSC::RegExpMatchesArray::RegExpMatchesArray):

  • runtime/RegExpConstructor.h:
  • runtime/RegExpMatchesArray.h:

(JSC::RegExpMatchesArray::create):

  • runtime/RegExpObject.cpp:

(JSC::RegExpObject::RegExpObject):

  • runtime/RegExpObject.h:

(JSC::RegExpObject::create):

  • runtime/RegExpPrototype.cpp:

(JSC::RegExpPrototype::RegExpPrototype):

  • runtime/StringConstructor.cpp:

(JSC::StringConstructor::StringConstructor):
(JSC::StringConstructor::finishCreation):

  • runtime/StringConstructor.h:
  • runtime/StringObject.cpp:

(JSC::StringObject::StringObject):

  • runtime/StringObject.h:

(JSC::StringObject::create):

  • runtime/StringObjectThatMasqueradesAsUndefined.h:

(JSC::StringObjectThatMasqueradesAsUndefined::StringObjectThatMasqueradesAsUndefined):

  • runtime/StringPrototype.cpp:

(JSC::StringPrototype::StringPrototype):
(JSC::StringPrototype::finishCreation):

  • runtime/StringPrototype.h:

Source/JavaScriptGlue:

Completed the fifth level of the refactoring to add finishCreation()
methods to all classes within the JSCell hierarchy with non-trivial
constructor bodies.

This primarily consists of pushing the calls to finishCreation() down
into the constructors of the subclasses of the second level of the hierarchy
as well as pulling the finishCreation() calls out into the class's corresponding
create() method if it has one. Doing both simultaneously allows us to
maintain the invariant that the finishCreation() method chain is called exactly
once during the creation of an object, since calling it any other number of
times (0, 2, or more) will cause an assertion failure.

  • JSRun.cpp:

(JSGlueGlobalObject::JSGlueGlobalObject):

Source/WebCore:

No new tests.

Completed the fifth level of the refactoring to add finishCreation()
methods to all classes within the JSCell hierarchy with non-trivial
constructor bodies.

This primarily consists of pushing the calls to finishCreation() down
into the constructors of the subclasses of the second level of the hierarchy
as well as pulling the finishCreation() calls out into the class's corresponding
create() method if it has one. Doing both simultaneously allows us to
maintain the invariant that the finishCreation() method chain is called exactly
once during the creation of an object, since calling it any other number of
times (0, 2, or more) will cause an assertion failure.

  • WebCore.exp.in:
  • bindings/js/JSDOMBinding.h:

(WebCore::DOMConstructorObject::DOMConstructorObject):

  • bindings/js/JSDOMGlobalObject.cpp:

(WebCore::JSDOMGlobalObject::JSDOMGlobalObject):
(WebCore::JSDOMGlobalObject::finishCreation):

  • bindings/js/JSDOMGlobalObject.h:
  • bindings/js/JSDOMWindowShell.cpp:
  • bindings/js/JSDOMWindowShell.h:

(WebCore::JSDOMWindowShell::create):

  • bindings/js/JSDOMWrapper.h:

(WebCore::JSDOMWrapper::JSDOMWrapper):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):

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

(WebCore::JSTestInterface::JSTestInterface):

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

(WebCore::JSTestMediaQueryListListener::JSTestMediaQueryListListener):

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

(WebCore::JSTestObj::JSTestObj):

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

(WebCore::JSTestSerializedScriptValueInterface::JSTestSerializedScriptValueInterface):

  • bridge/c/CRuntimeObject.cpp:

(JSC::Bindings::CRuntimeObject::CRuntimeObject):
(JSC::Bindings::CRuntimeObject::finishCreation):

  • bridge/c/CRuntimeObject.h:
  • bridge/jni/jsc/JavaRuntimeObject.cpp:

(JSC::Bindings::JavaRuntimeObject::JavaRuntimeObject):
(JSC::Bindings::JavaRuntimeObject::finishCreation):

  • bridge/jni/jsc/JavaRuntimeObject.h:
  • bridge/objc/ObjCRuntimeObject.h:
  • bridge/objc/ObjCRuntimeObject.mm:

(JSC::Bindings::ObjCRuntimeObject::ObjCRuntimeObject):
(JSC::Bindings::ObjCRuntimeObject::finishCreation):

  • bridge/objc/objc_runtime.h:

(JSC::Bindings::ObjcFallbackObjectImp::create):

  • bridge/objc/objc_runtime.mm:

(JSC::Bindings::ObjcFallbackObjectImp::ObjcFallbackObjectImp):

  • bridge/qt/qt_instance.cpp:

(JSC::Bindings::QtRuntimeObject::QtRuntimeObject):

  • bridge/qt/qt_pixmapruntime.cpp:

(JSC::Bindings::QtPixmapRuntimeObject::QtPixmapRuntimeObject):

  • bridge/qt/qt_runtime.cpp:

(JSC::Bindings::QtRuntimeMethod::QtRuntimeMethod):
(JSC::Bindings::QtRuntimeMethod::finishCreation):

  • bridge/qt/qt_runtime.h:
  • bridge/runtime_array.cpp:

(JSC::RuntimeArray::RuntimeArray):

  • bridge/runtime_array.h:

(JSC::RuntimeArray::create):

  • bridge/runtime_method.cpp:

(JSC::RuntimeMethod::RuntimeMethod):
(JSC::RuntimeMethod::finishCreation):

  • bridge/runtime_method.h:
  • bridge/runtime_object.cpp:

(JSC::Bindings::RuntimeObject::RuntimeObject):

  • bridge/runtime_object.h:

(JSC::Bindings::RuntimeObject::create):

Source/WebKit/mac:

Completed the fifth level of the refactoring to add finishCreation()
methods to all classes within the JSCell hierarchy with non-trivial
constructor bodies.

This primarily consists of pushing the calls to finishCreation() down
into the constructors of the subclasses of the second level of the hierarchy
as well as pulling the finishCreation() calls out into the class's corresponding
create() method if it has one. Doing both simultaneously allows us to
maintain the invariant that the finishCreation() method chain is called exactly
once during the creation of an object, since calling it any other number of
times (0, 2, or more) will cause an assertion failure.

  • Plugins/Hosted/ProxyRuntimeObject.h:
  • Plugins/Hosted/ProxyRuntimeObject.mm:

(WebKit::ProxyRuntimeObject::ProxyRuntimeObject):
(WebKit::ProxyRuntimeObject::finishCreation):

Source/WebKit2:

Completed the fifth level of the refactoring to add finishCreation()
methods to all classes within the JSCell hierarchy with non-trivial
constructor bodies.

This primarily consists of pushing the calls to finishCreation() down
into the constructors of the subclasses of the second level of the hierarchy
as well as pulling the finishCreation() calls out into the class's corresponding
create() method if it has one. Doing both simultaneously allows us to
maintain the invariant that the finishCreation() method chain is called exactly
once during the creation of an object, since calling it any other number of
times (0, 2, or more) will cause an assertion failure.

  • WebProcess/Plugins/Netscape/JSNPMethod.cpp:

(WebKit::JSNPMethod::JSNPMethod):
(WebKit::JSNPMethod::finishCreation):

  • WebProcess/Plugins/Netscape/JSNPMethod.h:

(WebKit::JSNPMethod::create):

  • WebProcess/Plugins/Netscape/JSNPObject.cpp:

(WebKit::JSNPObject::JSNPObject):

  • WebProcess/Plugins/Netscape/JSNPObject.h:

(WebKit::JSNPObject::create):

14:40 Changeset [94874] by commit-queue@webkit.org
  • 2 edits
    1 move in trunk/Source/WebCore

Rename FontGtk.cpp to FontPango.cpp
https://bugs.webkit.org/show_bug.cgi?id=66323

Patch by Rafael Antognolli <antognolli@profusion.mobi> on 2011-09-09
Reviewed by Martin Robinson.

This file will be used by the EFL port too, and since it's not GTK
specific anymore, rename it to something better.

No new functionality so no new tests.

  • GNUmakefile.list.am:
  • platform/graphics/pango/FontPango.cpp: Renamed from Source/WebCore/platform/graphics/gtk/FontGtk.cpp.
14:17 Changeset [94873] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

GTK rebaseline.

  • platform/gtk/css2.1/t090204-display-change-01-b-ao-expected.txt:
13:42 Changeset [94872] by ggaren@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

2011-09-09 Geoffrey Garen <ggaren@apple.com>

Build fix: Guard against double-#define for something already #defined
by the build system.

  • wtf/Platform.h:
12:44 Changeset [94871] by ggaren@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

2011-09-09 Geoffrey Garen <ggaren@apple.com>

Reviewed by Dan Bernstein.

Never #define ENABLE_SINGLE_THREADED, !ENABLE_JSC_MULTIPLE_THREADS, or
!ENABLE_WTF_MULTIPLE_THREADS
https://bugs.webkit.org/show_bug.cgi?id=67860

First step toward making the baseline platform assumption that threads
exist: Never #define ENABLE_SINGLE_THREADED, !ENABLE_JSC_MULTIPLE_THREADS,
or !ENABLE_WTF_MULTIPLE_THREADS.

  • wtf/Platform.h:
11:37 Changeset [94870] by levin@chromium.org
  • 1 edit in branches/chromium/874/Source/WebCore/platform/KURLGoogle.cpp

Merge 94821 - [chromium] KURL::copy doesn't produce something usable on another thread.
https://bugs.webkit.org/show_bug.cgi?id=67809

Reviewed by Adam Barth.

No new functionality exposed so no new test. This was caught by testing code: the thread
sanitizer run in Chromium (http://code.google.com/p/chromium/issues/detail?id=93708).

  • platform/KURLGoogle.cpp:

(WebCore::KURLGooglePrivate::copyTo): Clear out the invalid String so that it will
not be used on another thread.

TBR=levin@chromium.org
Review URL: http://codereview.chromium.org/7867002

11:37 Changeset [94869] by adamk@chromium.org
  • 2 edits in trunk/Source/WebCore

Initialize ExceptionCode in Element::removeAttribute
https://bugs.webkit.org/show_bug.cgi?id=67820

Reviewed by Darin Adler.

Silences valgrind warning reported in http://crbug.com/76490.

No new tests since this would only very occasionally be flaky,
and in the codepath in the valgrind report, the ec is ignored anyway.

  • dom/Element.cpp:

(WebCore::Element::removeAttribute): Initialize ec to 0.

11:21 Changeset [94868] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Buildbot may use RunWebKitTest's evaluateCommand on bots that run nrwt
https://bugs.webkit.org/show_bug.cgi?id=67855

Reviewed by Dirk Pranke.

The bug was caused by the fact some ports use RunWebKitTests instead of NewRunWebKitTests to run tests,
and using RunWebKitTests.evaluateCommand after calling _parseNewRunWebKitTestsOutput.

Fixed the bug by merging evaluateCommand of RunWebKitTests and NewRunWebKitTests.

  • BuildSlaveSupport/build.webkit.org-config/master.cfg:
11:17 Changeset [94867] by mhahnenberg@apple.com
  • 2 edits in trunk/Tools

Add myself to committers.py
https://bugs.webkit.org/show_bug.cgi?id=67853

Reviewed by Darin Adler.

  • Scripts/webkitpy/common/config/committers.py:
11:11 Changeset [94866] by laszlo.1.gombos@nokia.com
  • 9 edits
    1 delete in trunk

[Qt] Remove common.pri
https://bugs.webkit.org/show_bug.cgi?id=67814

Reviewed by Andreas Kling.

.:

  • Source/WebKit.pri: Move rules from common.pri to WebKit.pri.
  • Source/common.pri: Removed.

Source/JavaScriptCore:

Source/WebCore:

No new tests, no change in functionality.

  • CodeGenerators.pri:
  • WebCore.pri:

Tools:

  • Tools.pro:
11:08 Changeset [94865] by inferno@chromium.org
  • 1 edit
    8 adds
    1 delete in trunk/LayoutTests

Unreviewed. Chromium, GTK, Qt rebaselines for r94857.

  • platform/chromium-linux/fast/lists/list-marker-before-content-table-expected.png: Added.
  • platform/chromium-linux/fast/runin/runin-generated-before-content-expected.png: Added.
  • platform/chromium-win-xp/fast/lists: Removed.
  • platform/chromium-win/fast/lists/list-marker-before-content-table-expected.png: Added.
  • platform/chromium-win/fast/runin/runin-generated-before-content-expected.png: Added.
  • platform/gtk/fast/lists/list-marker-before-content-table-expected.txt: Added.
  • platform/gtk/fast/runin/runin-generated-before-content-expected.txt: Added.
  • platform/mac/fast/lists/list-marker-before-content-table-expected.txt: Added.
  • platform/mac/fast/runin/runin-generated-before-content-expected.txt: Added.
  • platform/qt/fast/lists/list-marker-before-content-table-expected.txt: Added.
  • platform/qt/fast/runin/runin-generated-before-content-expected.txt: Added.
11:06 Changeset [94864] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Source/WebCore: Assert being hit in AccessibilityRenderObject::addChildren()
https://bugs.webkit.org/show_bug.cgi?id=61805

Patch by Dominic Mazzoni <dmazzoni@google.com> on 2011-09-09
Reviewed by Chris Fleizach.

Fix nextSibling and previousSibling to handle adjacent continuations
properly, otherwise nodes end up appearing in the accessibility
tree twice (or a debug assertion could be raised).

Test: accessibility/adjacent-continuations-cause-assertion-failure.html

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::previousSibling):
(WebCore::AccessibilityRenderObject::nextSibling):

LayoutTests: Add a test to catch a case where adjacent continuations were
causing nodes to get added to the accessibility tree twice, leading
to an assertion failure or a crash. The test expectations are
currently Mac-specific, so added the test to the Skipped file for
gtk and win.
https://bugs.webkit.org/show_bug.cgi?id=61805

Patch by Dominic Mazzoni <dmazzoni@google.com> on 2011-09-09
Reviewed by Chris Fleizach.

  • accessibility/adjacent-continuations-cause-assertion-failure.html: Added.
  • platform/mac/accessibility/adjacent-continuations-cause-assertion-failure-expected.txt: Added.
11:00 Changeset [94863] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

[NRWT] the nrwt check httpd with --no-http option
https://bugs.webkit.org/show_bug.cgi?id=67835

Patch by Kristóf Kosztyó <kkristof@inf.u-szeged.hu> on 2011-09-09
Reviewed by Tony Chang.

  • Scripts/webkitpy/layout_tests/controllers/manager.py:
  • Scripts/webkitpy/layout_tests/controllers/manager_unittest.py:
10:37 Changeset [94862] by commit-queue@webkit.org
  • 7 edits
    1 add in trunk

[chromium] Implement DRT support for Android.
https://bugs.webkit.org/show_bug.cgi?id=67590

Patch by Hao Zheng <zhenghao@chromium.org> on 2011-09-09
Reviewed by Tony Chang.

Source/WebKit/chromium:

Exclude Android specific files of DRT from other platforms.

  • WebKit.gyp:

Tools:

Add 2 mechanism to make DRT interaction more robust on Android:

  • Send 'QUIT' to DRT to make it stop.
  • Wait until receiving '#READY' from DRT, so that DRT won't miss any

input commands before it starts.
And LayoutTestController.cpp needs to include <cctype> for 'tolower'
and <clocale> for 'LC_ALL' to compile on Android.

Also change to use sigaction instead of signal for TestShellGtk.cpp,
as signal() man page recommends using sigaction().

  • DumpRenderTree/DumpRenderTree.gypi:
  • DumpRenderTree/chromium/DumpRenderTree.cpp:

(main):

  • DumpRenderTree/chromium/LayoutTestController.cpp:
  • DumpRenderTree/chromium/TestShellAndroid.cpp: Added.

(AlarmHandler):
(TestShell::waitTestFinished):
(platformInit):
(openStartupDialog):
(checkLayoutTestSystemDependencies):

  • DumpRenderTree/chromium/TestShellGtk.cpp:

(AlarmHandler):
(TestShell::waitTestFinished):

10:27 Changeset [94861] by rolandsteiner@chromium.org
  • 9 edits
    2 adds in trunk

Implement a WebKitAnimationEvent constructor.
https://bugs.webkit.org/show_bug.cgi?id=67825

Source/WebCore:

Patch by Kentaro Hara <haraken@google.com> on 2011-09-08
Reviewed by Sam Weinig.

There is no spec for the WebKitAnimationEvent constructor
since it is WebKit-specific. However, based on the current
IDL of initWebKitAnimationEvent(), the constructor IDL
should be as follows.

[Constructor(DOMString type, optional WebKitAnimationEventInit eventInitDict)]
interface WebKitAnimationEvent : Event {

...;

}

dictionary WebKitAnimationEventInit : EventInit {

DOMString animationName;
double elapsedTime;

}

Test: fast/events/constructors/webkit-animation-event-constructor.html

  • bindings/generic/EventConstructors.h: Added a definition for the WebKitAnimationEvent constructor.
  • bindings/js/JSEventConstructors.cpp: Added #includes for WebKitAnimationEvent.
  • dom/WebKitAnimationEvent.cpp:

(WebCore::WebKitAnimationEventInit::WebKitAnimationEventInit):
(WebCore::WebKitAnimationEvent::WebKitAnimationEvent):

  • dom/WebKitAnimationEvent.h: Added a definition for WebKitAnimationEventInit.

(WebCore::WebKitAnimationEvent::create):

  • dom/WebKitAnimationEvent.idl: Makes WebKitAnimationEvent constructible.

LayoutTests:

Checks the behavior of the WebKitAnimationEvent constructor.

Patch by Kentaro Hara <haraken@google.com> on 2011-09-08
Reviewed by Sam Weinig.

  • fast/dom/constructed-objects-prototypes-expected.txt:
  • fast/events/constructors/webkit-animation-event-constructor-expected.txt: Added.
  • fast/events/constructors/webkit-animation-event-constructor.html: Added.
  • platform/chromium/test_expectations.txt: Skipped webkit-animation-event-constructor.html, since V8 does not yet have the WebKitAnimationEvent constructor.
10:24 Changeset [94860] by ossy@webkit.org
  • 1 edit
    4 adds in trunk/LayoutTests

[Qt] Unreviewed gardening after r94857. Add platform specific expected files.

  • platform/qt/fast/lists/list-marker-before-content-table-expected.png: Added.
  • platform/qt/fast/lists/list-marker-before-content-table-expected.txt: Added.
  • platform/qt/fast/runin/runin-generated-before-content-expected.png: Added.
  • platform/qt/fast/runin/runin-generated-before-content-expected.txt: Added.
09:58 Changeset [94859] by commit-queue@webkit.org
  • 4 edits
    3 adds in trunk/Source/WebKit/chromium

[Chromium] Add WebSandboxSupport and WebThemeEngine for Android.
https://bugs.webkit.org/show_bug.cgi?id=67584

Patch by Hao Zheng <zhenghao@chromium.org> on 2011-09-09
Reviewed by Steve Block.

Make src/PlatformSupport.cpp and src/WebFrameImpl.cpp compile on
Chromium port for Android.

  • WebKit.gyp:
  • public/android: Added.
  • public/android/WebSandboxSupport.h: Added.
  • public/android/WebThemeEngine.h: Added.

(WebKit::WebThemeEngine::getSize):
(WebKit::WebThemeEngine::paint):

  • src/PlatformSupport.cpp:

(WebCore::PlatformSupport::getFontFamilyForCharacters):
(WebCore::PlatformSupport::getRenderStyleForStrike):

  • src/WebFrameImpl.cpp:
09:49 Changeset [94858] by kevino@webkit.org
  • 2 edits in trunk/Tools

[wx] Unreviewed build fix. Add Source/JavaScriptCore/dfg directory to the build.

09:23 Changeset [94857] by inferno@chromium.org
  • 3 edits
    6 adds in trunk

:before content rendering issues with list markers and run-ins.
https://bugs.webkit.org/show_bug.cgi?id=67735

Source/WebCore:

1) Remove the isAnonymous checks for run-in detection since the
run-in can belong to a node.
2) When the parent has block children, then the list marker will
be enclosed in an anonymous block. In that case, for going to the
next list marker, we need to traverse one level up. We don't need
this check when searching for generated run-in (loop 2), since we
know parent will have inline children, so the list marker wont be
enclosed in an anonymous block.

Reviewed by Dave Hyatt.

Tests: fast/lists/list-marker-before-content-table.html

fast/runin/runin-generated-before-content.html

  • rendering/RenderObjectChildList.cpp:

(WebCore::RenderObjectChildList::beforePseudoElementRenderer):

LayoutTests:

Reviewed by Dave Hyatt.

  • fast/lists/list-marker-before-content-table-expected.png: Added.
  • fast/lists/list-marker-before-content-table-expected.txt: Added.
  • fast/lists/list-marker-before-content-table.html: Added.
  • fast/runin/runin-generated-before-content-expected.png: Added.
  • fast/runin/runin-generated-before-content-expected.txt: Added.
  • fast/runin/runin-generated-before-content.html: Added.
09:16 Changeset [94856] by japhet@chromium.org
  • 2 edits
    7 adds
    1 delete in trunk/LayoutTests

2011-09-09 Nate Chapin <japhet@chromium.org>

Chromium leopard css3 baselines, and new mac gpu baselines.

  • platform/chromium-cg-mac-leopard/css3: Added.
  • platform/chromium-cg-mac-leopard/css3/bdi-element-expected.png: Added.
  • platform/chromium-cg-mac-leopard/css3/bdi-element-expected.txt: Added.
  • platform/chromium-cg-mac-leopard/css3/unicode-bidi-isolate-aharon-expected.png: Added.
  • platform/chromium-cg-mac-leopard/css3/unicode-bidi-isolate-basic-expected.png: Added.
  • platform/chromium-gpu-cg-mac/platform/chromium/compositing/zoom-animator-scale-test-expected.png: Added.
  • platform/chromium-gpu-win/platform/chromium/compositing/zoom-animator-scale-test-expected.txt: Removed.
  • platform/chromium-gpu/platform/chromium/compositing/zoom-animator-scale-test-expected.txt: Added.
  • platform/chromium/test_expectations.txt:
08:21 Changeset [94855] by podivilov@chromium.org
  • 6 edits
    1 add in trunk/Source/WebCore

Web Inspector: introduce JavaScriptSourceFrame class.
https://bugs.webkit.org/show_bug.cgi?id=67838

SourceFrame should not deal with JavaScript debugging since it is a base class for all source frame implementations.

Reviewed by Pavel Feldman.

  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/front-end/JavaScriptSourceFrame.js: Added.

(WebInspector.JavaScriptSourceFrame):
(WebInspector.SourceFrameDelegateForScriptsPanel): moved from ScriptsPanel.js
(WebInspector.SourceFrameDelegateForScriptsPanel.prototype.requestContent):
(WebInspector.SourceFrameDelegateForScriptsPanel.prototype.debuggingSupported):
(WebInspector.SourceFrameDelegateForScriptsPanel.prototype.setBreakpoint):
(WebInspector.SourceFrameDelegateForScriptsPanel.prototype.updateBreakpoint):
(WebInspector.SourceFrameDelegateForScriptsPanel.prototype.removeBreakpoint):
(WebInspector.SourceFrameDelegateForScriptsPanel.prototype.findBreakpoint):
(WebInspector.SourceFrameDelegateForScriptsPanel.prototype.continueToLine):
(WebInspector.SourceFrameDelegateForScriptsPanel.prototype.canEditScriptSource):
(WebInspector.SourceFrameDelegateForScriptsPanel.prototype.setScriptSource):
(WebInspector.SourceFrameDelegateForScriptsPanel.prototype.setScriptSourceIsBeingEdited):
(WebInspector.SourceFrameDelegateForScriptsPanel.prototype.debuggerPaused):
(WebInspector.SourceFrameDelegateForScriptsPanel.prototype.evaluateInSelectedCallFrame):
(WebInspector.SourceFrameDelegateForScriptsPanel.prototype.releaseEvaluationResult):
(WebInspector.SourceFrameDelegateForScriptsPanel.prototype.suggestedFileName):

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype._createSourceFrame):

  • inspector/front-end/WebKit.qrc:
  • inspector/front-end/inspector.html:
08:15 Changeset [94854] by caryclark@google.com
  • 1 edit
    199 adds in trunk/LayoutTests

Unreviewed; new baselines (Skia on Mac, GPU edition)
Added reference images.

  • platform/chromium-gpu-mac: Added.

(remaining files omitted for brevity)

07:47 Changeset [94853] by ossy@webkit.org
  • 2 edits in trunk/Tools

Unreviewed, rolling out r94851.
http://trac.webkit.org/changeset/94851
https://bugs.webkit.org/show_bug.cgi?id=67847

It broke a webkitpy test (Requested by ossy on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-09-09

  • Scripts/webkitpy/layout_tests/controllers/manager.py:
07:32 Changeset [94852] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/qt

[Qt] QWebElement::encloseWith doesn't work at all
https://bugs.webkit.org/show_bug.cgi?id=62464

Enclosing an element means wrapping something around an element,
not inserting something into an element. Therefore we need to check
if the parent of the element allows insertion rather than checking
the element itself.

Patch by Zeno Albisser <zeno.albisser@nokia.com> on 2011-09-09
Reviewed by Andreas Kling.

  • Api/qwebelement.cpp:

(QWebElement::prependOutside):
(QWebElement::appendOutside):
(QWebElement::encloseWith):

  • tests/qwebelement/tst_qwebelement.cpp:

(tst_QWebElement::appendAndPrepend):
(tst_QWebElement::encloseWith):

06:08 Changeset [94851] by ossy@webkit.org
  • 2 edits in trunk/Tools

[NRWT] the nrwt check httpd with --no-http option
https://bugs.webkit.org/show_bug.cgi?id=67835

Patch by Kristóf Kosztyó <kkristof@inf.u-szeged.hu> on 2011-09-09
Reviewed by Csaba Osztrogonác.

  • Scripts/webkitpy/layout_tests/controllers/manager.py:
05:55 Changeset [94850] by zoltan@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

[Qt] Unreviewed. Update test expectations for css3/bdi-element.html after r94822

Patch by Kristóf Kosztyó <kkristof@inf.u-szeged.hu> on 2011-09-09

  • platform/qt/css3/bdi-element-expected.png: Added.
  • platform/qt/css3/bdi-element-expected.txt: Added.
05:41 Changeset [94849] by kov@webkit.org
  • 1 edit
    1 add in trunk/Source/WebKit/gtk/po

Canadian English translation.
https://bugzilla.gnome.org/show_bug.cgi?id=610152

Patch by Tiffany Antopolski <tiffany@antopolski.com> on 2011-09-09
Reviewed by Gustavo Noronha.

  • en_CA.po: Added.
05:27 Changeset [94848] by zoltan@webkit.org
  • 2 edits in trunk/LayoutTests

[Qt] http/tests/security/xssAuditor/script-tag-with-16bit-unicode4.html fails on Qt
https://bugs.webkit.org/show_bug.cgi?id=67842

Patch by Kristóf Kosztyó <kkristof@inf.u-szeged.hu> on 2011-09-09

  • platform/qt/Skipped:
04:39 Changeset [94847] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/chromium

Exposing the isLink method on WebNode for the Chromium port on Android.

Patch by Martin Kosiba <mkosiba@chromium.org> on 2011-09-09
Reviewed by Darin Fisher.

  • public/WebNode.h:
  • src/WebNode.cpp:

(WebKit::WebNode::isLink):

04:34 Changeset [94846] by ossy@webkit.org
  • 4 edits in trunk/Source/WebCore

Unreviewed, rolling out r94845.
http://trac.webkit.org/changeset/94845
https://bugs.webkit.org/show_bug.cgi?id=67839

This patch kicked Qt-SL bots, but we don't need this
modification. (Requested by ossy_ on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-09-09

  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
  • platform/mac/WebVideoFullscreenController.mm:
  • platform/mac/WebVideoFullscreenHUDWindowController.mm:
04:04 Changeset [94845] by ossy@webkit.org
  • 4 edits in trunk/Source/WebCore

[Qt][Mac]REGRESSION(r94774): Build is broken
https://bugs.webkit.org/show_bug.cgi?id=67799

It seems these files didn't rebuilt because of a
dependency bug. Touch them to trigger a rebuild.

  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
  • platform/mac/WebVideoFullscreenController.mm:
  • platform/mac/WebVideoFullscreenHUDWindowController.mm:
03:41 Changeset [94844] by apavlov@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, Chromium valgrind build fix.

Web Inspector: [Chromium] Valgrind signals use of uninitialized field in InspectorStyleSheetForInlineStyle
https://bugs.webkit.org/show_bug.cgi?id=67837

  • inspector/InspectorStyleSheet.cpp:

(WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle):

03:32 Changeset [94843] by commit-queue@webkit.org
  • 3 edits
    3 deletes in trunk

Unreviewed, rolling out r94536.
http://trac.webkit.org/changeset/94536
https://bugs.webkit.org/show_bug.cgi?id=67836

breaks absoluteLocation() of RelatedMouseEvent (Requested by
jknotten on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-09-09

Source/WebCore:

  • dom/MouseRelatedEvent.cpp:

(WebCore::MouseRelatedEvent::MouseRelatedEvent):

LayoutTests:

  • fast/events/page-scaled-mouse-click-expected.txt: Removed.
  • fast/events/page-scaled-mouse-click.html: Removed.
  • fast/events/script-tests/page-scaled-mouse-click.js: Removed.
03:16 Changeset [94842] by apavlov@chromium.org
  • 9 edits in trunk

Web Inspector: live edit both for JS and CSS is not discoverable.
https://bugs.webkit.org/show_bug.cgi?id=65962

Source/WebCore:

Add the "Edit" button to SourceFrame, so that resources/scripts can be edited both in the
Resources and the Scripts panels. The button is grayed out if the resource/script is not editable.

Reviewed by Yury Semikhatsky.

  • inspector/front-end/Images/statusbarButtonGlyphs.png:
  • inspector/front-end/ResourceView.js:

(WebInspector.EditableResourceSourceFrame.prototype.canEditSource):

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype.get statusBarItems):
(WebInspector.ScriptsPanel.prototype.set visibleView):

  • inspector/front-end/SourceFrame.js:

(WebInspector.SourceFrame):
(WebInspector.SourceFrame.prototype.get statusBarItems):
(WebInspector.SourceFrame.prototype._initializeTextViewer):
(WebInspector.SourceFrame.prototype._editButtonClicked):
(WebInspector.SourceFrame.prototype.canEditSource):
(WebInspector.SourceFrame.prototype.startEditing):
(WebInspector.SourceFrame.prototype.commitEditing):
(WebInspector.SourceFrame.prototype._setReadOnly):
(WebInspector.TextViewerDelegateForSourceFrame.prototype.doubleClick):

  • inspector/front-end/TextViewer.js:

(WebInspector.TextEditorMainPanel.prototype.set readOnly):
(WebInspector.TextEditorMainPanel.prototype._updateSelectionOnStartEditing):

  • inspector/front-end/inspector.css:

(button.edit-source-status-bar-item .glyph):
(button.edit-source-status-bar-item.toggled-on .glyph):

LayoutTests:

Reviewed by Yury Semikhatsky.

  • inspector/debugger/scripts-panel.html:
02:13 Changeset [94841] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Crashes in WebCore::AppendNodeCommand::create().
https://bugs.webkit.org/show_bug.cgi?id=67767

Patch by Shinya Kawanaka <shinyak@google.com> on 2011-09-09
Reviewed by Darin Adler.

Source/WebCore:

In CompositeEditCommand::closeParagraphUnderNewElement(), lastNode could be a non Element node.
The current code assumes lastNode is an Element node. This patch checks it.

Test: editing/execCommand/ident-crashes-topnode-is-text.html

  • editing/CompositeEditCommand.cpp:

(WebCore::CompositeEditCommand::cloneParagraphUnderNewElement): Added an element node check.

LayoutTests:

Added a crash test case.

  • editing/execCommand/ident-crashes-topnode-is-text-expected.txt: Added.
  • editing/execCommand/ident-crashes-topnode-is-text.html: Added.
02:02 Changeset [94840] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Crashes in WebCore::ApplyStyleCommand.doApply()
https://bugs.webkit.org/show_bug.cgi?id=67765

Patch by Shinya Kawanaka <shinyak@google.com> on 2011-09-09
Reviewed by Ryosuke Niwa.

WebCore::enclosingBlock may return null, but ApplyStyleCommand::applyBlockStyle did not check it. This patch make it to be checked.

Source/WebCore:

Test: editing/style/remove-format-without-enclosing-block.html

  • editing/ApplyStyleCommand.cpp:

(WebCore::ApplyStyleCommand::applyBlockStyle): Added null check.

LayoutTests:

  • editing/style/remove-format-without-enclosing-block-expected.txt: Added.
  • editing/style/remove-format-without-enclosing-block.html: Added.
01:16 Changeset [94839] by loislo@chromium.org
  • 2 edits in trunk/LayoutTests

2011-09-09 Ilya Tikhonovsky <loislo@chromium.org>

Unreviewed. Update test expectations for hyphenate-limit-lines.html.

  • platform/chromium/test_expectations.txt:
00:14 Changeset [94838] by simonjam@chromium.org
  • 3 edits in trunk/Source/WebCore

[Chromium] Fix leak of Skia stream with custom CSS fonts
https://bugs.webkit.org/show_bug.cgi?id=67815

Reviewed by Adam Barth.

Test: fast/css/font-face-opentype.html under valgrind

  • platform/graphics/mac/FontCustomPlatformData.cpp:

(WebCore::createFontCustomPlatformData):

  • platform/graphics/skia/FontCustomPlatformData.cpp:

(WebCore::createFontCustomPlatformData):

Note: See TracTimeline for information about the timeline view.