[GTK] Assertion fails when the mouse pointer is styled with a custom cursor
https://bugs.webkit.org/show_bug.cgi?id=118905

Patch by Enrique Ocaña González <eocanha@igalia.com> on 2013-09-05
Reviewed by Philippe Normand.

Checked that the custom cursor image and its pixbuf is valid and create a null
cursor otherwise.

* platform/gtk/CursorGtk.cpp:
(WebCore::createCustomCursor):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@155113 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CSS Regions] Convert existing pixel tests in ref tests
https://bugs.webkit.org/show_bug.cgi?id=120760

Patch by Mihai Maerean <mmaerean@adobe.com> on 2013-09-05
Reviewed by Antti Koivisto.

I have also removed text-align:justify from the tests because its not relevant to the tested functionality and
it makes creating the expected results very difficult because of the way fragmented text is rendered when
it's aligned justified.

* fast/regions/overflow-in-uniform-regions-dynamic-expected.html: Added.
* fast/regions/overflow-in-uniform-regions-dynamic.html:
* fast/regions/overflow-in-variable-width-regions-expected.html: Added.
* fast/regions/overflow-in-variable-width-regions.html:
* fast/regions/overflow-moving-below-floats-in-variable-width-regions-expected.html: Added.
* fast/regions/overflow-moving-below-floats-in-variable-width-regions.html:
* fast/regions/overflow-not-moving-below-floats-in-variable-width-regions-expected.html: Added.
* fast/regions/overflow-not-moving-below-floats-in-variable-width-regions.html:
* fast/regions/overflow-rtl-in-variable-width-regions-expected.html: Added.
* fast/regions/overflow-rtl-in-variable-width-regions.html:
* fast/regions/overflow-size-change-in-variable-width-regions-expected.html: Added.
* fast/regions/overflow-size-change-in-variable-width-regions.html:
* platform/efl/fast/regions/overflow-in-uniform-regions-dynamic-expected.png: Removed.
* platform/efl/fast/regions/overflow-in-uniform-regions-dynamic-expected.txt: Removed.
* platform/efl/fast/regions/overflow-in-variable-width-regions-expected.png: Removed.
* platform/efl/fast/regions/overflow-in-variable-width-regions-expected.txt: Removed.
* platform/efl/fast/regions/overflow-moving-below-floats-in-variable-width-regions-expected.png: Removed.
* platform/efl/fast/regions/overflow-moving-below-floats-in-variable-width-regions-expected.txt: Removed.
* platform/efl/fast/regions/overflow-rtl-in-variable-width-regions-expected.png: Removed.
* platform/efl/fast/regions/overflow-rtl-in-variable-width-regions-expected.txt: Removed.
* platform/efl/fast/regions/overflow-size-change-in-variable-width-regions-expected.png: Removed.
* platform/efl/fast/regions/overflow-size-change-in-variable-width-regions-expected.txt: Removed.
* platform/gtk/fast/regions/overflow-in-uniform-regions-dynamic-expected.png: Removed.
* platform/gtk/fast/regions/overflow-in-uniform-regions-dynamic-expected.txt: Removed.
* platform/gtk/fast/regions/overflow-in-variable-width-regions-expected.png: Removed.
* platform/gtk/fast/regions/overflow-in-variable-width-regions-expected.txt: Removed.
* platform/gtk/fast/regions/overflow-moving-below-floats-in-variable-width-regions-expected.png: Removed.
* platform/gtk/fast/regions/overflow-moving-below-floats-in-variable-width-regions-expected.txt: Removed.
* platform/gtk/fast/regions/overflow-rtl-in-variable-width-regions-expected.png: Removed.
* platform/gtk/fast/regions/overflow-rtl-in-variable-width-regions-expected.txt: Removed.
* platform/gtk/fast/regions/overflow-size-change-in-variable-width-regions-expected.png: Removed.
* platform/gtk/fast/regions/overflow-size-change-in-variable-width-regions-expected.txt: Removed.
* platform/mac/fast/regions/overflow-in-uniform-regions-dynamic-expected.png: Removed.
* platform/mac/fast/regions/overflow-in-uniform-regions-dynamic-expected.txt: Removed.
* platform/mac/fast/regions/overflow-in-variable-width-regions-expected.png: Removed.
* platform/mac/fast/regions/overflow-in-variable-width-regions-expected.txt: Removed.
* platform/mac/fast/regions/overflow-moving-below-floats-in-variable-width-regions-expected.png: Removed.
* platform/mac/fast/regions/overflow-moving-below-floats-in-variable-width-regions-expected.txt: Removed.
* platform/mac/fast/regions/overflow-rtl-in-variable-width-regions-expected.png: Removed.
* platform/mac/fast/regions/overflow-rtl-in-variable-width-regions-expected.txt: Removed.
* platform/mac/fast/regions/overflow-size-change-in-variable-width-regions-expected.png: Removed.
* platform/mac/fast/regions/overflow-size-change-in-variable-width-regions-expected.txt: Removed.
* platform/qt-wk2/fast/regions/overflow-in-uniform-regions-dynamic-expected.png: Removed.
* platform/qt-wk2/fast/regions/overflow-in-variable-width-regions-expected.png: Removed.
* platform/qt-wk2/fast/regions/overflow-moving-below-floats-in-variable-width-regions-expected.png: Removed.
* platform/qt-wk2/fast/regions/overflow-rtl-in-variable-width-regions-expected.png: Removed.
* platform/qt-wk2/fast/regions/overflow-size-change-in-variable-width-regions-expected.png: Removed.
* platform/qt/fast/regions/overflow-in-uniform-regions-dynamic-expected.png: Removed.
* platform/qt/fast/regions/overflow-in-uniform-regions-dynamic-expected.txt: Removed.
* platform/qt/fast/regions/overflow-in-variable-width-regions-expected.png: Removed.
* platform/qt/fast/regions/overflow-in-variable-width-regions-expected.txt: Removed.
* platform/qt/fast/regions/overflow-moving-below-floats-in-variable-width-regions-expected.png: Removed.
* platform/qt/fast/regions/overflow-moving-below-floats-in-variable-width-regions-expected.txt: Removed.
* platform/qt/fast/regions/overflow-rtl-in-variable-width-regions-expected.png: Removed.
* platform/qt/fast/regions/overflow-rtl-in-variable-width-regions-expected.txt: Removed.
* platform/qt/fast/regions/overflow-size-change-in-variable-width-regions-expected.png: Removed.
* platform/qt/fast/regions/overflow-size-change-in-variable-width-regions-expected.txt: Removed.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@155114 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove String(RefPtr<StringImpl>) constructor
https://bugs.webkit.org/show_bug.cgi?id=120767

Reviewed by Anders Carlsson.

The String(RefPtr<StringImpl>) constructor should be removed for the following reasons:
- It almost does not have clients, so it is unneeded.
- RefPtr should never be passed by value

* wtf/text/StringBuilder.cpp:
(WTF::StringBuilder::shrinkToFit):
* wtf/text/WTFString.h:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@155115 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Call createTextRenderersForSiblingsAfterAttachIfNeeded only for the attach root
https://bugs.webkit.org/show_bug.cgi?id=120770

Reviewed by Andreas Kling.

There is no need to call this during recursive attach as siblings are going to be attached normally anyway.
Move call sites to attach roots only.

* style/StyleResolveTree.cpp:
(WebCore::Style::createTextRenderersForSiblingsAfterAttachIfNeeded):
        
    Factor to take reference and do the inital tests itself.

(WebCore::Style::createTextRendererIfNeeded):
(WebCore::Style::updateTextRendererAfterContentChange):
(WebCore::Style::attachChildren):
        
    Also tightened the condition where previously attached children may be encountered.

(WebCore::Style::attachRenderTree):
(WebCore::Style::resolveLocal):
(WebCore::Style::updateTextStyle):
(WebCore::Style::reattachRenderTree):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@155116 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, green the Mac bots by boosting the timeout on JSC tests. One of the
Mozilla tests appears to run for a longer time.
        
I think we want to continue to allow a few tests here and there to be
longer-running, rather than excluding them. I seem to recall that those tests
catch good bugs.

* Scripts/run-javascriptcore-tests:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@155117 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Make run-fast-jsc script bash, dash and Darwin's /bin/sh friendly
https://bugs.webkit.org/show_bug.cgi?id=120759

Reviewed by Filip Pizlo.

* Scripts/run-fast-jsc: Remove bashisms to make bash, dash and Darwin's /bin/sh happy.
* Scripts/run-javascriptcore-tests: Enable run-fast-jsc tests everywhere, except Windows.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@155118 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Animations in an AnimationList are never null
https://bugs.webkit.org/show_bug.cgi?id=120720

Reviewed by Andreas Kling.

Change AnimationList::operator[] to return an Animation& and fix up related code to also take references.

* css/CSSComputedStyleDeclaration.cpp:
* css/DeprecatedStyleBuilder.cpp:
* page/animation/CompositeAnimation.cpp:
* page/animation/KeyframeAnimation.cpp:
* platform/animation/Animation.h:
* platform/animation/AnimationList.cpp:
* platform/animation/AnimationList.h:
* rendering/RenderLayerBacking.cpp:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@155119 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Reverting "Cached Page and Frame don't need to be ref-counted.
<https://webkit.org/b/120758>

This didn't work so well on Qt bots. Will have to take bigger steps
here instead of iterating.

* history/CachedFrame.h:
(WebCore::CachedFrame::create):
* history/CachedPage.cpp:
(WebCore::CachedPage::create):
* history/CachedPage.h:
* history/HistoryItem.h:
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::commitProvisionalLoad):
(WebCore::FrameLoader::transitionToCommitted):
* loader/FrameLoader.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@155120 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Vector::releaseBuffer should return an OwnPtr
https://bugs.webkit.org/show_bug.cgi?id=120718

Reviewed by Andreas Kling.

Source/WebCore:

Change FormStreamFields::currentData to an OwnPtr.

* platform/network/cf/FormDataStreamCFNet.cpp:
(WebCore::closeCurrentStream):
(WebCore::advanceCurrentStream):
(WebCore::formCreate):

Source/WTF:

Change Vector::releaseBuffer() to return an OwnPtr. I intentionally chose
to use an OwnPtr over a PassOwnPtr since we're trying to move away from PassOwnPtr objects.

Fix fallout from this change by adopting OwnPtr/PassOwnPtr in StringBuffer and the two StringImpl
constructors that adopt the passed in pointer.

* wtf/Vector.h:
* wtf/text/StringBuffer.h:
* wtf/text/StringImpl.h:

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