WebKit-https.git
7 years agoRefined power management in SunSpider 1.0.2
ggaren@apple.com [Tue, 8 Oct 2013 22:40:14 +0000 (22:40 +0000)]
Refined power management in SunSpider 1.0.2
https://bugs.webkit.org/show_bug.cgi?id=122525

Reviewed by Gavin Barraclough.

* hosted/sunspider.css:
(#frameparent):
(#countdown):
* resources/TEMPLATE.html: Provide an explicit countdown element in the
parent, instead of hacking it into each child frame.

* resources/driver-TEMPLATE.html: Be more explicit about how we respond
to power management. Just moving setTimeout(0) inside the loop is a
little too subtle, and may not work across browsers.

Also, leave a little extra time after changing the countdown graphic,
to give the browser some time to paint.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157140 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed followup to https://bugs.webkit.org/show_bug.cgi?id=122523
dino@apple.com [Tue, 8 Oct 2013 21:57:23 +0000 (21:57 +0000)]
Unreviewed followup to https://bugs.webkit.org/show_bug.cgi?id=122523
This test now passes, so updating expected file.

* fast/canvas/webgl/webgl-unprefixed-context-id-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157139 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoSupport unprefixed WebGL context creation
dino@apple.com [Tue, 8 Oct 2013 21:17:39 +0000 (21:17 +0000)]
Support unprefixed WebGL context creation
https://bugs.webkit.org/show_bug.cgi?id=122523
<rdar://problem/15179463>

Reviewed by Simon Fraser.

Source/WebCore:

Add support for the unprefixed "webgl" canvas context type.

Test: fast/canvas/webgl/unprefixed-context.html

* html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::is3dType):
* inspector/InjectedScriptCanvasModuleSource.js:

LayoutTests:

Tests that we can create a context without the
"experimental-" prefix. Meanwhile, most of the other
WebGL tests should start to use the unprefixed
form automatically (the helper script attempts
"webgl" first).

* fast/canvas/webgl/unprefixed-context-expected.txt: Added.
* fast/canvas/webgl/unprefixed-context.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157138 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoWebProcess crash on SAP WebCycle web app
andersca@apple.com [Tue, 8 Oct 2013 21:05:35 +0000 (21:05 +0000)]
WebProcess crash on SAP WebCycle web app
https://bugs.webkit.org/show_bug.cgi?id=122520
<rdar://problem/15030605>

Reviewed by Darin Adler.

Stop trying to use RunLoop to manage the top-level run loop and just have the child process and their
delegate subclasses start and stop the run loops. This fixes a bug with showModalDialog where we would
unintentionally call -[NSApp stop] when closing a modal dialog.

This also lets us move all knowledge of NSApplication from RunLoop. (Both the web process and plug-in process
need to use -[NSApp run] and -[NSApp stop:]).

* PluginProcess/EntryPoint/mac/LegacyProcess/PluginProcessMain.mm:
(WebKit::PluginProcessMainDelegate::doPreInitializationWork):
Remove call to RunLoop::setUseApplicationRunLoopOnMainRunLoop. Add a startRunLoop override that calls
-[NSApp run].

* PluginProcess/EntryPoint/mac/XPCService/PluginServiceEntryPoint.mm:
(PluginServiceInitializer):
Remove call to RunLoop::setUseApplicationRunLoopOnMainRunLoop.

* PluginProcess/PluginProcess.h:
Add stopRunLoop() override on Mac.

* PluginProcess/mac/PluginProcessMac.mm:
(WebKit::PluginProcess::stopRunLoop):
Call -[NSApp stop:] and tickle the event system.

* Shared/ChildProcess.cpp:
(WebKit::ChildProcess::stopRunLoop):
Add default implementation that just calls RunLoop::main()->stop().

(WebKit::ChildProcess::terminate):
Call stopRunLoop().

* Shared/ChildProcess.h:
* Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessEntryPoint.h:
Add startRunLoop member function and call it instead of RunLoop::run().

* Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessEntryPoint.mm:
(WebKit::ChildProcessMainDelegate::startRunLoop):
Call RunLoop::run().

* WebProcess/EntryPoint/mac/LegacyProcess/WebContentProcessMain.mm:
(WebKit::WebContentProcessMainDelegate::doPreInitializationWork):
Remove call to RunLoop::setUseApplicationRunLoopOnMainRunLoop.
Add startRunLoop override that calls -[NSApp run].

* WebProcess/EntryPoint/mac/XPCService/WebContentServiceEntryPoint.mm:
(WebContentServiceInitializer):
Remove call to RunLoop::setUseApplicationRunLoopOnMainRunLoop.

* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::didClose):
Call stopRunLoop().

* WebProcess/WebProcess.h:
Add stopRunLoop override.

* WebProcess/mac/WebProcessMac.mm:
(WebKit::WebProcess::stopRunLoop):
Call -[NSApp stop:] and tickle the event system.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157137 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoRename EventDispatchMediator::dispatchEvent to mediateAndDispatchEvent
rniwa@webkit.org [Tue, 8 Oct 2013 20:58:51 +0000 (20:58 +0000)]
Rename EventDispatchMediator::dispatchEvent to mediateAndDispatchEvent
https://bugs.webkit.org/show_bug.cgi?id=122522

Reviewed by Darin Adler.

Renamed EventDispatchMediator::dispatchEvent to EventDispatchMediator::mediateAndDispatchEvent
to make the future refactoring easier.

* Modules/indieui/UIRequestEvent.cpp:
(WebCore::UIRequestEventDispatchMediator::mediateAndDispatchEvent):
* Modules/indieui/UIRequestEvent.h:
* dom/EventDispatchMediator.cpp:
(WebCore::EventDispatchMediator::mediateAndDispatchEvent):
* dom/EventDispatchMediator.h:
* dom/EventDispatcher.cpp:
(WebCore::EventDispatcher::dispatchEvent):
* dom/FocusEvent.cpp:
(WebCore::FocusEventDispatchMediator::mediateAndDispatchEvent):
(WebCore::BlurEventDispatchMediator::mediateAndDispatchEvent):
(WebCore::FocusInEventDispatchMediator::mediateAndDispatchEvent):
(WebCore::FocusOutEventDispatchMediator::mediateAndDispatchEvent):
* dom/FocusEvent.h:
* dom/GestureEvent.cpp:
(WebCore::GestureEventDispatchMediator::mediateAndDispatchEvent):
* dom/GestureEvent.h:
* dom/KeyboardEvent.cpp:
(WebCore::KeyboardEventDispatchMediator::mediateAndDispatchEvent):
* dom/KeyboardEvent.h:
* dom/MouseEvent.cpp:
(WebCore::MouseEventDispatchMediator::mediateAndDispatchEvent):
* dom/MouseEvent.h:
* dom/TouchEvent.cpp:
(WebCore::TouchEventDispatchMediator::mediateAndDispatchEvent):
* dom/TouchEvent.h:
* dom/WheelEvent.cpp:
(WebCore::WheelEventDispatchMediator::mediateAndDispatchEvent):
* dom/WheelEvent.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157136 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[MathML] Use of floating point floor/ceil on LayoutUnits seems wrong
bfulgham@apple.com [Tue, 8 Oct 2013 20:42:32 +0000 (20:42 +0000)]
[MathML] Use of floating point floor/ceil on LayoutUnits seems wrong
https://bugs.webkit.org/show_bug.cgi?id=122367

Reviewed by Darin Adler.

* rendering/mathml/RenderMathMLOperator.cpp:
(WebCore::RenderMathMLOperator::paintCharacter): Use member methods to compute
correct floor/ceil values for LayoutUnits.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157135 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoSkip a new WebGL test along with the others.
kov@webkit.org [Tue, 8 Oct 2013 20:38:33 +0000 (20:38 +0000)]
Skip a new WebGL test along with the others.

* platform/gtk/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157134 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoVideo -> pixel buffer output should not manage color spaces
dino@apple.com [Tue, 8 Oct 2013 20:34:22 +0000 (20:34 +0000)]
Video -> pixel buffer output should not manage color spaces
https://bugs.webkit.org/show_bug.cgi?id=122486

Reviewed by Tim Horton.

Source/WebCore:

On Mac, when we draw a video into a canvas or WebGL, the
output of the video should not be color managed. Instead, leave it
as DeviceRGB so that it matches other colors in those elements.
We'll hopefully solve this properly soon - making everything sRGB.

Test: media/video-canvas-drawing-output.html

* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::createImageForTimeInRect): Pass on
a CGImageRef via CGImageCreateCopyWithColorSpace rather than the raw data.
(WebCore::MediaPlayerPrivateAVFoundationObjC::paintWithVideoOutput): Tell CoreImage
to allocate a pixel buffer that is unmanaged.

LayoutTests:

* media/video-canvas-drawing-output-expected.txt: Added.
* media/video-canvas-drawing-output.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157133 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[MediaStream] Fix segfault in initializeMockSources()
lauro.neto@openbossa.org [Tue, 8 Oct 2013 20:30:35 +0000 (20:30 +0000)]
[MediaStream] Fix segfault in initializeMockSources()
https://bugs.webkit.org/show_bug.cgi?id=122517

Reviewed by Darin Adler.

Calling release() and a member function on the same RefPtr
as arguments to a function can lead to segfaults if the release
call is evaluated first.

* platform/mock/MockMediaStreamCenter.cpp:
(WebCore::initializeMockSources):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157132 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoFix ruby LoadError when running run-javascriptcore-tests.
mark.lam@apple.com [Tue, 8 Oct 2013 20:26:34 +0000 (20:26 +0000)]
Fix ruby LoadError when running run-javascriptcore-tests.
https://bugs.webkit.org/show_bug.cgi?id=122519.

Reviewed by Mark Hahnenberg.

The scripts needed to explicitly require 'rubygems' for older versions of ruby
(versions before 1.9).

* Scripts/jsc-stress-test-helpers/profiler-test-helper:
* Scripts/run-jsc-stress-tests:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157131 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed gardening.
kov@webkit.org [Tue, 8 Oct 2013 20:25:17 +0000 (20:25 +0000)]
Unreviewed gardening.

* platform/gtk/TestExpectations: fast/backgrounds/background-opaque-images-over-color.html
failing.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157130 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[CSSRegions] Regions with overflow: hidden should paint over positioned sibling
mihnea@adobe.com [Tue, 8 Oct 2013 20:03:53 +0000 (20:03 +0000)]
[CSSRegions] Regions with overflow: hidden should paint over positioned sibling
https://bugs.webkit.org/show_bug.cgi?id=122389

Reviewed by Alexandru Chiculita.

Source/WebCore:

As a follow-up from https://bugs.webkit.org/show_bug.cgi?id=122321, a region should not
be a normal flow layer when it has overflow clip. Change existing test by adding overflow:hidden
to the region element.

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::shouldBeNormalFlowOnly):

LayoutTests:

Add overflow: hidden to the region to test that it does not move to the normal flow layers.

* fast/regions/layers/region-normalflow-stacking-context.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157129 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed gardening, these tests had a couple pixels shift at some point,
kov@webkit.org [Tue, 8 Oct 2013 19:58:08 +0000 (19:58 +0000)]
Unreviewed gardening, these tests had a couple pixels shift at some point,
needing a new baseline.

* platform/gtk/fast/hidpi/clip-text-in-hidpi-expected.txt:
* platform/gtk/fast/hidpi/image-set-background-dynamic-expected.txt:
* platform/gtk/fast/hidpi/image-set-border-image-dynamic-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157128 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoSimplify the loop in EventRetargeter::calculateEventPath
rniwa@webkit.org [Tue, 8 Oct 2013 19:44:31 +0000 (19:44 +0000)]
Simplify the loop in EventRetargeter::calculateEventPath
https://bugs.webkit.org/show_bug.cgi?id=122500

Reviewed by Antti Koivisto.

Replaced the convoluted loop by two nested loops to make semantics clear.

* dom/EventRetargeter.cpp:
(WebCore::EventRetargeter::calculateEventPath):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157127 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Mac] Unskip editing/spelling/spelling-changed-text.html
g.czajkowski@samsung.com [Tue, 8 Oct 2013 19:27:09 +0000 (19:27 +0000)]
[Mac] Unskip editing/spelling/spelling-changed-text.html
https://bugs.webkit.org/show_bug.cgi?id=122502

Unreviewed gardening.

* platform/mac/TestExpectations:
spelling-changed.html is passing after r156901.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157126 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed gardening. A couple of media-query tests rely on 3d transforms,
kov@webkit.org [Tue, 8 Oct 2013 19:13:58 +0000 (19:13 +0000)]
Unreviewed gardening. A couple of media-query tests rely on 3d transforms,
so skip them along with the 3d transforms tests.

* platform/gtk/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157125 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[GTK] Leak: GdkEvent retured by gtk_get_current_event is not freed.
changseok.oh@collabora.com [Tue, 8 Oct 2013 18:25:16 +0000 (18:25 +0000)]
[GTK] Leak: GdkEvent retured by gtk_get_current_event is not freed.
https://bugs.webkit.org/show_bug.cgi?id=122506

Reviewed by Gustavo Noronha Silva.

Gdk event returned by gtk_get_current_event should be freed after using it.

No functionality changed.

* platform/gtk/PopupMenuGtk.cpp:
(WebCore::PopupMenuGtk::show):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157124 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUse references in EventRetargeter::calculateEventPath and EventRetargeter::eventTarge...
rniwa@webkit.org [Tue, 8 Oct 2013 18:03:29 +0000 (18:03 +0000)]
Use references in EventRetargeter::calculateEventPath and EventRetargeter::eventTargetRespectingTargetRules
https://bugs.webkit.org/show_bug.cgi?id=122494

Reviewed by Antti Koivisto.

Use referenecs instead of pointers in ventRetargeter's calculateEventPath and eventTargetRespectingTargetRules.
Also replace Vector<EventTarget*, 32> targetStack by a single pointer since we only append an item to
the vector when it's empty and we always use the last item.

* dom/EventDispatcher.cpp:
(WebCore::EventDispatcher::EventDispatcher):
(WebCore::EventDispatcher::dispatchScopedEvent):
(WebCore::EventDispatcher::dispatch):
(WebCore::EventDispatcher::dispatchEventPostProcess):
* dom/EventDispatcher.h:
* dom/EventRetargeter.cpp:
(WebCore::EventRetargeter::calculateEventPath):
* dom/EventRetargeter.h:
(WebCore::EventRetargeter::eventTargetRespectingTargetRules):
* dom/Node.cpp:
(WebCore::Node::dispatchScopedEventDispatchMediator):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157123 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed, add my new email to contributors.json.
ch.dumez@sisa.samsung.com [Tue, 8 Oct 2013 17:59:20 +0000 (17:59 +0000)]
Unreviewed, add my new email to contributors.json.

Patch by Christophe Dumez <ch.dumez@sisa.samsung.com> on 2013-10-08

* Scripts/webkitpy/common/config/contributors.json:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157122 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[CSSRegions] Computed z-Index should return 0 instead of auto for a region
mihnea@adobe.com [Tue, 8 Oct 2013 17:33:46 +0000 (17:33 +0000)]
[CSSRegions] Computed z-Index should return 0 instead of auto for a region
https://bugs.webkit.org/show_bug.cgi?id=122405

Reviewed by David Hyatt.

Source/WebCore:

Test: fast/regions/layers/region-zIndex-computedStyle.html

Adjust the z-index value for a region. Also, since a box with a z-Index
that is non-auto receives a layer, i removed the requiresLayer override
in RenderRegion and RenderMultiColumnSet.

* css/StyleResolver.cpp:
(WebCore::StyleResolver::adjustRenderStyle):
* rendering/RenderMultiColumnSet.cpp:
* rendering/RenderMultiColumnSet.h:
* rendering/RenderRegion.cpp:
* rendering/RenderRegion.h:
* rendering/style/RenderStyle.h:

LayoutTests:

* fast/regions/layers/region-zIndex-computedStyle-expected.txt: Added.
* fast/regions/layers/region-zIndex-computedStyle.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157121 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[CSS Regions] Widows don't work if the first line in a region is aligned with the...
abucur@adobe.com [Tue, 8 Oct 2013 17:33:05 +0000 (17:33 +0000)]
[CSS Regions] Widows don't work if the first line in a region is aligned with the top of the region
https://bugs.webkit.org/show_bug.cgi?id=122450

Reviewed by David Hyatt.

Source/WebCore:

The patch adds a new function updateRegionForLine that updates the containing region for a line and the
flag used to determine if it's the first line in that region. This is necessary because the code in
adjustLinePositionForPagination is not sufficient to determine when an unforced break occurs and the line
being positioned is the first one in the fragmentation container or not.

Test: fast/regions/regions-widows-float-top-aligned.html

* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::adjustLinePositionForPagination): Added FIXME comment.
* rendering/RenderBlockFlow.h:
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlock::layoutRunsAndFloatsInRange):
(WebCore::RenderBlock::linkToEndLineIfNeeded):
(WebCore::RenderBlock::determineStartPosition):
(WebCore::RenderBlockFlow::updateRegionForLine): New function used to update the containing region and
the first line flag.

LayoutTests:

Simple test veryfing that widows are correctly computed when there is a float affecting the lines
and when they are vertically aligned with the regions height.

* fast/regions/regions-widows-float-top-aligned-expected.html: Added.
* fast/regions/regions-widows-float-top-aligned.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157120 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoJSManagedValue should be able to store non-object JSValues
mhahnenberg@apple.com [Tue, 8 Oct 2013 17:25:30 +0000 (17:25 +0000)]
JSManagedValue should be able to store non-object JSValues
https://bugs.webkit.org/show_bug.cgi?id=122351

Reviewed by Oliver Hunt.

We decided not to support this because we thought it didn't make sense to have a
"weak" JSValue that wasn't an object.

Our general thought process was if you have a JSObject-ObjC object pair (i.e. an
Obj-C object that you exported to JavaScript-land), it makes more sense to store
a non-object JSValue on the JavaScript-land version of the object rather than as
an ivar in the Objective-C object.

In retrospect, this may not have been a good decision at least w.r.t. consistency
in client code. If you're storing a bag of JSValues off an Obj-C object, you'd
like to store all of them either in ObjC-land or JavaScript-land, but doing some
in one and some in the other doesn't sound too good. Also, what if the object you
want to hang these values off of doesn't have a corresponding object in JavaScript-
land in which to store them?

The solution is to fix JSManagedValue to be able to reference non-object JSValues.
Right now, all JSManagedValues contain a Weak<JSObject>. We'll change this so that
they can contain either a non-cell JSValue or a JSObject*, along with a weak
reference to the JSGlobalObject for reconstructing a JSValue later on.

* API/JSManagedValue.mm:
(PrimitiveOrObject::PrimitiveOrObject):
(PrimitiveOrObject::~PrimitiveOrObject):
(PrimitiveOrObject::clear):
(PrimitiveOrObject::isClear):
(PrimitiveOrObject::isSet):
(PrimitiveOrObject::isPrimitive):
(PrimitiveOrObject::isObject):
(PrimitiveOrObject::setPrimitive):
(PrimitiveOrObject::setObject):
(PrimitiveOrObject::object):
(PrimitiveOrObject::primitive):
(-[JSManagedValue initWithValue:]):
(-[JSManagedValue value]):
(-[JSManagedValue disconnectValue]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157119 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed gardening. Adding ImageOnlyFailure expectations to:
kov@webkit.org [Tue, 8 Oct 2013 17:16:17 +0000 (17:16 +0000)]
Unreviewed gardening. Adding ImageOnlyFailure expectations to:

    - fast/regions/selection/selecting-text-ignoring-region-horiz-bt.html
    - fast/regions/selection/selecting-text-ignoring-region-vert-lr.html
    - fast/regions/selection/selecting-text-in-2-regions-horiz-bt.html
    - fast/regions/selection/selecting-text-in-2-regions-vert-lr.html

* platform/gtk/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157118 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoLayout Test inspector/styles/add-new-rule-with-style-after-body.html is flaky
ap@apple.com [Tue, 8 Oct 2013 17:12:06 +0000 (17:12 +0000)]
Layout Test inspector/styles/add-new-rule-with-style-after-body.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=122510

* platform/mac/TestExpectations: Marking as such.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157117 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoLayout Test inspector/debugger/debugger-activation-crash2.html is flaky
ap@apple.com [Tue, 8 Oct 2013 17:05:33 +0000 (17:05 +0000)]
Layout Test inspector/debugger/debugger-activation-crash2.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=122509

* platform/mac/TestExpectations: Marking as such.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157116 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoLayout Test compositing/video/video-reflection.html is flaky
ap@apple.com [Tue, 8 Oct 2013 16:52:52 +0000 (16:52 +0000)]
Layout Test compositing/video/video-reflection.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=122508

* platform/mac/TestExpectations: Marking as such.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157115 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoLayout Test media/track/track-cue-rendering.html is flaky
ap@apple.com [Tue, 8 Oct 2013 16:47:17 +0000 (16:47 +0000)]
Layout Test media/track/track-cue-rendering.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=122507

* platform/mac/TestExpectations: Marking as such.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157114 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed, rolling out r157080.
kov@webkit.org [Tue, 8 Oct 2013 16:43:47 +0000 (16:43 +0000)]
Unreviewed, rolling out r157080.
http://trac.webkit.org/changeset/157080

Not a proper baseline

* platform/gtk/fast/regions/selection/selecting-text-ignoring-region-horiz-bt-expected.png: Removed.
* platform/gtk/fast/regions/selection/selecting-text-ignoring-region-vert-lr-expected.png: Removed.
* platform/gtk/fast/regions/selection/selecting-text-in-2-regions-horiz-bt-expected.png: Removed.
* platform/gtk/fast/regions/selection/selecting-text-in-2-regions-vert-lr-expected.png: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157113 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed build correction.
bfulgham@apple.com [Tue, 8 Oct 2013 16:42:03 +0000 (16:42 +0000)]
Unreviewed build correction.

* Scripts/webkitpy/port/win.py:
(WinPort.write_registry_value): Use string representation of error message to avoid
format conversion problem.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157112 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoFlaky Test: media/video-layer-crash.html
ap@apple.com [Tue, 8 Oct 2013 16:38:16 +0000 (16:38 +0000)]
Flaky Test: media/video-layer-crash.html
https://bugs.webkit.org/show_bug.cgi?id=114744

* platform/mac/TestExpectations: Marking as such.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157111 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoGet EFL and GTK compiling with media stream enabled
commit-queue@webkit.org [Tue, 8 Oct 2013 16:36:06 +0000 (16:36 +0000)]
Get EFL and GTK compiling with media stream enabled
https://bugs.webkit.org/show_bug.cgi?id=122505

Patch by Thiago de Barros Lacerda <thiago.lacerda@openbossa.org> on 2013-10-08
Reviewed by Philippe Normand.

After r157068

No new tests needed.

* GNUmakefile.list.am:
* UseJSC.cmake:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157110 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoWebNetscapePluginView should no longer use deleteAllValues
darin@apple.com [Tue, 8 Oct 2013 16:31:36 +0000 (16:31 +0000)]
WebNetscapePluginView should no longer use deleteAllValues
https://bugs.webkit.org/show_bug.cgi?id=122495

Reviewed by Anders Carlsson.

* Plugins/WebNetscapePluginView.h: Use unique_ptr for both the pointer to
the timers hash table, and for the values in the hash table.

* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView stopTimers]): Rewrote loop so it works with unique_ptr.
(-[WebNetscapePluginView startTimers]): Ditto.
(-[WebNetscapePluginView fini]): Removed unneeded code to delete timers.
(-[WebNetscapePluginView scheduleTimerWithInterval:repeat:timerFunc:]): Make
the timers hash table with make-unique. Fixed the loop that chooses the timer
ID so it won't ever try to use a deleted value, although that never happens
in practice. Use HashMap::add instead of using both contains and set.
Rearranged code so we don't need to make a raw pointer for the timer.
(-[WebNetscapePluginView unscheduleTimer:]): Use remove instead of take/delete,
since remove takes care of the deletion automatically since we are using the
unique_ptr class.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157109 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoComposited layer that painted into composited ancestor is not repainted after moving
commit-queue@webkit.org [Tue, 8 Oct 2013 15:56:19 +0000 (15:56 +0000)]
Composited layer that painted into composited ancestor is not repainted after moving
https://bugs.webkit.org/show_bug.cgi?id=114655

Patch by Hurnjoo Lee <hurnjoo.lee@samsung.com> on 2013-10-08
Reviewed by Simon Fraser.

Source/WebCore:

Test: compositing/repaint/absolute-painted-into-composited-ancestor.html

Composited layers are currently skipping repainting after layout,
if the repaint status is not NeedsFullRepaint. However, in case layers
were painted into composited ancestor, they need to repaint.

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::shouldRepaintAfterLayout):

LayoutTests:

Add a text repaint test to check the repainting of composited layer
that painted into composited ancestor.

* compositing/repaint/absolute-painted-into-composited-ancestor-expected.txt: Added.
* compositing/repaint/absolute-painted-into-composited-ancestor.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157108 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Win] Add checks for proper build and test environment
bfulgham@apple.com [Tue, 8 Oct 2013 15:51:02 +0000 (15:51 +0000)]
[Win] Add checks for proper build and test environment
https://bugs.webkit.org/show_bug.cgi?id=122466

Reviewed by Darin Adler.

This patch makes two changes:
1. Update webkitdirs.pm to check for some common misconfigurations and provide helpful warnings or
   error messages so that people know what to fix to get things working.
2. Modify the win.py port to handle the 32-bit and 64-bit test environments, as well as making sure
   the various environment settings are properly configured for our test environment.

* Scripts/webkitdirs.pm:
(checkInstalledTools): Add checks for some common Cygwin configuration problems that have
caused problems in the past.
(setupAppleWinEnv):
* Scripts/webkitpy/port/win.py:
(WinPort):
(WinPort.read_registry_string): Parameterize for run architecture and registry root.
(WinPort.write_registry_value): Parameterize registry writing by data type (string versus
DWORD, etc.)
(WinPort.write_registry_string): Revise to call new generic registry write function.
(WinPort.setup_crash_log_saving): Revise for new API
(WinPort.restore_crash_log_saving): Ditto
(WinPort.prevent_error_dialogs): Add new methods to prevent Windows dialogs that block our test
servers from running.
(WinPort.allow_error_dialogs): Ditto.
(WinPort.setup_test_run): Call new API to turn off user input dialogs on program failure.
(WinPort.clean_up_test_run): Call new API to reactivatea user input dialogs after test run finished.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157107 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[GStreamer] enable v4l2 plugin
philn@webkit.org [Tue, 8 Oct 2013 15:45:36 +0000 (15:45 +0000)]
[GStreamer] enable v4l2 plugin
https://bugs.webkit.org/show_bug.cgi?id=122503

Reviewed by Martin Robinson.

* gtk/jhbuild.modules: Enable the plugin, it now builds fine since
we updated our GStreamer version to 1.0.8.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157106 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed, rolling out r157090.
commit-queue@webkit.org [Tue, 8 Oct 2013 15:28:38 +0000 (15:28 +0000)]
Unreviewed, rolling out r157090.
http://trac.webkit.org/changeset/157090
https://bugs.webkit.org/show_bug.cgi?id=122504

Caused crashes in many plug-in tests (Requested by ap on
#webkit).

* Shared/Plugins/NPRemoteObjectMap.cpp:
(WebKit::NPRemoteObjectMap::registerNPObject):
(WebKit::NPRemoteObjectMap::pluginDestroyed):
* Shared/Plugins/NPRemoteObjectMap.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157105 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[GTK] Re-enable MathML for release builds
commit-queue@webkit.org [Tue, 8 Oct 2013 15:15:34 +0000 (15:15 +0000)]
[GTK] Re-enable MathML for release builds
https://bugs.webkit.org/show_bug.cgi?id=122361

Patch by Martin Robinson <mrobinson@igalia.com> on 2013-10-08
Reviewed by Darin Adler.

* Source/autotools/SetupWebKitFeatures.m4: Enable MathML for release builds.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157104 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoEliminate use of deleteAllValues in ProxyInstance
darin@apple.com [Tue, 8 Oct 2013 14:56:54 +0000 (14:56 +0000)]
Eliminate use of deleteAllValues in ProxyInstance
https://bugs.webkit.org/show_bug.cgi?id=122499

Reviewed by Anders Carlsson.

* Plugins/Hosted/ProxyInstance.h: Use unique_ptr for map values in m_fields and m_methods.

* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyInstance::~ProxyInstance): Removed calls to deleteAllValues.
(WebKit::ProxyInstance::methodNamed): Use make_unique and get to deal with map entries
that are unique_ptr. Also fixed a bug where this would do an expensive no-op if the map
already had an entry with a null in it. We would call the plug-in, but eventually
isNewEntry would be false so we would return null.
(WebKit::ProxyInstance::fieldNamed): Use make_unique and get to deal with map entries
that are unique_ptr.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157101 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed. Rollout of r156536. ~5% regression in inline layout performance.
zalan@apple.com [Tue, 8 Oct 2013 14:39:39 +0000 (14:39 +0000)]
Unreviewed. Rollout of r156536. ~5% regression in inline layout performance.

Source/WebCore:

* rendering/LineWidth.cpp:
* rendering/LineWidth.h:
(WebCore::LineWidth::addUncommittedWidth):
* rendering/RenderBlockLineLayout.cpp:
(WebCore::LineBreaker::nextSegmentBreak):

LayoutTests:

* fast/css/unexpected-word-wrapping-with-non-empty-spans-expected.html: Removed.
* fast/css/unexpected-word-wrapping-with-non-empty-spans.html: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157100 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed EFL gardening
m.pakula@samsung.com [Tue, 8 Oct 2013 12:57:37 +0000 (12:57 +0000)]
Unreviewed EFL gardening

Unskip tests that are already passing.

* platform/efl-wk1/TestExpectations: Mark unskipped test as failing for WK1.
* platform/efl/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157099 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUse toCSSFooValue() instead of using static_cast<const CSSFooValue*>
gyuyoung.kim@samsung.com [Tue, 8 Oct 2013 12:07:31 +0000 (12:07 +0000)]
Use toCSSFooValue() instead of using static_cast<const CSSFooValue*>
https://bugs.webkit.org/show_bug.cgi?id=122491

Reviewed by Andreas Kling.

static_cast<const CSSFooValue*> wasn't cleanup. So, we need to use toCSSFooValue() for it.
To use toCSSValue() will help to detect bad type-cast.

Besides static_cast<const WebKitCSSFooValue*> helper functions need to be added to support this use.

No new tests, no behavior change.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::propertyMatches):
* css/CSSImageGeneratorValue.cpp:
(WebCore::CSSImageGeneratorValue::isFixedSize):
(WebCore::CSSImageGeneratorValue::isPending):
(WebCore::CSSImageGeneratorValue::knownToBeOpaque):
* css/CSSValue.cpp:
(WebCore::CSSValue::isImplicitInitialValue):
(WebCore::CSSValue::addSubresourceStyleURLs):
(WebCore::CSSValue::hasFailedOrCanceledSubresources):
(WebCore::CSSValue::equals):
(WebCore::CSSValue::cssText):
(WebCore::CSSValue::serializeResolvingVariables):
(WebCore::CSSValue::cloneForCSSOM):
* css/StylePropertySet.cpp:
(WebCore::StylePropertySet::PropertyReference::cssName):
* css/WebKitCSSSVGDocumentValue.h:
(WebCore::toWebKitCSSSVGDocumentValue):
* css/WebKitCSSTransformValue.h:
(WebCore::toWebKitCSSTransformValue):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157098 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoGet MediaStreamCenterGStreamer compiling again
commit-queue@webkit.org [Tue, 8 Oct 2013 11:39:07 +0000 (11:39 +0000)]
Get MediaStreamCenterGStreamer compiling again
https://bugs.webkit.org/show_bug.cgi?id=122482

Patch by Thiago de Barros Lacerda <thiago.lacerda@openbossa.org> on 2013-10-08
Reviewed by Eric Carlson.

r157068 was including a nonexistent header

No new tests needed.

* platform/mediastream/gstreamer/MediaStreamCenterGStreamer.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157097 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[ATK] Expose state of aria-invalid as ATK_STATE_INVALID_ENTRY
mario@webkit.org [Tue, 8 Oct 2013 10:55:25 +0000 (10:55 +0000)]
[ATK] Expose state of aria-invalid as ATK_STATE_INVALID_ENTRY
https://bugs.webkit.org/show_bug.cgi?id=122104

Reviewed by Chris Fleizach.

Source/WebCore:

Map invalid state of an AccessibilityObject to the proper AtkState.

* accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(setAtkStateSetFromCoreObject): Add the mapping.

Tools:

Updated stringAttributeValue to double check that the exposure of
aria-invalid as a state is consistent with its exposure as a text
attribute as well, when it applies (implementations of AtkText).

* DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:
(AccessibilityUIElement::stringAttributeValue): Add double check.
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::stringAttributeValue): Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157096 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed GTK gardening. Name for tables are now properly showing
mario@webkit.org [Tue, 8 Oct 2013 10:45:36 +0000 (10:45 +0000)]
Unreviewed GTK gardening. Name for tables are now properly showing
up when exposing information for the parent of a table's cell.

* platform/gtk/accessibility/table-cells-expected.txt: Updated.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157095 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agocontext-menu-suggestions-multiword-selection.html and context-menu-suggestions-subwor...
g.czajkowski@samsung.com [Tue, 8 Oct 2013 09:56:51 +0000 (09:56 +0000)]
context-menu-suggestions-multiword-selection.html and context-menu-suggestions-subword-selection.html are flaky after r156901
https://bugs.webkit.org/show_bug.cgi?id=122414

Reviewed by Ryosuke Niwa.

On Mac, first call of 'initSpellTest' from spelling/resources/util.js
often fails while checking spelling marker.
Use shouldBecomeDifferent instead of calling timers in the tests.
It should have been done at r156137 when shouldBecomeEqual/Different
was used in asynchronous spell checking tests.

* editing/spelling/resources/util.js:
Use shouldBecomeDifferent instead of timers.

* editing/spelling/context-menu-suggestions-multiword-selection-expected.txt:
* editing/spelling/context-menu-suggestions-subword-selection-expected.txt:
* editing/spelling/spelling-changed-text-expected.txt:
* editing/spelling/spelling-double-clicked-word-expected.txt:
* editing/spelling/spelling-exactly-selected-multiple-words-expected.txt:
* editing/spelling/spelling-exactly-selected-word-expected.txt:
* editing/spelling/spelling-should-select-multiple-words-expected.txt:
* editing/spelling/spelling-with-punctuation-selection-expected.txt:
* editing/spelling/spelling-with-whitespace-selection-expected.txt:
Rebaseline the tests which include util.js due to
shouldBecomeDifferent outputs more logs.

* platform/mac/TestExpectations:
Now context-menu-suggestions-multiword-selection.html and
context-menu-suggestions-subword-selection.html are passing for Mac.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157094 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoJavaScriptCore fails to build
commit-queue@webkit.org [Tue, 8 Oct 2013 09:41:34 +0000 (09:41 +0000)]
JavaScriptCore fails to build
https://bugs.webkit.org/show_bug.cgi?id=122440

Patch by Robert Plociennik <r.plociennik@samsung.com> on 2013-10-08
Reviewed by Darin Adler.

Compilation fails in debug due to 'comparison of unsigned expression >= 0 is
always true'.

* debugger/DebuggerCallFrame.cpp:
(JSC::DebuggerCallFrame::positionForCallFrame): Removed the offending ASSERTS.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157093 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[CSSRegions] Move autosize and autowidth tests into fast/regions/auto-size
mihnea@adobe.com [Tue, 8 Oct 2013 09:01:30 +0000 (09:01 +0000)]
[CSSRegions] Move autosize and autowidth tests into fast/regions/auto-size
https://bugs.webkit.org/show_bug.cgi?id=122493

Reviewed by Andreas Kling.

Simple move, changed paths in 2 tests.

* fast/regions/auto-size/autosize-abspos-anchoredregion-expected.txt: Renamed from LayoutTests/fast/regions/autosize-abspos-anchoredregion-expected.txt.
* fast/regions/auto-size/autosize-abspos-anchoredregion-vertlr-expected.txt: Renamed from LayoutTests/fast/regions/autosize-abspos-anchoredregion-vertlr-expected.txt.
* fast/regions/auto-size/autosize-abspos-anchoredregion-vertlr.html: Renamed from LayoutTests/fast/regions/autosize-abspos-anchoredregion-vertlr.html.
* fast/regions/auto-size/autosize-abspos-anchoredregion.html: Renamed from LayoutTests/fast/regions/autosize-abspos-anchoredregion.html.
* fast/regions/auto-size/autosize-region-container-resize-expected.html: Renamed from LayoutTests/fast/regions/autosize-region-container-resize-expected.html.
* fast/regions/auto-size/autosize-region-container-resize.html: Renamed from LayoutTests/fast/regions/autosize-region-container-resize.html.
* fast/regions/auto-size/autosize-region-window-resize-expected.html: Renamed from LayoutTests/fast/regions/autosize-region-window-resize-expected.html.
* fast/regions/auto-size/autosize-region-window-resize.html: Renamed from LayoutTests/fast/regions/autosize-region-window-resize.html.
* fast/regions/auto-size/autowidth-abspos-expected.html: Renamed from LayoutTests/fast/regions/autowidth-abspos-expected.html.
* fast/regions/auto-size/autowidth-abspos-regionchain-expected.html: Renamed from LayoutTests/fast/regions/autowidth-abspos-regionchain-expected.html.
* fast/regions/auto-size/autowidth-abspos-regionchain.html: Renamed from LayoutTests/fast/regions/autowidth-abspos-regionchain.html.
* fast/regions/auto-size/autowidth-abspos.html: Renamed from LayoutTests/fast/regions/autowidth-abspos.html.
* fast/regions/auto-size/autowidth-attachedinvalidregion-expected.txt: Renamed from LayoutTests/fast/regions/autowidth-attachedinvalidregion-expected.txt.
* fast/regions/auto-size/autowidth-attachedinvalidregion.html: Renamed from LayoutTests/fast/regions/autowidth-attachedinvalidregion.html.
* fast/regions/auto-size/autowidth-float-expected.html: Renamed from LayoutTests/fast/regions/autowidth-float-expected.html.
* fast/regions/auto-size/autowidth-float.html: Renamed from LayoutTests/fast/regions/autowidth-float.html.
* fast/regions/auto-size/autowidth-inlineblock-expected.html: Renamed from LayoutTests/fast/regions/autowidth-inlineblock-expected.html.
* fast/regions/auto-size/autowidth-inlineblock.html: Renamed from LayoutTests/fast/regions/autowidth-inlineblock.html.
* fast/regions/auto-size/autowidth-nonreplaced-abspos-expected.html: Renamed from LayoutTests/fast/regions/autowidth-nonreplaced-abspos-expected.html.
* fast/regions/auto-size/autowidth-nonreplaced-abspos.html: Renamed from LayoutTests/fast/regions/autowidth-nonreplaced-abspos.html.
* fast/regions/auto-size/autowidth-nonreplacedblock-normalflow-expected.html: Renamed from LayoutTests/fast/regions/autowidth-nonreplacedblock-normalflow-expected.html.
* fast/regions/auto-size/autowidth-nonreplacedblock-normalflow.html: Renamed from LayoutTests/fast/regions/autowidth-nonreplacedblock-normalflow.html.
* fast/regions/auto-size/autowidth-normalflow-expected.html: Renamed from LayoutTests/fast/regions/autowidth-normalflow-expected.html.
* fast/regions/auto-size/autowidth-normalflow-maxwidth-expected.html: Renamed from LayoutTests/fast/regions/autowidth-normalflow-maxwidth-expected.html.
* fast/regions/auto-size/autowidth-normalflow-maxwidth.html: Renamed from LayoutTests/fast/regions/autowidth-normalflow-maxwidth.html.
* fast/regions/auto-size/autowidth-normalflow-minmaxwidth-expected.html: Renamed from LayoutTests/fast/regions/autowidth-normalflow-minmaxwidth-expected.html.
* fast/regions/auto-size/autowidth-normalflow-minmaxwidth.html: Renamed from LayoutTests/fast/regions/autowidth-normalflow-minmaxwidth.html.
* fast/regions/auto-size/autowidth-normalflow-minwidth-expected.html: Renamed from LayoutTests/fast/regions/autowidth-normalflow-minwidth-expected.html.
* fast/regions/auto-size/autowidth-normalflow-minwidth.html: Renamed from LayoutTests/fast/regions/autowidth-normalflow-minwidth.html.
* fast/regions/auto-size/autowidth-normalflow-vertrl-expected.html: Renamed from LayoutTests/fast/regions/autowidth-normalflow-vertrl-expected.html.
* fast/regions/auto-size/autowidth-normalflow-vertrl.html: Renamed from LayoutTests/fast/regions/autowidth-normalflow-vertrl.html.
* fast/regions/auto-size/autowidth-normalflow.html: Renamed from LayoutTests/fast/regions/autowidth-normalflow.html.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157092 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[GTK] media/video-src-blob.html
carlosgc@webkit.org [Tue, 8 Oct 2013 08:07:46 +0000 (08:07 +0000)]
[GTK] media/video-src-blob.html
https://bugs.webkit.org/show_bug.cgi?id=102586

Reviewed by Martin Robinson.

Source/WebCore:

Add support for loading videos using blob URLs.

Fixes media/video-src-blob.html.

* platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
(webKitWebSrcStart): Use BufferData buffering policy for blob
URLs.
(webKitWebSrcGetProtocols): Add blob to the list of supported
protocols.
(webKitWebSrcSetUri): Consider blob URLs as valid.

LayoutTests:

* platform/gtk/TestExpectations: Unskip
media/video-src-blob.html.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157091 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoRemove use of deleteAllValues in NPRemoteObjectMap::pluginDestroyed
darin@apple.com [Tue, 8 Oct 2013 07:58:30 +0000 (07:58 +0000)]
Remove use of deleteAllValues in NPRemoteObjectMap::pluginDestroyed
https://bugs.webkit.org/show_bug.cgi?id=122496

Reviewed by Andreas Kling.

* Shared/Plugins/NPRemoteObjectMap.cpp:
(WebKit::NPRemoteObjectMap::registerNPObject): Don't call release when putting objects
into the map.
(WebKit::NPRemoteObjectMap::pluginDestroyed): Instead of making an array of receivers
and deleting them all, remove all of the receivers from the map, which will take care
of deleting them. Also change the other loop to use a similar coding style.

* Shared/Plugins/NPRemoteObjectMap.h: Change the value type of m_registeredNPObjects
to be unique_ptr instead of a raw pointer.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157090 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoChange NetscapePluginInstanceProxy::m_replies to use unique_ptr instead of deleteAllV...
darin@apple.com [Tue, 8 Oct 2013 07:45:46 +0000 (07:45 +0000)]
Change NetscapePluginInstanceProxy::m_replies to use unique_ptr instead of deleteAllValues
https://bugs.webkit.org/show_bug.cgi?id=122492

Reviewed by Andreas Kling.

* Plugins/Hosted/NetscapePluginHostManager.mm:
(WebKit::NetscapePluginHostManager::instantiatePlugin): Use auto so this works with
unique_ptr instead of auto_ptr.
* Plugins/Hosted/NetscapePluginHostProxy.mm:
(WKPCGetScriptableNPObjectReply): Use make_unique instead of using new directly.
(WKPCBooleanReply): Ditto.
(WKPCBooleanAndDataReply): Ditto.
(WKPCInstantiatePluginReply): Ditto.
* Plugins/Hosted/NetscapePluginInstanceProxy.h: Changed m_replies to map to unique_ptr
instead of to a raw pointer.
(WebKit::NetscapePluginInstanceProxy::setCurrentReply): Changed to take a unique_ptr
instead of a raw pointer since this takes ownership of the pointer.
(WebKit::NetscapePluginInstanceProxy::waitForReply): Changed to return a unique_ptr
instead of a auto_ptr because that's better. Use unique_ptr inside the function
too to avoid the need for an explicit delete.
* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::~NetscapePluginInstanceProxy): Removed the call to
deleteAllValues.
(WebKit::NetscapePluginInstanceProxy::cancelStreamLoad): Removed unneeded initialization
of a local variable that was already set in all code paths.
(WebKit::NetscapePluginInstanceProxy::wheelEvent): Use auto so this works with unique_ptr
instead of auto_ptr.
(WebKit::NetscapePluginInstanceProxy::print): Ditto.
(WebKit::NetscapePluginInstanceProxy::snapshot): Ditto. Ditto.
(WebKit::NetscapePluginInstanceProxy::processRequestsAndWaitForReply): Changed to return
a unique_ptr. Also removed an unneeded assertion.
(WebKit::NetscapePluginInstanceProxy::createBindingsInstance): Use auto so this works
with unique_ptr instead of auto_ptr.

* Plugins/Hosted/ProxyInstance.h: Changed return type of waitForReply to unique_ptr.

* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyInstance::invoke): Use auto so this works with unique_ptr instead of auto_ptr.
(WebKit::ProxyInstance::supportsInvokeDefaultMethod): Ditto.
(WebKit::ProxyInstance::supportsConstruct): Ditto.
(WebKit::ProxyInstance::getPropertyNames): Ditto.
(WebKit::ProxyInstance::methodNamed): Ditto.
(WebKit::ProxyInstance::fieldNamed): Ditto.
(WebKit::ProxyInstance::fieldValue): Ditto.
(WebKit::ProxyInstance::setFieldValue): Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157089 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agowebaudio/javascriptaudionode-upmix2-8channel-input.html is flaky on Mac WK2
ap@apple.com [Tue, 8 Oct 2013 06:14:36 +0000 (06:14 +0000)]
webaudio/javascriptaudionode-upmix2-8channel-input.html is flaky on Mac WK2
https://bugs.webkit.org/show_bug.cgi?id=120148

* platform/mac-wk2/TestExpectations: Removed a duplicate expectation that I overlooked
at first. Note that having separate expectations for Debug and Release doesn't
appear to work.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157088 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agowebaudio/javascriptaudionode-upmix2-8channel-input.html is flaky on Mac WK2
ap@apple.com [Tue, 8 Oct 2013 06:09:17 +0000 (06:09 +0000)]
webaudio/javascriptaudionode-upmix2-8channel-input.html is flaky on Mac WK2
https://bugs.webkit.org/show_bug.cgi?id=120148

* platform/mac-wk2/TestExpectations: Updated expectations to cover debug assertions,
and that this is not limited to Lion.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157087 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoLayout Test mathml/very-large-stretchy-operators.html is failing
ap@apple.com [Tue, 8 Oct 2013 06:03:03 +0000 (06:03 +0000)]
Layout Test mathml/very-large-stretchy-operators.html is failing
https://bugs.webkit.org/show_bug.cgi?id=122490

* platform/mac/TestExpectations: Skipped the test. It's faiing with a timeout and
taking up to 80 seconds.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157086 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoEventDispatchBehavior is unnecessary
rniwa@webkit.org [Tue, 8 Oct 2013 04:44:14 +0000 (04:44 +0000)]
EventDispatchBehavior is unnecessary
https://bugs.webkit.org/show_bug.cgi?id=122483

Reviewed by Andreas Kling.

Removed EventDispatchBehavior and changed the return type of determineDispatchBehavior to bool.
Also renamed it to shouldEventCrossShadowBoundary to reflect the semantics more clear.

* dom/EventRetargeter.cpp:
(WebCore::shouldEventCrossShadowBoundary):
(WebCore::EventRetargeter::calculateEventPath):
* dom/EventRetargeter.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157085 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agorun-jsc-stress-tests progress meter should update more quickly on older Rubies
fpizlo@apple.com [Tue, 8 Oct 2013 03:43:43 +0000 (03:43 +0000)]
run-jsc-stress-tests progress meter should update more quickly on older Rubies
https://bugs.webkit.org/show_bug.cgi?id=122459

Reviewed by Darin Adler.

* Scripts/run-jsc-stress-tests:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157084 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoMake buildRelatedNodeMap and findRelatedNode static to EventRetargeter.cpp
rniwa@webkit.org [Tue, 8 Oct 2013 03:38:05 +0000 (03:38 +0000)]
Make buildRelatedNodeMap and findRelatedNode static to EventRetargeter.cpp
https://bugs.webkit.org/show_bug.cgi?id=122477

Reviewed by Antti Koivisto.

Make EventRetargeter::buildRelatedNodeMap and EventRetargeter::findRelatedNode static local functions
in EventRetargeter.cpp since they're only called in EventRetargeter::calculateAdjustedNodes and don't
depend on any oher member function or variable (EventRetarger doesn't have any member variables).

Also get rid of Vector local variables in both functions as they're redundant.

* dom/EventRetargeter.cpp:
(WebCore::buildRelatedNodeMap): Moved. Replaced Vector<Node*, 32> relatedNodeStack by a single pointer
since the only time we add an item to this Vector is when it's empty, and we always use or remove the
last item.
(WebCore::addRelatedNodeForUnmapedTreeScopes): Renamed from EventRetargeter::findRelatedNode. Removed
Vector<TreeScope*, 32> parentTreeScopes since it only contains the ancestor tree scopes of scope up to
a tree scope already in relatedNodeMap. We could simply remember this tree scope and re-traverse the
ancestor tree scopes in the second loop.
(WebCore::EventRetargeter::calculateAdjustedNodes):
* dom/EventRetargeter.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157083 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoPass VM instead of ExecState to JSNotAnObject constructor.
akling@apple.com [Tue, 8 Oct 2013 03:29:05 +0000 (03:29 +0000)]
Pass VM instead of ExecState to JSNotAnObject constructor.
<https://webkit.org/b/122474>

Reviewed by Sam Weinig.

JSNotAnObject was only using the ExecState to find the VM.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157082 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoCTTE: EditCommand always has a Document.
akling@apple.com [Tue, 8 Oct 2013 03:28:16 +0000 (03:28 +0000)]
CTTE: EditCommand always has a Document.
<https://webkit.org/b/122473>

Reviewed by Anders Carlsson.

Store a Ref<Document> in EditComment since it's never null.

Since Ref enforces more const consistency than RefPtr, I had to make
document() and frame() non-const here. Only a single method depended
on the old half-const behavior.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157081 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoGardening: add baselines for new tests.
kov@webkit.org [Tue, 8 Oct 2013 03:26:44 +0000 (03:26 +0000)]
Gardening: add baselines for new tests.

* platform/gtk/fast/regions/selection/selecting-text-ignoring-region-horiz-bt-expected.png: Added.
* platform/gtk/fast/regions/selection/selecting-text-ignoring-region-vert-lr-expected.png: Added.
* platform/gtk/fast/regions/selection/selecting-text-in-2-regions-horiz-bt-expected.png: Added.
* platform/gtk/fast/regions/selection/selecting-text-in-2-regions-vert-lr-expected.png: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157080 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoGardening: skip audio/video track tests, since those are not yet supported by our
kov@webkit.org [Tue, 8 Oct 2013 02:49:34 +0000 (02:49 +0000)]
Gardening: skip audio/video track tests, since those are not yet supported by our
media player.

* platform/gtk/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157079 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed. Marking svg/animations/svglengthlist-animation-3.html as flaky.
kov@webkit.org [Tue, 8 Oct 2013 02:40:20 +0000 (02:40 +0000)]
Unreviewed. Marking svg/animations/svglengthlist-animation-3.html as flaky.

* platform/gtk/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157078 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoImprove HashMap::add comment and other similar comments
darin@apple.com [Tue, 8 Oct 2013 01:59:28 +0000 (01:59 +0000)]
Improve HashMap::add comment and other similar comments
https://bugs.webkit.org/show_bug.cgi?id=122432

Reviewed by Andreas Kling.

* wtf/HashCountedSet.h:
* wtf/HashMap.h:
* wtf/HashSet.h:
Updated comment wording. They were a bit old and out of date.
They also featured the word "interator".

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157077 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUpdate test again.
andersca@apple.com [Tue, 8 Oct 2013 01:37:12 +0000 (01:37 +0000)]
Update test again.

* bindings/scripts/test/JS/JSTestCallback.cpp:
(WebCore::JSTestCallback::~JSTestCallback):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157076 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed, rolling out r157061.
commit-queue@webkit.org [Tue, 8 Oct 2013 01:34:15 +0000 (01:34 +0000)]
Unreviewed, rolling out r157061.
http://trac.webkit.org/changeset/157061
https://bugs.webkit.org/show_bug.cgi?id=122479

Broke worker tests (Requested by andersca on #webkit).

* Modules/webdatabase/Database.cpp:
(WebCore::DerefContextTask::create):
(WebCore::DerefContextTask::DerefContextTask):
(WebCore::Database::~Database):
(WebCore::DeliverPendingCallbackTask::create):
(WebCore::DeliverPendingCallbackTask::performTask):
(WebCore::DeliverPendingCallbackTask::DeliverPendingCallbackTask):
(WebCore::Database::scheduleTransactionCallback):
* Modules/webdatabase/DatabaseManager.cpp:
(WebCore::DatabaseCreationCallbackTask::create):
(WebCore::DatabaseCreationCallbackTask::performTask):
(WebCore::DatabaseCreationCallbackTask::DatabaseCreationCallbackTask):
(WebCore::DatabaseManager::openDatabase):
* Modules/webdatabase/SQLCallbackWrapper.h:
(WebCore::SQLCallbackWrapper::clear):
(WebCore::SQLCallbackWrapper::SafeReleaseTask::create):
(WebCore::SQLCallbackWrapper::SafeReleaseTask::performTask):
(WebCore::SQLCallbackWrapper::SafeReleaseTask::isCleanupTask):
(WebCore::SQLCallbackWrapper::SafeReleaseTask::SafeReleaseTask):
* Modules/websockets/ThreadableWebSocketChannelClientWrapper.cpp:
(WebCore::ThreadableWebSocketChannelClientWrapper::processPendingTasks):
* Modules/websockets/ThreadableWebSocketChannelClientWrapper.h:
* Modules/websockets/WorkerThreadableWebSocketChannel.cpp:
(WebCore::WorkerThreadableWebSocketChannel::WorkerGlobalScopeDidInitializeTask::create):
(WebCore::WorkerThreadableWebSocketChannel::WorkerGlobalScopeDidInitializeTask::~WorkerGlobalScopeDidInitializeTask):
(WebCore::WorkerThreadableWebSocketChannel::WorkerGlobalScopeDidInitializeTask::WorkerGlobalScopeDidInitializeTask):
(WebCore::WorkerThreadableWebSocketChannel::Bridge::mainThreadInitialize):
* bindings/js/JSCallbackData.h:
(WebCore::DeleteCallbackDataTask::create):
(WebCore::DeleteCallbackDataTask::performTask):
(WebCore::DeleteCallbackDataTask::isCleanupTask):
(WebCore::DeleteCallbackDataTask::DeleteCallbackDataTask):
* bindings/js/JSDOMGlobalObjectTask.h:
* bindings/js/JSDOMWindowBase.cpp:
(WebCore::JSDOMWindowBase::queueTaskToEventLoop):
* bindings/js/JSWorkerGlobalScopeBase.cpp:
(WebCore::JSWorkerGlobalScopeBase::queueTaskToEventLoop):
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateCallbackImplementation):
* dom/CrossThreadTask.h:
(WebCore::CrossThreadTask1::create):
(WebCore::CrossThreadTask1::performTask):
(WebCore::CrossThreadTask2::create):
(WebCore::CrossThreadTask2::performTask):
(WebCore::CrossThreadTask3::create):
(WebCore::CrossThreadTask3::performTask):
(WebCore::CrossThreadTask4::create):
(WebCore::CrossThreadTask4::performTask):
(WebCore::CrossThreadTask5::create):
(WebCore::CrossThreadTask5::performTask):
(WebCore::CrossThreadTask6::create):
(WebCore::CrossThreadTask6::performTask):
(WebCore::CrossThreadTask7::create):
(WebCore::CrossThreadTask7::performTask):
(WebCore::CrossThreadTask8::create):
(WebCore::CrossThreadTask8::performTask):
(WebCore::createCallbackTask):
* dom/Document.cpp:
(WebCore::Document::addConsoleMessage):
(WebCore::Document::addMessage):
(WebCore::PerformTaskContext::PerformTaskContext):
(WebCore::Document::postTask):
(WebCore::Document::pendingTasksTimerFired):
* dom/Document.h:
* dom/ScriptExecutionContext.cpp:
(WebCore::ProcessMessagesSoonTask::create):
(WebCore::ProcessMessagesSoonTask::performTask):
(WebCore::ScriptExecutionContext::processMessagePortMessagesSoon):
* dom/ScriptExecutionContext.h:
(WebCore::ScriptExecutionContext::AddConsoleMessageTask::create):
(WebCore::ScriptExecutionContext::AddConsoleMessageTask::AddConsoleMessageTask):
* dom/StringCallback.cpp:
(WebCore::StringCallback::scheduleCallback):
* loader/appcache/ApplicationCacheGroup.cpp:
(WebCore::CallCacheListenerTask::create):
(WebCore::CallCacheListenerTask::CallCacheListenerTask):
(WebCore::ApplicationCacheGroup::postListenerTask):
* workers/DefaultSharedWorkerRepository.cpp:
(WebCore::SharedWorkerProxy::postTaskToLoader):
(WebCore::SharedWorkerProxy::postTaskForModeToWorkerGlobalScope):
(WebCore::SharedWorkerConnectTask::create):
(WebCore::SharedWorkerConnectTask::performTask):
(WebCore::DefaultSharedWorkerRepository::workerScriptLoaded):
(WebCore::DefaultSharedWorkerRepository::connectToWorker):
* workers/WorkerEventQueue.cpp:
(WebCore::WorkerEventQueue::enqueueEvent):
* workers/WorkerGlobalScope.cpp:
(WebCore::WorkerGlobalScope::close):
(WebCore::WorkerGlobalScope::postTask):
(WebCore::WorkerGlobalScope::addConsoleMessage):
(WebCore::WorkerGlobalScope::addMessage):
* workers/WorkerGlobalScope.h:
* workers/WorkerLoaderProxy.h:
* workers/WorkerMessagingProxy.cpp:
(WebCore::MessageWorkerGlobalScopeTask::create):
(WebCore::MessageWorkerGlobalScopeTask::performTask):
(WebCore::MessageWorkerTask::create):
(WebCore::MessageWorkerTask::performTask):
(WebCore::WorkerExceptionTask::create):
(WebCore::WorkerExceptionTask::performTask):
(WebCore::WorkerGlobalScopeDestroyedTask::create):
(WebCore::WorkerGlobalScopeDestroyedTask::performTask):
(WebCore::WorkerTerminateTask::create):
(WebCore::WorkerTerminateTask::WorkerTerminateTask):
(WebCore::WorkerTerminateTask::performTask):
(WebCore::WorkerThreadActivityReportTask::create):
(WebCore::WorkerThreadActivityReportTask::performTask):
(WebCore::PostMessageToPageInspectorTask::create):
(WebCore::PostMessageToPageInspectorTask::performTask):
(WebCore::NotifyNetworkStateChangeTask::create):
(WebCore::NotifyNetworkStateChangeTask::NotifyNetworkStateChangeTask):
(WebCore::NotifyNetworkStateChangeTask::performTask):
(WebCore::WorkerMessagingProxy::postMessageToWorkerObject):
(WebCore::WorkerMessagingProxy::postMessageToWorkerGlobalScope):
(WebCore::WorkerMessagingProxy::postTaskForModeToWorkerGlobalScope):
(WebCore::WorkerMessagingProxy::postTaskToLoader):
(WebCore::WorkerMessagingProxy::postExceptionToWorkerObject):
(WebCore::WorkerMessagingProxy::workerThreadCreated):
(WebCore::WorkerMessagingProxy::notifyNetworkStateChange):
(WebCore::WorkerMessagingProxy::workerGlobalScopeDestroyed):
(WebCore::WorkerMessagingProxy::workerGlobalScopeClosed):
(WebCore::WorkerMessagingProxy::postMessageToPageInspector):
(WebCore::WorkerMessagingProxy::confirmMessageFromWorkerObject):
(WebCore::WorkerMessagingProxy::reportPendingActivity):
* workers/WorkerMessagingProxy.h:
* workers/WorkerRunLoop.cpp:
(WebCore::WorkerRunLoop::postTask):
(WebCore::WorkerRunLoop::postTaskAndTerminate):
(WebCore::WorkerRunLoop::postTaskForMode):
(WebCore::WorkerRunLoop::Task::create):
(WebCore::WorkerRunLoop::Task::Task):
* workers/WorkerRunLoop.h:
* workers/WorkerThread.cpp:
(WebCore::WorkerThreadShutdownFinishTask::create):
(WebCore::WorkerThreadShutdownFinishTask::performTask):
(WebCore::WorkerThreadShutdownFinishTask::isCleanupTask):
(WebCore::WorkerThreadShutdownStartTask::performTask):
(WebCore::WorkerThread::stop):
(WebCore::WorkerThread::releaseFastMallocFreeMemoryInAllThreads):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157075 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoMake Vector::insert work for move-only types
darin@apple.com [Tue, 8 Oct 2013 01:28:18 +0000 (01:28 +0000)]
Make Vector::insert work for move-only types
https://bugs.webkit.org/show_bug.cgi?id=122429

Reviewed by Anders Carlsson.

Source/WebCore:

* history/HistoryItem.cpp:
(WebCore::HistoryItem::padDailyCountsForNewVisit): Call insertVector.
Also added some inline capacity, which should make this faster.

Source/WTF:

* wtf/Vector.h:
(WTF::Vector::insert): Take an rvalue reference instead of a const reference.
(WTF::Vector::insertVector): Renamed to avoid overloading troubles, analogous
to what we did for appendVector.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157074 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[buildbot] parse tests that are reported as crashed correctly for GTK+
kov@webkit.org [Tue, 8 Oct 2013 01:24:54 +0000 (01:24 +0000)]
[buildbot] parse tests that are reported as crashed correctly for GTK+
https://bugs.webkit.org/show_bug.cgi?id=122476

Reviewed by Martin Robinson.

* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(RunGtkAPITests.commandComplete): parse the crashed tests output so that is reported
as a failure of the API tests.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157073 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed. Skipping API test that is causing the next one to crash,
kov@webkit.org [Tue, 8 Oct 2013 01:21:27 +0000 (01:21 +0000)]
Unreviewed. Skipping API test that is causing the next one to crash,
see https://bugs.webkit.org/show_bug.cgi?id=121970.

* Scripts/run-gtk-tests:
(TestRunner):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157072 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUpdate test results.
andersca@apple.com [Tue, 8 Oct 2013 01:04:00 +0000 (01:04 +0000)]
Update test results.

* bindings/scripts/test/JS/JSTestCallback.cpp:
(WebCore::JSTestCallback::~JSTestCallback):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157071 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[MathML] Remove RenderTree modification during layout and refactor the StretchyOp...
mrobinson@webkit.org [Tue, 8 Oct 2013 00:36:07 +0000 (00:36 +0000)]
[MathML] Remove RenderTree modification during layout and refactor the StretchyOp code
https://bugs.webkit.org/show_bug.cgi?id=121416

Source/WebCore:

Reviewed by David Hyatt.

Tests: mathml/presentation/mo-minus.html
       mathml/presentation/mo-stacked-glyphs.html
       mathml/presentation/mo-stretchy-vertical-bar.html
       mathml/very-large-stretchy-operators.html

MathML stretched operators by both modifying the width of the operator
and adding children to the operator node in the render tree.

Instead we make the operator width equal to the widest glyph possible that we use
to represent the operator.  Additionally instead of rendering stretchy glyphs via
stacked operator pieces in separate render tree nodes, keep only one node for the
glyph, and use a custom paint method to paint the stacked representation.

With this patch, rendering seems roughly equivalent on Mac and markedly better
on Linux.

* css/mathml.css:
Not sure what this line-height:0 was here for, but it caused bugs with the new code

* mathml/MathMLTextElement.cpp:
(WebCore::MathMLTextElement::attach):
(WebCore):
(WebCore::MathMLTextElement::childrenChanged):
Need to update the anonymous render tree below <mo> elements when their
children change or when the renderer is first attached.

* mathml/MathMLTextElement.h:
(MathMLTextElement):
* rendering/mathml/RenderMathMLBlock.cpp:
(WebCore::RenderMathMLBlock::RenderMathMLBlock):
* rendering/mathml/RenderMathMLBlock.h:
Now that the preferred width doesn't depend on the height, we don't
need to override computePreferredLogicalWidths at all.

* rendering/mathml/RenderMathMLFenced.cpp:
(WebCore::RenderMathMLFenced::makeFences):
(WebCore::RenderMathMLFenced::styleDidChange):
Need to update the anonymous renderers for the anonymous RenderMathMLOperators.

* rendering/mathml/RenderMathMLOperator.cpp:
(WebCore::RenderMathMLOperator::expandedStretchHeight):
Store the non-expanded stretch height so that we can detect when the height
actually changed.

(WebCore::RenderMathMLOperator::stretchToHeight):
Only update the style on the anonymous render tree since this is called
from RenderMathMLRow::layout

(WebCore::RenderMathMLOperator::styleDidChange):
(WebCore::RenderMathMLOperator::glyphBoundsForCharacter): A helper to get glyph boundaries.
(WebCore::RenderMathMLOperator::glyphHeightForCharacter): Ditto for glyph width.
(WebCore::RenderMathMLOperator::advanceForCharacter): The advance is different from the width,
and we want the width of the operator to be the advance instead of the tight bounding width.
(WebCore::RenderMathMLOperator::computePreferredLogicalWidths): Use the max of all possible glyphs
we can use to render this operator.
(WebCore::RenderMathMLOperator::computeLogicalHeight): Return the stretched operator height, if appropriate.
(WebCore::RenderMathMLOperator::updateFromElement): We add a child for rendering the non-scaled
version of the glyph.
(WebCore::RenderMathMLOperator::firstCharacterForStretching): Helper to figure out what character
is the character used for stretching operations.
(WebCore::RenderMathMLOperator::findAcceptableStretchyCharacter): Helper to find an acceptable set
of glyph pieces for stretching characters.
(WebCore::RenderMathMLOperator::updateStyle): Resize the operator to the appropriate height and hide
the child if we are using the stretchy style.
(WebCore::RenderMathMLOperator::firstLineBoxBaseline):
(WebCore::RenderMathMLOperator::paintCharacter): Helper to paint a single character component of the
stretchy glyph.
(WebCore::RenderMathMLOperator::fillWithExtensionGlyph): Helper to paint the extender glue between
features of the stretchy glyph.
(WebCore::RenderMathMLOperator::paint): Properly paint stretchy glyphs.
* rendering/mathml/RenderMathMLOperator.h: Update method declarations.

LayoutTests:

Patch by Frédéric Wang <fred.wang@free.fr> on 2013-10-04
Reviewed by David Hyatt.

Add some reftests for stretchy operators.

* TestExpectations: The remaining MathML pixel tests are broken by this patch.
* LayoutTests/platform/gtk/TestExpectations:
* LayoutTests/platform/mac/TestExpectations:
* LayoutTests/platform/win/TestExpectations:
* mathml/presentation/mo-minus.html: Added.
* mathml/presentation/mo-stacked-glyphs-expected.html: Added.
* mathml/presentation/mo-stacked-glyphs.html: Added.
* mathml/presentation/mo-stretchy-vertical-bar-expected-mismatch.html: Added.
* mathml/presentation/mo-stretchy-vertical-bar.html: Added.
* mathml/very-large-stretchy-operators-expected.txt: Added.
* mathml/very-large-stretchy-operators.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157070 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[GTK] run-gtk-tests does not distinguish between failure and crashes
kov@webkit.org [Mon, 7 Oct 2013 23:56:07 +0000 (23:56 +0000)]
[GTK] run-gtk-tests does not distinguish between failure and crashes
https://bugs.webkit.org/show_bug.cgi?id=122135

Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2013-10-07
Reviewed by Martin Robinson.

The GTK+ API test runner does not distinguish between failures and crashes. This change
makes it do that, so it's easier for us to spot the more important/higher priority crash
case.

* Scripts/run-gtk-tests:
(TestRunner._run_test_command): return the exit code instead of a boolean true/false,
so we have more information on how the process ended.
(TestRunner._run_test): check the exit code to distinguish between crashes and failures.
(TestRunner.run_tests): report crashes.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157069 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[MediaStream API] update MediaStreamTrack object to match spec
eric.carlson@apple.com [Mon, 7 Oct 2013 23:48:19 +0000 (23:48 +0000)]
[MediaStream API] update MediaStreamTrack object to match spec
https://bugs.webkit.org/show_bug.cgi?id=121940

Reviewed by Jer Noble.

Source/WebCore:

No new tests, existing test updated.

Add new source files to the project:
* CMakeLists.txt:
* DerivedSources.make:
* GNUmakefile.list.am:
* WebCore.xcodeproj/project.pbxproj:

New capability dictionary objects:
* Modules/mediastream/AllAudioCapabilities.h: Added.
* Modules/mediastream/AllAudioCapabilities.idl: Added.
* Modules/mediastream/AllVideoCapabilities.h: Added.
* Modules/mediastream/AllVideoCapabilities.idl: Added.

* Modules/mediastream/AudioStreamTrack.cpp:
(WebCore::AudioStreamTrack::create): New version that takes a MediaStreamTrack*.
* Modules/mediastream/AudioStreamTrack.h:

New object for a capability range:
* Modules/mediastream/CapabilityRange.cpp: Added.
* Modules/mediastream/CapabilityRange.h: Added.
* Modules/mediastream/CapabilityRange.idl: Added.

* Modules/mediastream/MediaConstraintsImpl.h: Make initialize() public.

New object for the current states for a media source.
* Modules/mediastream/MediaSourceStates.cpp: Added.
* Modules/mediastream/MediaSourceStates.h: Added.
* Modules/mediastream/MediaSourceStates.idl: Added.

Don't call the media stream center to notify it when the state of other
objects change.
* Modules/mediastream/MediaStream.cpp:
(WebCore::processTrack): Remove the stream source duplication hack.
(WebCore::createFromSourceVectors):
(WebCore::MediaStream::MediaStream):
(WebCore::MediaStream::addTrack):
(WebCore::MediaStream::removeTrack):
* Modules/mediastream/MediaStream.h:

New object for the capabilities of a source.
* Modules/mediastream/MediaStreamCapabilities.cpp: Added.
* Modules/mediastream/MediaStreamCapabilities.h: Added.
* Modules/mediastream/MediaStreamCapabilities.idl: Added.

Update interface to match spec.
* Modules/mediastream/MediaStreamTrack.cpp:
(WebCore::MediaStreamTrack::MediaStreamTrack): Define a copy constructor to use in clone().
(WebCore::MediaStreamTrack::setSource): Call removeObserver if the track already has a source.
    Initialize m_muted from new source's muted state.
(WebCore::MediaStreamTrack::id): Allow source to provide ID as the spec suggests.
(WebCore::MediaStreamTrack::setEnabled): Add some spec text to clarify logic. Always call
    source->setEnabled, it can figure out if nothing needs to be done.
(WebCore::MediaStreamTrack::muted): Don't call the stream center when muted changes, the
    source can take care of notifying interested parties.
(WebCore::MediaStreamTrack::readonly): New.
(WebCore::MediaStreamTrack::remote): New.
(WebCore::MediaStreamTrack::constraints): New.
(WebCore::MediaStreamTrack::states): New.
(WebCore::MediaStreamTrack::capabilities): New.
(WebCore::MediaStreamTrack::applyConstraints): New.
(WebCore::MediaStreamTrack::clone): New.
(WebCore::MediaStreamTrack::stopProducingData): New.
(WebCore::MediaStreamTrack::sourceStateChanged): Renamed from sourceChangedState.
(WebCore::MediaStreamTrack::sourceMutedChanged): New.
(WebCore::MediaStreamTrack::sourceEnabledChanged): New.
(WebCore::MediaStreamTrack::configureTrackRendering): New.
(WebCore::MediaStreamTrack::stopped): New.
(WebCore::MediaStreamTrack::stop): Call stopProducingData.
(WebCore::MediaStreamTrack::scheduleEventDispatch): New.
(WebCore::MediaStreamTrack::dispatchQueuedEvents): New.
* Modules/mediastream/MediaStreamTrack.h:
* Modules/mediastream/MediaStreamTrack.idl:

* Modules/mediastream/MediaTrackConstraint.cpp: Added.
* Modules/mediastream/MediaTrackConstraint.h: Added.
* Modules/mediastream/MediaTrackConstraint.idl: Added.

// Add empty classes/IDL for track constraint objects.
* Modules/mediastream/MediaTrackConstraintSet.cpp: Added.
* Modules/mediastream/MediaTrackConstraintSet.h: Added.
* Modules/mediastream/MediaTrackConstraintSet.idl: Added.
* Modules/mediastream/MediaTrackConstraints.cpp: Added.
* Modules/mediastream/MediaTrackConstraints.h: Added.
* Modules/mediastream/MediaTrackConstraints.idl: Added.

* Modules/mediastream/UserMediaRequest.cpp:
(WebCore::UserMediaRequest::callSuccessHandler): Don't call the stream center, the
    stream can take care of notifying interested parties.

// Add a constructor and create() that take a MediaStreamTrack*.
* Modules/mediastream/VideoStreamTrack.cpp:
(WebCore::VideoStreamTrack::create):
(WebCore::VideoStreamTrack::VideoStreamTrack):
* Modules/mediastream/VideoStreamTrack.h:

// Create a MediaStreamSource subclass for WebAudio
* Modules/webaudio/AudioContext.cpp:
(WebCore::AudioContext::createMediaStreamSource): Call isAudioStreamSource instead
    of checking deviceID.
* Modules/webaudio/MediaStreamAudioDestinationNode.cpp:
(WebCore::MediaStreamAudioDestinationNode::MediaStreamAudioDestinationNode): Create a
    MediaStreamAudioSource instead of a MediaStreamSource.
* Modules/webaudio/MediaStreamAudioDestinationNode.h:
* Modules/webaudio/MediaStreamAudioSource.cpp: Added.
* Modules/webaudio/MediaStreamAudioSource.h: Added.
(WebCore::MediaStreamAudioSource::~MediaStreamAudioSource):

// Add new generated files.
* bindings/js/JSMediaSourceStatesCustom.cpp: Added.
* bindings/js/JSMediaStreamCapabilitiesCustom.cpp: Added.

* dom/EventNames.h: Defined 'overconstrained' event.

* platform/mediastream/MediaStreamCenter.h: Get rid of all of the methods nobody uses.
    It isn't clear that they are necessary, and we can add them back if/when we need them.

* platform/mediastream/MediaStreamDescriptor.cpp:
(WebCore::MediaStreamDescriptor::~MediaStreamDescriptor): Clear the all source streams.
(WebCore::MediaStreamDescriptor::removeSource): Clear the source stream.
* platform/mediastream/MediaStreamDescriptor.h:

// Make MediaStreamSource an abstract base class, and remove everyting WebAudio-specific
//  to MediaStreamAudioSource.
* platform/mediastream/MediaStreamSource.cpp:
(WebCore::MediaStreamSource::MediaStreamSource): Remove readyState and requiresConsumer
    parameters. Create new UUID for id if non was passed.
(WebCore::MediaStreamSource::reset): Reset internal state to just-constructed. Used for testing.
(WebCore::MediaStreamSource::setReadyState): sourceChangedState -> sourceStateChanged.
(WebCore::MediaStreamSource::setStream): Remove the ASSERT that check for a source being
    added to a new stream. This is still a problem, but it is required for testing and will
    be fixed as a part of bug 121954.
(WebCore::MediaStreamSource::setConstraints): Added.
(WebCore::MediaStreamSource::setMuted): Notify observers when muted changes.
(WebCore::MediaStreamSource::setEnabled): Notify observers when enabled changes.
(WebCore::MediaStreamSource::readonly): New.
(WebCore::MediaStreamSource::stop): New. Set state to Ended when all of the observers has
    stopped.
* platform/mediastream/MediaStreamSource.h:

// Define platform versions of the Capabilities classes.
* platform/mediastream/MediaStreamSourceCapabilities.h: Added.

// Update the non-functional platform stream centers for the API changes.
* platform/mediastream/blackberry/MediaStreamCenterBlackBerry.cpp:
* platform/mediastream/blackberry/MediaStreamCenterBlackBerry.h:
* platform/mediastream/gstreamer/MediaStreamCenterGStreamer.cpp:
* platform/mediastream/gstreamer/MediaStreamCenterGStreamer.h:
* platform/mediastream/mac/MediaStreamCenterMac.cpp:
* platform/mediastream/mac/MediaStreamCenterMac.h:

// Update the Mock stream center for the API changes. Add a concrete mock MediaStreamSource
//  subclass.
* platform/mock/MockMediaStreamCenter.cpp:
(WebCore::MockSource::MockSource): New, the mock media stream source.
(WebCore::MockSource::~MockSource):
(WebCore::MockSource::capabilities):
(WebCore::MockSource::states):
(WebCore::mockSourceMap):
(WebCore::mockAudioSourceID):
(WebCore::mockVideoSourceID):
(WebCore::initializeMockSources): Create one audio and one video mock source.
(WebCore::MockMediaStreamCenter::registerMockMediaStreamCenter): Call initializeMockSources.
(WebCore::MockMediaStreamCenter::createMediaStream): Use the already allocated mock media
    sources.
(WebCore::MockMediaStreamCenter::getMediaStreamTrackSources): Ditto.
* platform/mock/MockMediaStreamCenter.h:

LayoutTests:

* fast/mediastream/MediaStreamTrack-expected.txt:
* fast/mediastream/MediaStreamTrack.html:
* fast/mediastream/MediaStreamTrack-getSources-expected.txt:
* fast/mediastream/MediaStreamTrack-getSources.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157068 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[GTK] Missing packages for APT on install-dependencies
commit-queue@webkit.org [Mon, 7 Oct 2013 23:43:10 +0000 (23:43 +0000)]
[GTK] Missing packages for APT on install-dependencies
https://bugs.webkit.org/show_bug.cgi?id=121555

Patch by Gustavo Noronha Silva <gns@gnome.org> on 2013-10-07
Reviewed by Martin Robinson.

* gtk/install-dependencies: add packages that are needed for
building WebKit itself and the jhbuild dependencies.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157067 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoFix Windows build.
andersca@apple.com [Mon, 7 Oct 2013 23:33:14 +0000 (23:33 +0000)]
Fix Windows build.

* wtf/StdLibExtras.h:
(std::make_unique):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157066 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoCTTE: Live node lists always have an owner Node.
akling@apple.com [Mon, 7 Oct 2013 23:05:58 +0000 (23:05 +0000)]
CTTE: Live node lists always have an owner Node.
<https://webkit.org/b/122470>

Reviewed by Anders Carlsson.

Make LiveNodeListBase::m_ownerNode a Ref<Node> instead of a RefPtr
and have all constructors take Node&.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157065 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoReduce duplicated code in WebPageProxy
kov@webkit.org [Mon, 7 Oct 2013 23:01:31 +0000 (23:01 +0000)]
Reduce duplicated code in WebPageProxy
https://bugs.webkit.org/show_bug.cgi?id=122230

Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> on 2013-10-07
Reviewed by Darin Adler.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::close): move duplicate code to resetState and call it.
(WebKit::WebPageProxy::resetState): new private method for code that is shared between
close and resetStateAfterProcessExited.
(WebKit::WebPageProxy::resetStateAfterProcessExited): move duplicate code to resetState
and call it.
* UIProcess/WebPageProxy.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157064 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoFix test failures.
andersca@apple.com [Mon, 7 Oct 2013 22:58:20 +0000 (22:58 +0000)]
Fix test failures.

* Scripts/webkitpy/port/base.py:
(Port.to.start_helper):
* Scripts/webkitpy/port/mock_drt.py:
(MockDRTPort.start_helper):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157063 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoFTL memory allocator should be able to allocate data sections in non-executable memory
fpizlo@apple.com [Mon, 7 Oct 2013 22:46:54 +0000 (22:46 +0000)]
FTL memory allocator should be able to allocate data sections in non-executable memory
https://bugs.webkit.org/show_bug.cgi?id=116189

Reviewed by Sam Weinig.

Use a RefCountedArray<int64_t> for data sections. This works out great because
RefCountedArray<> knows its own size and because the reference counting makes passing
it around very easy (you don't have to stress out about ownership).

* ftl/FTLCompile.cpp:
(JSC::FTL::mmAllocateDataSection):
(JSC::FTL::compile):
* ftl/FTLJITCode.cpp:
(JSC::FTL::JITCode::addDataSection):
* ftl/FTLJITCode.h:
(JSC::FTL::JITCode::dataSections):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157062 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoClean up ScriptExecutionContext::Task and subclasses
andersca@apple.com [Mon, 7 Oct 2013 22:37:25 +0000 (22:37 +0000)]
Clean up ScriptExecutionContext::Task and subclasses
https://bugs.webkit.org/show_bug.cgi?id=122469

Reviewed by Andreas Kling.

* Modules/webdatabase/Database.cpp:
(WebCore::DerefContextTask::DerefContextTask):
(WebCore::Database::~Database):
(WebCore::DeliverPendingCallbackTask::DeliverPendingCallbackTask):
(WebCore::Database::scheduleTransactionCallback):
* Modules/webdatabase/DatabaseManager.cpp:
(WebCore::DatabaseCreationCallbackTask::DatabaseCreationCallbackTask):
(WebCore::DatabaseManager::openDatabase):
* Modules/webdatabase/SQLCallbackWrapper.h:
(WebCore::SQLCallbackWrapper::clear):
(WebCore::SQLCallbackWrapper::SafeReleaseTask::SafeReleaseTask):
* Modules/websockets/ThreadableWebSocketChannelClientWrapper.cpp:
(WebCore::ThreadableWebSocketChannelClientWrapper::processPendingTasks):
* Modules/websockets/ThreadableWebSocketChannelClientWrapper.h:
* Modules/websockets/WorkerThreadableWebSocketChannel.cpp:
(WebCore::WorkerThreadableWebSocketChannel::WorkerGlobalScopeDidInitializeTask::WorkerGlobalScopeDidInitializeTask):
(WebCore::WorkerThreadableWebSocketChannel::Bridge::mainThreadInitialize):
* bindings/js/JSCallbackData.h:
(WebCore::DeleteCallbackDataTask::DeleteCallbackDataTask):
* bindings/js/JSDOMGlobalObjectTask.h:
* bindings/js/JSDOMWindowBase.cpp:
(WebCore::JSDOMWindowBase::queueTaskToEventLoop):
* bindings/js/JSWorkerGlobalScopeBase.cpp:
(WebCore::JSWorkerGlobalScopeBase::queueTaskToEventLoop):
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateCallbackImplementation):
* dom/CrossThreadTask.h:
(WebCore::createCallbackTask):
* dom/Document.cpp:
(WebCore::Document::addConsoleMessage):
(WebCore::Document::addMessage):
(WebCore::PerformTaskContext::PerformTaskContext):
(WebCore::Document::postTask):
(WebCore::Document::pendingTasksTimerFired):
* dom/Document.h:
* dom/ScriptExecutionContext.cpp:
(WebCore::ProcessMessagesSoonTask::ProcessMessagesSoonTask):
(WebCore::ScriptExecutionContext::processMessagePortMessagesSoon):
* dom/ScriptExecutionContext.h:
* dom/StringCallback.cpp:
(WebCore::StringCallback::scheduleCallback):
* loader/appcache/ApplicationCacheGroup.cpp:
(WebCore::CallCacheListenerTask::CallCacheListenerTask):
(WebCore::ApplicationCacheGroup::postListenerTask):
* workers/DefaultSharedWorkerRepository.cpp:
(WebCore::SharedWorkerProxy::postTaskToLoader):
(WebCore::SharedWorkerProxy::postTaskForModeToWorkerGlobalScope):
(WebCore::DefaultSharedWorkerRepository::workerScriptLoaded):
(WebCore::DefaultSharedWorkerRepository::connectToWorker):
* workers/WorkerEventQueue.cpp:
(WebCore::WorkerEventQueue::enqueueEvent):
* workers/WorkerGlobalScope.cpp:
(WebCore::WorkerGlobalScope::close):
(WebCore::WorkerGlobalScope::postTask):
(WebCore::WorkerGlobalScope::addConsoleMessage):
(WebCore::WorkerGlobalScope::addMessage):
* workers/WorkerGlobalScope.h:
* workers/WorkerLoaderProxy.h:
* workers/WorkerMessagingProxy.cpp:
(WebCore::WorkerMessagingProxy::postMessageToWorkerObject):
(WebCore::WorkerMessagingProxy::postMessageToWorkerGlobalScope):
(WebCore::WorkerMessagingProxy::postTaskForModeToWorkerGlobalScope):
(WebCore::WorkerMessagingProxy::postTaskToLoader):
(WebCore::WorkerMessagingProxy::postExceptionToWorkerObject):
(WebCore::WorkerMessagingProxy::workerThreadCreated):
(WebCore::WorkerMessagingProxy::notifyNetworkStateChange):
(WebCore::WorkerMessagingProxy::workerGlobalScopeDestroyed):
(WebCore::WorkerMessagingProxy::workerGlobalScopeClosed):
(WebCore::WorkerMessagingProxy::postMessageToPageInspector):
(WebCore::WorkerMessagingProxy::confirmMessageFromWorkerObject):
(WebCore::WorkerMessagingProxy::reportPendingActivity):
* workers/WorkerMessagingProxy.h:
* workers/WorkerRunLoop.cpp:
(WebCore::WorkerRunLoop::postTask):
(WebCore::WorkerRunLoop::postTaskAndTerminate):
(WebCore::WorkerRunLoop::postTaskForMode):
(WebCore::WorkerRunLoop::Task::Task):
* workers/WorkerRunLoop.h:
* workers/WorkerThread.cpp:
(WebCore::WorkerThreadShutdownFinishTask::WorkerThreadShutdownFinishTask):
(WebCore::WorkerThreadShutdownStartTask::performTask):
(WebCore::WorkerThread::stop):
(WebCore::WorkerThread::releaseFastMallocFreeMemoryInAllThreads):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157061 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoModify WTF and JavaScriptCore makefiles for x64 build.
roger_fong@apple.com [Mon, 7 Oct 2013 22:25:03 +0000 (22:25 +0000)]
Modify WTF and JavaScriptCore makefiles for x64 build.
https://bugs.webkit.org/show_bug.cgi?id=122467.
<rdar://problem/15169174>.

Reviewed by Brent Fulgham.

* WTF.vcxproj/WTF.make:
* JavaScriptCore.vcxproj/JavaScriptCore.make:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157060 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoFTL: Optimize IsString(@2<String>) -> JSConst(true) + Phantom()
commit-queue@webkit.org [Mon, 7 Oct 2013 22:08:53 +0000 (22:08 +0000)]
FTL: Optimize IsString(@2<String>) -> JSConst(true) + Phantom()
https://bugs.webkit.org/show_bug.cgi?id=122363

Patch by Nadav Rotem <nrotem@apple.com> on 2013-10-07
Reviewed by Filip Pizlo.

* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157059 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoCTTE: Use references in and around DragController
commit-queue@webkit.org [Mon, 7 Oct 2013 20:34:35 +0000 (20:34 +0000)]
CTTE: Use references in and around DragController
https://bugs.webkit.org/show_bug.cgi?id=122427

Patch by Sam Weinig <sam@webkit.org> on 2013-10-07
Reviewed by Andreas Kling.

Source/WebCore:

Use references to indicate non-nullness of DragController related
objects.

Source/WebKit/efl:

* WebCoreSupport/DragClientEfl.cpp:
(WebCore::DragClientEfl::willPerformDragDestinationAction):
(WebCore::DragClientEfl::willPerformDragSourceAction):
(WebCore::DragClientEfl::actionMaskForDrag):
(WebCore::DragClientEfl::startDrag):
* WebCoreSupport/DragClientEfl.h:

Source/WebKit/gtk:

* WebCoreSupport/DragClientGtk.cpp:
(WebKit::DragClient::willPerformDragDestinationAction):
(WebKit::DragClient::willPerformDragSourceAction):
(WebKit::DragClient::actionMaskForDrag):
(WebKit::DragClient::startDrag):
* WebCoreSupport/DragClientGtk.h:
* webkit/webkitwebview.cpp:
(dragExitedCallback):
(webkit_web_view_drag_motion):
(webkit_web_view_drag_data_received):
(webkit_web_view_drag_drop):

Source/WebKit/mac:

* WebCoreSupport/WebDragClient.h:
* WebCoreSupport/WebDragClient.mm:
(WebDragClient::actionMaskForDrag):
(WebDragClient::willPerformDragDestinationAction):
(WebDragClient::willPerformDragSourceAction):
(WebDragClient::startDrag):
(WebDragClient::declareAndWriteDragImage):
* WebView/WebFrame.mm:
(-[WebFrame _replaceSelectionWithText:selectReplacement:smartReplace:]):
* WebView/WebHTMLView.mm:
(-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]):
* WebView/WebView.mm:
(-[WebView draggingEntered:]):
(-[WebView draggingUpdated:]):
(-[WebView draggingExited:]):
(-[WebView performDragOperation:]):

Source/WebKit/win:

* WebCoreSupport/WebDragClient.cpp:
(WebDragClient::actionMaskForDrag):
(WebDragClient::willPerformDragDestinationAction):
(WebDragClient::willPerformDragSourceAction):
(WebDragClient::startDrag):
* WebCoreSupport/WebDragClient.h:

Source/WebKit2:

* UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseDragDataReceived):
(webkitWebViewBaseDragMotion):
(dragExitedCallback):
(webkitWebViewBaseDragDrop):
* UIProcess/API/mac/WKView.mm:
(-[WKView draggingEntered:]):
(-[WKView draggingUpdated:]):
(-[WKView draggingExited:]):
(-[WKView performDragOperation:]):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::dragEntered):
(WebKit::WebPageProxy::dragUpdated):
(WebKit::WebPageProxy::dragExited):
(WebKit::WebPageProxy::performDrag):
(WebKit::WebPageProxy::performDragControllerAction):
* UIProcess/WebPageProxy.h:
* WebProcess/WebCoreSupport/WebDragClient.cpp:
(WebKit::WebDragClient::willPerformDragDestinationAction):
(WebKit::WebDragClient::willPerformDragSourceAction):
(WebKit::WebDragClient::actionMaskForDrag):
(WebKit::WebDragClient::dragSourceActionMaskForPoint):
(WebKit::WebDragClient::startDrag):
* WebProcess/WebCoreSupport/WebDragClient.h:
* WebProcess/WebCoreSupport/gtk/WebDragClientGtk.cpp:
(WebKit::WebDragClient::startDrag):
* WebProcess/WebCoreSupport/mac/WebDragClientMac.mm:
(WebKit::WebDragClient::startDrag):
(WebKit::cachedImage):
(WebKit::WebDragClient::declareAndWriteDragImage):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::performDragControllerAction):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157058 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoAlways force discrete mode when running layout tests
andersca@apple.com [Mon, 7 Oct 2013 20:28:03 +0000 (20:28 +0000)]
Always force discrete mode when running layout tests
https://bugs.webkit.org/show_bug.cgi?id=122465

Reviewed by Tim Horton.

This should speed up WebGL tests and hopefully prevent race conditions that may cause window server crashes from happening.

* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
Link with IOKit.

* DumpRenderTree/mac/LayoutTestHelper.m:
(installLayoutTestColorProfile):
Check installColorProfile.

(restoreUserColorProfile):
Check installColorProfile.

(lockDownDiscreteGraphics):
New function to force discrete graphics.

(main):
Add '--install-color-profile' option.

* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager._set_up_run):
Always start the helper, but pass self._options.pixel_tests to it.

* Scripts/webkitpy/port/mac.py:
(MacPort.start_helper):
Pass --install-color-profile' to the helper if pixel_tests is true.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157057 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoAnimated images are not restarted when page visibility changes
timothy_horton@apple.com [Mon, 7 Oct 2013 20:27:16 +0000 (20:27 +0000)]
Animated images are not restarted when page visibility changes
https://bugs.webkit.org/show_bug.cgi?id=122464
<rdar://problem/14293474>

Reviewed by Simon Fraser.

Always kickstart animated images when the page visibility changes,
which can occur via window occlusion, and which is independent of in-window
state, which we were previously using to advance animation.

No new tests; attempts to make a test have resulted only in a flaky, timing-dependent test.

* page/Frame.cpp:
(WebCore::Frame::resumeActiveDOMObjectsAndAnimations):
Move this call to resumeAnimatingImages() up to Page.

* page/FrameView.cpp:
(WebCore::FrameView::setIsInWindow):
Move this call to resumeAnimatingImages() up to Page.

* WebCore.exp.in
* page/FrameView.h:
* page/Page.h:
Move resumeAnimatingImages() itself up to Page.

* page/Page.cpp:
(WebCore::Page::setIsInWindow):
Resume animated images when we move in-window.

(WebCore::Page::setVisibilityState):
Resume animated images when we become visible.
This is the one we were previously missing.

(WebCore::Page::resumeActiveDOMObjectsAndAnimations):
Resume animated images when we're told to.

(WebCore::Page::resumeAnimatingImages):
Kickstart any animated images in all frames.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157056 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Mac] Drawing video into canvas doesn't work on the first attempt
dino@apple.com [Mon, 7 Oct 2013 20:04:46 +0000 (20:04 +0000)]
[Mac] Drawing video into canvas doesn't work on the first attempt
https://bugs.webkit.org/show_bug.cgi?id=122404

Patch by Jer Noble <jer.noble@apple.com> on 2013-10-07
Reviewed by Eric Carlson.

Source/WebCore:

Test: media/video-canvas-drawing.html

If creating and painting from an AVPlayerItemVideoOutput fails, fall back
to the (much slower) AVAssetImageGenerator path. Make sure to revert to the
AVPlayerItemVideoOutput path when that object begins to have available
images, however.

To do so, remove the "__MAC_OS_X_VERSION_MIN_REQUIRED < 1080" check around
the AVAssetImageGenerator code, and allow both the image generator and video
output to exist simultaneously.

* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::hasContextRenderer):
(WebCore::MediaPlayerPrivateAVFoundationObjC::destroyContextVideoRenderer):
(WebCore::MediaPlayerPrivateAVFoundationObjC::destroyImageGenerator):
(WebCore::MediaPlayerPrivateAVFoundationObjC::paintCurrentFrameInContext):
(WebCore::MediaPlayerPrivateAVFoundationObjC::videoOutputHasAvailableFrame):
(WebCore::MediaPlayerPrivateAVFoundationObjC::paintWithVideoOutput):

LayoutTests:

* media/video-canvas-drawing-expected.png: Added.
* media/video-canvas-drawing-expected.txt: Added.
* media/video-canvas-drawing.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157055 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoURLMediaSource.idl and URLMediaStream.idl are wrong
jer.noble@apple.com [Mon, 7 Oct 2013 19:12:14 +0000 (19:12 +0000)]
URLMediaSource.idl and URLMediaStream.idl are wrong
https://bugs.webkit.org/show_bug.cgi?id=122301

Reviewed by Philippe Normand.

Rename URLMediaSource and URLMediaStream to DOMURLMediaSource and DOMURLMediaStream,
respectively.

Update the build files:
* CMakeLists.txt: Rename URL -> DOMURL.
* DerivedSources.make: Ditto.
* GNUmakefile.list.am: Ditto.
* WebCore.xcodeproj/project.pbxproj: Ditto.

Rename the .idl and implementation files:
* Modules/mediasource/DOMURLMediaSource.cpp: Renamed from Source/WebCore/Modules/mediasource/URLMediaSource.cpp.
(WebCore::DOMURLMediaSource::createObjectURL):
* Modules/mediasource/DOMURLMediaSource.h: Renamed from Source/WebCore/Modules/mediasource/URLMediaSource.h.
* Modules/mediasource/DOMURLMediaSource.idl: Renamed from Source/WebCore/Modules/mediasource/URLMediaSource.idl.
* Modules/mediastream/DOMURLMediaStream.cpp: Renamed from Source/WebCore/Modules/mediastream/URLMediaStream.cpp.
(WebCore::DOMURLMediaStream::createObjectURL):
* Modules/mediastream/DOMURLMediaStream.h: Renamed from Source/WebCore/Modules/mediastream/URLMediaStream.h.
* Modules/mediastream/DOMURLMediaStream.idl: Renamed from Source/WebCore/Modules/mediastream/URLMediaStream.idl.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157054 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agocss3/images/cross-fade-svg-with-opacity.html fails with colorspace mismatch on Mounta...
timothy_horton@apple.com [Mon, 7 Oct 2013 18:58:51 +0000 (18:58 +0000)]
css3/images/cross-fade-svg-with-opacity.html fails with colorspace mismatch on Mountain Lion
https://bugs.webkit.org/show_bug.cgi?id=122456

* platform/mac-wk2/TestExpectations:
Mark the test as failing for now.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157053 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoProperly count binding test failures as failures.
timothy@apple.com [Mon, 7 Oct 2013 18:52:26 +0000 (18:52 +0000)]
Properly count binding test failures as failures.

Fix the total for multiple failures in different steps too by avoiding undefined.

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

Reviewed by Alexey Proskuryakov.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotTestResults.js:
(BuildbotTestResults):
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotTesterQueueView.js:
(BuildbotTesterQueueView.prototype.update.appendBuilderQueueStatus):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157052 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[CSSRegions] Move region styling tests into fast/regions/region-styling
mihnea@adobe.com [Mon, 7 Oct 2013 18:50:42 +0000 (18:50 +0000)]
[CSSRegions] Move region styling tests into fast/regions/region-styling
https://bugs.webkit.org/show_bug.cgi?id=122451

Reviewed by Sam Weinig.

Create region-styling folder under fast/regions and move related region styling tests.

* fast/regions/region-styling/parse-incomplete-region-rule-expected.txt: Renamed from LayoutTests/fast/regions/parse-incomplete-region-rule-expected.txt.
* fast/regions/region-styling/parse-incomplete-region-rule.html: Renamed from LayoutTests/fast/regions/parse-incomplete-region-rule.html.
* fast/regions/region-styling/parsing-region-style-rule-expected.txt: Renamed from LayoutTests/fast/regions/parsing-region-style-rule-expected.txt.
* fast/regions/region-styling/parsing-region-style-rule.html: Renamed from LayoutTests/fast/regions/parsing-region-style-rule.html.
* fast/regions/region-styling/region-rule-nested-region-rule-expected.html: Renamed from LayoutTests/fast/regions/region-rule-nested-region-rule-expected.html.
* fast/regions/region-styling/region-rule-nested-region-rule.html: Renamed from LayoutTests/fast/regions/region-rule-nested-region-rule.html.
* fast/regions/region-styling/region-style-block-background-color-expected.html: Renamed from LayoutTests/fast/regions/region-style-block-background-color-expected.html.
* fast/regions/region-styling/region-style-block-background-color.html: Renamed from LayoutTests/fast/regions/region-style-block-background-color.html.
* fast/regions/region-styling/region-style-block-background-color2-expected.html: Renamed from LayoutTests/fast/regions/region-style-block-background-color2-expected.html.
* fast/regions/region-styling/region-style-block-background-color2.html: Renamed from LayoutTests/fast/regions/region-style-block-background-color2.html.
* fast/regions/region-styling/region-style-color-expected.html: Renamed from LayoutTests/fast/regions/region-style-color-expected.html.
* fast/regions/region-styling/region-style-color.html: Renamed from LayoutTests/fast/regions/region-style-color.html.
* fast/regions/region-styling/region-style-image-background-color-expected.html: Renamed from LayoutTests/fast/regions/region-style-image-background-color-expected.html.
* fast/regions/region-styling/region-style-image-background-color.html: Renamed from LayoutTests/fast/regions/region-style-image-background-color.html.
* fast/regions/region-styling/region-style-in-columns-expected.html: Renamed from LayoutTests/fast/regions/region-style-in-columns-expected.html.
* fast/regions/region-styling/region-style-in-columns.html: Renamed from LayoutTests/fast/regions/region-style-in-columns.html.
* fast/regions/region-styling/region-style-inline-background-color-expected.html: Renamed from LayoutTests/fast/regions/region-style-inline-background-color-expected.html.
* fast/regions/region-styling/region-style-inline-background-color.html: Renamed from LayoutTests/fast/regions/region-style-inline-background-color.html.
* fast/regions/region-styling/region-style-not-supported-properties-expected.html: Renamed from LayoutTests/fast/regions/region-style-not-supported-properties-expected.html.
* fast/regions/region-styling/region-style-not-supported-properties.html: Renamed from LayoutTests/fast/regions/region-style-not-supported-properties.html.
* fast/regions/region-styling/region-style-rule-position-expected.html: Renamed from LayoutTests/fast/regions/region-style-rule-position-expected.html.
* fast/regions/region-styling/region-style-rule-position.html: Renamed from LayoutTests/fast/regions/region-style-rule-position.html.
* fast/regions/region-styling/region-style-rule-specificity-expected.html: Renamed from LayoutTests/fast/regions/region-style-rule-specificity-expected.html.
* fast/regions/region-styling/region-style-rule-specificity.html: Renamed from LayoutTests/fast/regions/region-style-rule-specificity.html.
* fast/regions/region-styling/region-styling-mediaquery-expected.html: Renamed from LayoutTests/fast/regions/region-styling-mediaquery-expected.html.
* fast/regions/region-styling/region-styling-mediaquery.html: Renamed from LayoutTests/fast/regions/region-styling-mediaquery.html.
* fast/regions/region-styling/remove-leftover-anon-block-crash-expected.txt: Renamed from LayoutTests/fast/regions/remove-leftover-anon-block-crash-expected.txt.
* fast/regions/region-styling/remove-leftover-anon-block-crash.html: Renamed from LayoutTests/fast/regions/remove-leftover-anon-block-crash.html.
* fast/regions/region-styling/removed-element-style-in-region-crash-expected.txt: Renamed from LayoutTests/fast/regions/removed-element-style-in-region-crash-expected.txt.
* fast/regions/region-styling/removed-element-style-in-region-crash.html: Renamed from LayoutTests/fast/regions/removed-element-style-in-region-crash.html.
* fast/regions/region-styling/render-region-custom-style-mark-expected.html: Renamed from LayoutTests/fast/regions/render-region-custom-style-mark-expected.html.
* fast/regions/region-styling/render-region-custom-style-mark.html: Renamed from LayoutTests/fast/regions/render-region-custom-style-mark.html.
* fast/regions/region-styling/set-box-style-in-region-crash-expected.txt: Renamed from LayoutTests/fast/regions/set-box-style-in-region-crash-expected.txt.
* fast/regions/region-styling/set-box-style-in-region-crash.html: Renamed from LayoutTests/fast/regions/set-box-style-in-region-crash.html.
* fast/regions/region-styling/webkit-region-rule-expected.txt: Renamed from LayoutTests/fast/regions/webkit-region-rule-expected.txt.
* fast/regions/region-styling/webkit-region-rule.html: Renamed from LayoutTests/fast/regions/webkit-region-rule.html.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157051 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoTransition stack check JITStubs to CCallHelper functions
msaboff@apple.com [Mon, 7 Oct 2013 18:20:27 +0000 (18:20 +0000)]
Transition stack check JITStubs to CCallHelper functions
https://bugs.webkit.org/show_bug.cgi?id=122289

Reviewed by Filip Pizlo.

Replaced jit stubs cti_stack_check, cti_op_call_arityCheck and cti_op_construct_arityCheck with
jit operations operationStackCheck, operationCallArityCheck & operationConstructArityCheck.
Added new callOperationWithCallFrameRollbackOnException() in baseline and DFG JITs to call
these new functions.  Added code to unwind one frame in JIT::privateCompileExceptionHandlers()
and JITCompiler::compileExceptionHandlers() for these cases that need to throw exceptions in
their caller frame when the stack is exhausted.

* assembler/MacroAssembler.h:
(JSC::MacroAssembler::andPtr): Added to handle masking a pointer with a literal.
* assembler/MacroAssemblerX86_64.h:
(JSC::MacroAssemblerX86_64::and64): Added to handle masking a pointer with a literal.
* dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::compileExceptionHandlers):
(JSC::DFG::JITCompiler::compileFunction):
(JSC::DFG::JITCompiler::linkFunction):
* dfg/DFGJITCompiler.h:
(JSC::DFG::JITCompiler::exceptionCheckWithCallFrameRollback):
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::callOperationWithCallFrameRollbackOnException):
(JSC::DFG::SpeculativeJIT::appendCallWithExceptionCheck):
(JSC::DFG::SpeculativeJIT::appendCallWithCallFrameRollbackOnException):
(JSC::DFG::SpeculativeJIT::appendCallWithExceptionCheckSetResult):
(JSC::DFG::SpeculativeJIT::appendCallWithCallFrameRollbackOnExceptionSetResult):
* ftl/FTLLink.cpp:
(JSC::FTL::link):
* interpreter/CallFrame.h:
(JSC::ExecState::hostCallFrameFlag):
* jit/AssemblyHelpers.cpp:
(JSC::AssemblyHelpers::jitAssertIsNull):
* jit/AssemblyHelpers.h:
(JSC::AssemblyHelpers::jitAssertIsNull):
* jit/JIT.cpp:
(JSC::JIT::privateCompile):
(JSC::JIT::privateCompileExceptionHandlers):
* jit/JIT.h:
(JSC::JIT::exceptionCheckWithCallFrameRollback):
* jit/JITInlines.h:
(JSC::JIT::appendCallWithCallFrameRollbackOnException):
(JSC::JIT::callOperationWithCallFrameRollbackOnException):
* jit/JITOperations.cpp:
* jit/JITOperations.h:
* jit/JITStubs.cpp:
* jit/JITStubs.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157050 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoRemove passIn and passOut from HashTraits
andersca@apple.com [Mon, 7 Oct 2013 18:07:54 +0000 (18:07 +0000)]
Remove passIn and passOut from HashTraits
https://bugs.webkit.org/show_bug.cgi?id=122452

Reviewed by Sam Weinig.

Change RefPtrHashMap to not use passOut (just like the regular HashMap) and get rid of the
passIn and passOut functions and related typedefs.

* wtf/HashTraits.h:
* wtf/RefPtrHashMap.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157049 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoConditional support in bindings code generator for overloaded functions
commit-queue@webkit.org [Mon, 7 Oct 2013 17:45:42 +0000 (17:45 +0000)]
Conditional support in bindings code generator for overloaded functions
https://bugs.webkit.org/show_bug.cgi?id=122443

Patch by Philippe Normand <pnormand@igalia.com> on 2013-10-07
Reviewed by Darin Adler.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateOverloadedFunction): Generate conditional for overloaded
function, if it's present in the idl.
(GenerateImplementation): Close the last overloaded function
conditional before generating the distpatch function.
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::jsTestObjConstructorFunctionOverloadedMethod1):
Rebaseline overloaded function tests.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157048 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoASSERTION FAILED: isUInt32() in jsc-layout-tests.yaml/js/script-tests/dfg-uint32...
fpizlo@apple.com [Mon, 7 Oct 2013 17:42:20 +0000 (17:42 +0000)]
ASSERTION FAILED: isUInt32() in jsc-layout-tests.yaml/js/script-tests/dfg-uint32-to-number-in-middle-of-copy-propagation.js.layout-dfg-eager-no-cjit
https://bugs.webkit.org/show_bug.cgi?id=122419

Source/JavaScriptCore:

Reviewed by Oliver Hunt.

AI was using JSValue::asUInt32() incorrectly. That method presumes that the input is
both a int32 and a uint32 (it's in the range [0, 2^31)). The UInt32ToNumber node is
instead dealing with an input that is always represented as a int32 but that has the
meaning of a uint32 - so AI should use JSValue::asInt32() and then do the cast.

* dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::::executeEffects):

LayoutTests:

Reviewed by Oliver Hunt.

* js/script-tests/dfg-uint32-to-number-in-middle-of-copy-propagation.js:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157047 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[sh4] Jump over maxJumpReplacementSize in revertJumpToMove.
commit-queue@webkit.org [Mon, 7 Oct 2013 16:59:34 +0000 (16:59 +0000)]
[sh4] Jump over maxJumpReplacementSize in revertJumpToMove.
https://bugs.webkit.org/show_bug.cgi?id=120007

Patch by Julien Brianceau <jbriance@cisco.com> on 2013-10-07
Reviewed by Oliver Hunt.

Jump over maxJumpReplacementSize in revertJumpToMove, even if there is no constant
value within the area. This patch fixes debug ASSERTs failures for sh4 architecture.

* assembler/SH4Assembler.h:
(JSC::SH4Assembler::revertJumpToMove):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157046 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago-webkit-cross-fade paints SVGs at full opacity during cross-fade
timothy_horton@apple.com [Mon, 7 Oct 2013 16:48:09 +0000 (16:48 +0000)]
-webkit-cross-fade paints SVGs at full opacity during cross-fade
https://bugs.webkit.org/show_bug.cgi?id=122441
<rdar://problem/13973162>

Reviewed by Simon Fraser.

Test: css3/images/cross-fade-svg-with-opacity.html

* platform/graphics/CrossfadeGeneratedImage.cpp:
(WebCore::drawCrossfadeSubimage):
(WebCore::CrossfadeGeneratedImage::drawCrossfade):
Factor the image painting out into a function.
Conditionally use a transparency layer around painting if the image
we're drawing is an SVG (SVGImage is the only Image subclass that will
not respect the context's opacity).

Add a test that ensures that -cross-fade with SVG images draws correctly.

* css3/images/cross-fade-svg-with-opacity-expected.html: Added.
* css3/images/cross-fade-svg-with-opacity.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157045 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoAdd OVERRIDE and virtual where appropriate
andersca@apple.com [Mon, 7 Oct 2013 16:26:16 +0000 (16:26 +0000)]
Add OVERRIDE and virtual where appropriate
https://bugs.webkit.org/show_bug.cgi?id=122439

Reviewed by Antti Koivisto.

Source/JavaScriptCore:

* API/JSAPIWrapperObject.mm:
* API/JSCallbackObject.h:
(JSC::JSCallbackObjectData::~JSCallbackObjectData):
* API/JSManagedValue.mm:
* API/JSScriptRef.cpp:
(OpaqueJSScript::~OpaqueJSScript):
* bytecode/CodeBlock.h:
* bytecode/StructureStubClearingWatchpoint.h:
* dfg/DFGArrayifySlowPathGenerator.h:
* dfg/DFGCallArrayAllocatorSlowPathGenerator.h:
* dfg/DFGFailedFinalizer.h:
* dfg/DFGJITCode.h:
* dfg/DFGJITFinalizer.h:
* dfg/DFGSaneStringGetByValSlowPathGenerator.h:
* dfg/DFGSlowPathGenerator.h:
* dfg/DFGSpeculativeJIT64.cpp:
* heap/Heap.h:
* heap/IncrementalSweeper.h:
* heap/SuperRegion.h:
* jit/ClosureCallStubRoutine.h:
* jit/ExecutableAllocatorFixedVMPool.cpp:
* jit/GCAwareJITStubRoutine.h:
* jit/JITCode.h:
* jit/JITStubs.cpp:
* jit/JITToDFGDeferredCompilationCallback.h:
* jit/JumpReplacementWatchpoint.h:
* parser/Nodes.h:
* runtime/DataView.h:
* runtime/GCActivityCallback.h:
* runtime/GenericTypedArrayView.h:
* runtime/RegExpCache.h:
* runtime/SimpleTypedArrayController.h:
* runtime/WeakMapData.h:

Source/WebCore:

* Modules/encryptedmedia/MediaKeys.h:
* Modules/webaudio/AnalyserNode.h:
* Modules/webaudio/AudioBasicInspectorNode.h:
* Modules/webaudio/AudioBasicProcessorNode.h:
* Modules/webaudio/AudioBufferSourceNode.h:
* Modules/webaudio/AudioContext.h:
* Modules/webaudio/AudioDestinationNode.h:
* Modules/webaudio/AudioProcessingEvent.h:
* Modules/webaudio/BiquadDSPKernel.h:
* Modules/webaudio/BiquadProcessor.h:
* Modules/webaudio/ChannelMergerNode.h:
* Modules/webaudio/ChannelSplitterNode.h:
* Modules/webaudio/ConvolverNode.h:
* Modules/webaudio/DelayDSPKernel.h:
* Modules/webaudio/DelayProcessor.h:
* Modules/webaudio/DynamicsCompressorNode.h:
* Modules/webaudio/GainNode.h:
* Modules/webaudio/MediaElementAudioSourceNode.h:
* Modules/webaudio/OfflineAudioCompletionEvent.h:
* Modules/webaudio/OfflineAudioDestinationNode.h:
* Modules/webaudio/OscillatorNode.h:
* Modules/webaudio/PannerNode.h:
* Modules/webaudio/ScriptProcessorNode.h:
* Modules/webaudio/WaveShaperProcessor.h:
* accessibility/AccessibilityARIAGrid.h:
* accessibility/AccessibilityARIAGridCell.h:
* accessibility/AccessibilityARIAGridRow.h:
* accessibility/AccessibilityImageMapLink.h:
* accessibility/AccessibilityList.h:
* accessibility/AccessibilityListBox.h:
* accessibility/AccessibilityListBoxOption.h:
* accessibility/AccessibilityMediaControls.h:
* accessibility/AccessibilityMenuList.h:
* accessibility/AccessibilityMenuListOption.h:
* accessibility/AccessibilityMenuListPopup.h:
* accessibility/AccessibilityMockObject.h:
* accessibility/AccessibilityNodeObject.h:
* accessibility/AccessibilityProgressIndicator.h:
* accessibility/AccessibilityRenderObject.h:
* accessibility/AccessibilitySVGRoot.h:
* accessibility/AccessibilityScrollView.h:
* accessibility/AccessibilityScrollbar.h:
* accessibility/AccessibilitySlider.h:
* accessibility/AccessibilitySpinButton.h:
* accessibility/AccessibilityTable.h:
* accessibility/AccessibilityTableCell.h:
* accessibility/AccessibilityTableColumn.h:
* accessibility/AccessibilityTableHeaderContainer.h:
* accessibility/AccessibilityTableRow.h:
* bindings/js/JSEventListener.h:
* bindings/js/WebCoreTypedArrayController.h:
* bridge/c/c_class.h:
* bridge/c/c_instance.h:
* bridge/c/c_runtime.h:
* bridge/runtime_root.h:
* css/CSSBasicShapes.h:
* css/CSSComputedStyleDeclaration.h:
* css/CSSStyleSheet.h:
* dom/Attr.h:
* dom/BeforeTextInsertedEvent.h:
* dom/CDATASection.h:
* dom/ChildNodeList.h:
* dom/DatasetDOMStringMap.h:
* dom/Document.h:
* dom/DocumentEventQueue.h:
* dom/DocumentFragment.h:
* dom/Element.h:
* dom/ErrorEvent.h:
* dom/KeyboardEvent.h:
* dom/Node.h:
* dom/PageTransitionEvent.h:
* dom/ProgressEvent.h:
* dom/PseudoElement.h:
* dom/ScriptExecutionContext.h:
* dom/ShadowRoot.h:
* dom/StyledElement.h:
* dom/TagNodeList.h:
* dom/Text.h:
* dom/TextEvent.h:
* dom/TransitionEvent.h:
* dom/UIEvent.h:
* dom/WebKitAnimationEvent.h:
* dom/WebKitTransitionEvent.h:
* editing/ApplyBlockElementCommand.h:
* editing/ApplyStyleCommand.h:
* editing/BreakBlockquoteCommand.h:
* editing/CompositeEditCommand.h:
* editing/SpellingCorrectionCommand.h:
* fileapi/File.h:
* fileapi/FileThreadTask.h:
* history/BackForwardList.h:
* html/BaseCheckableInputType.h:
* html/HTMLAnchorElement.h:
* html/HTMLAreaElement.h:
* html/HTMLCanvasElement.h:
* html/HTMLCollection.h:
* html/HTMLElement.h:
* html/HTMLFieldSetElement.h:
* html/HTMLFormControlElement.h:
* html/HTMLFormControlElementWithState.h:
* html/HTMLFormElement.h:
* html/HTMLFrameElementBase.h:
* html/HTMLImageElement.h:
* html/HTMLImageLoader.h:
* html/HTMLInputElement.h:
* html/HTMLLabelElement.h:
* html/HTMLLegendElement.h:
* html/HTMLMediaElement.h:
* html/HTMLMeterElement.h:
* html/HTMLOptGroupElement.h:
* html/HTMLOptionElement.h:
* html/HTMLPlugInElement.h:
* html/HTMLPlugInImageElement.h:
* html/HTMLProgressElement.h:
* html/HTMLSelectElement.h:
* html/HTMLTableElement.h:
* html/HTMLTextAreaElement.h:
* html/HTMLTextFormControlElement.h:
* html/HTMLVideoElement.h:
* html/canvas/CanvasRenderingContext2D.cpp:
* html/shadow/MediaControlElementTypes.h:
* html/shadow/MediaControlElements.h:
* html/shadow/SpinButtonElement.h:
* html/shadow/TextControlInnerElements.h:
* html/track/AudioTrackList.h:
* html/track/TextTrackList.h:
* html/track/TrackListBase.h:
* inspector/InspectorValues.h:
* loader/EmptyClients.h:
* loader/ImageLoader.h:
* loader/ResourceLoader.h:
* loader/SubresourceLoader.h:
* loader/appcache/ApplicationCacheGroup.cpp:
* loader/appcache/ApplicationCacheGroup.h:
* loader/appcache/DOMApplicationCache.h:
* loader/archive/cf/LegacyWebArchive.h:
* loader/cache/CachedCSSStyleSheet.h:
* loader/cache/CachedFont.h:
* loader/cache/CachedFontClient.h:
* loader/cache/CachedImageClient.h:
* loader/cache/CachedSVGDocumentClient.h:
* loader/cache/CachedStyleSheetClient.h:
* loader/cache/CachedXSLStyleSheet.h:
* page/Chrome.h:
* page/DOMWindow.h:
* page/FrameView.h:
* page/animation/ImplicitAnimation.h:
* platform/PODIntervalTree.h:
* platform/PODRedBlackTree.h:
* platform/ScrollView.h:
* platform/Scrollbar.h:
* platform/Timer.h:
* platform/animation/TimingFunction.h:
(WebCore::LinearTimingFunction::~LinearTimingFunction):
(WebCore::CubicBezierTimingFunction::~CubicBezierTimingFunction):
(WebCore::StepsTimingFunction::~StepsTimingFunction):
* platform/audio/AudioDSPKernelProcessor.h:
* platform/audio/HRTFPanner.h:
* platform/audio/mac/AudioDestinationMac.h:
* platform/graphics/SimpleFontData.h:
* platform/graphics/avfoundation/InbandTextTrackPrivateAVF.h:
* platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
* platform/graphics/filters/FilterOperation.h:
* platform/network/ResourceHandle.h:
* rendering/AutoTableLayout.h:
* rendering/ClipPathOperation.h:
* rendering/InlineFlowBox.h:
* rendering/RenderBlock.h:
* rendering/RenderBox.h:
* rendering/RenderBoxModelObject.h:
* rendering/RenderButton.h:
* rendering/RenderFieldset.h:
* rendering/RenderFileUploadControl.h:
* rendering/RenderFlexibleBox.h:
* rendering/RenderFlowThread.h:
* rendering/RenderFullScreen.h:
* rendering/RenderImage.h:
* rendering/RenderLayer.h:
* rendering/RenderLineBreak.h:
* rendering/RenderListBox.h:
* rendering/RenderListItem.h:
* rendering/RenderListMarker.h:
* rendering/RenderMenuList.h:
* rendering/RenderMeter.h:
* rendering/RenderObject.h:
* rendering/RenderReplaced.h:
* rendering/RenderSlider.h:
* rendering/RenderTable.h:
* rendering/RenderTableCell.h:
* rendering/RenderText.h:
* rendering/RenderTextControl.h:
* rendering/RenderTextControlSingleLine.h:
* rendering/RenderTextFragment.h:
* rendering/RenderView.h:
* rendering/RootInlineBox.h:
* rendering/mathml/RenderMathMLBlock.h:
* rendering/mathml/RenderMathMLFraction.h:
* rendering/mathml/RenderMathMLOperator.h:
* rendering/style/BasicShapes.h:
* rendering/svg/RenderSVGModelObject.h:
* rendering/svg/RenderSVGShape.h:
* svg/SVGAnimatedBoolean.h:
* svg/SVGAnimatedString.h:
* svg/SVGAnimatedTransformList.h:
* svg/SVGDocument.h:
* svg/SVGElement.h:
* svg/SVGElementInstance.h:
* svg/SVGFontElement.h:
* svg/SVGGElement.h:
* svg/SVGGraphicsElement.h:
* svg/SVGTransformable.h:
* svg/properties/SVGAnimatedListPropertyTearOff.h:
* svg/properties/SVGAnimatedPropertyMacros.h:
* svg/properties/SVGAnimatedTransformListPropertyTearOff.h:
* svg/properties/SVGListPropertyTearOff.h:
* svg/properties/SVGPropertyTearOff.h:
* workers/WorkerGlobalScope.h:

Source/WTF:

* wtf/Compiler.h:
* wtf/FilePrintStream.h:
* wtf/StringPrintStream.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157044 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoTrap 5 (most likely int $3) in jsc-layout-tests.yaml/js/script-tests/integer-division...
fpizlo@apple.com [Mon, 7 Oct 2013 15:50:24 +0000 (15:50 +0000)]
Trap 5 (most likely int $3) in jsc-layout-tests.yaml/js/script-tests/integer-division-neg2tothe32-by-neg1.js.layout-dfg-eager-no-cjit
https://bugs.webkit.org/show_bug.cgi?id=122420

Source/JavaScriptCore:

Reviewed by Michael Saboff.

For the (-2^31/-1)|0 case, we were returning the left operand (i.e. -2^31) but we were
failing to account for the possibility that this operand has high-bit garbage and
int32Result() requires that the high bits are zero.

* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileArithDiv):

LayoutTests:

Reviewed by Michael Saboff.

* js/script-tests/integer-division-neg2tothe32-by-neg1.js:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157043 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[GTK] UserMediaClientGtk needs API update
philn@webkit.org [Mon, 7 Oct 2013 15:47:49 +0000 (15:47 +0000)]
[GTK] UserMediaClientGtk needs API update
https://bugs.webkit.org/show_bug.cgi?id=122324

Reviewed by Martin Robinson.

Update UserMediaClientGtk API after changes made in the parent
class in r156473.

* WebCoreSupport/UserMediaClientGtk.cpp:
(WebKit::UserMediaClientGtk::requestPermission):
(WebKit::UserMediaClientGtk::cancelRequest):
* WebCoreSupport/UserMediaClientGtk.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157042 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoURLMediaStream is unguarded by ENABLE(MEDIA_STREAM)
philn@webkit.org [Mon, 7 Oct 2013 15:32:09 +0000 (15:32 +0000)]
URLMediaStream is unguarded by ENABLE(MEDIA_STREAM)
https://bugs.webkit.org/show_bug.cgi?id=122444

Reviewed by Martin Robinson.

* Modules/mediastream/URLMediaStream.cpp: Added missing
conditional guards.
* Modules/mediastream/URLMediaStream.h: Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157041 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[GTK] webkit_dom_html_style_element_{s,g}et_scoped was removed
philn@webkit.org [Mon, 7 Oct 2013 15:29:58 +0000 (15:29 +0000)]
[GTK] webkit_dom_html_style_element_{s,g}et_scoped was removed
https://bugs.webkit.org/show_bug.cgi?id=122446

Reviewed by Martin Robinson.

Added skeleton functions warning of removed functionality for
the <style scoped> GObject DOM binding.

* bindings/gobject/WebKitDOMCustom.cpp:
* bindings/gobject/WebKitDOMCustom.h:
* bindings/gobject/WebKitDOMCustom.symbols:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157040 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed buildfix for GCC 4.6.
ossy@webkit.org [Mon, 7 Oct 2013 15:24:19 +0000 (15:24 +0000)]
Unreviewed buildfix for GCC 4.6.

Changed override to OVERRIDE and final to FINAL.

* page/PageSerializer.cpp:
* workers/AbstractWorker.h:
* workers/SharedWorker.h:
* workers/Worker.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@157039 268f45cc-cd09-0410-ab3c-d52691b4dbfc