[GTK] Update GraphicsLayerClutter
https://bugs.webkit.org/show_bug.cgi?id=92045

Patch by Joone Hur  <joone.hur@intel.com>, Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2012-12-11
Reviewed by Gustavo Noronha Silva.

Add more methods to GraphicsLayerClutter in order to run CSS 3D transforms
by using GraphicsLayerActor.

No new tests. This will be covered by pixel tests for Qt and GTK+ accelerated
compositing and 3D transforms.

* platform/graphics/clutter/GraphicsLayerClutter.cpp:
(WebCore):
(WebCore::GraphicsLayerClutter::GraphicsLayerClutter):
(WebCore::idleDestroy):
(WebCore::GraphicsLayerClutter::~GraphicsLayerClutter):
(WebCore::GraphicsLayerClutter::setName):
(WebCore::GraphicsLayerClutter::platformLayer): Returns the platform layer(ClutterAcotr).
(WebCore::GraphicsLayerClutter::setNeedsDisplay): Update the display.
(WebCore::GraphicsLayerClutter::setNeedsDisplayInRect): Update part of the Display.
(WebCore::GraphicsLayerClutter::setAnchorPoint):
(WebCore::GraphicsLayerClutter::setPosition):
(WebCore::GraphicsLayerClutter::setSize):
(WebCore::GraphicsLayerClutter::setTransform):
(WebCore::GraphicsLayerClutter::setDrawsContent):
(WebCore::GraphicsLayerClutter::setParent):
(WebCore::GraphicsLayerClutter::setChildren):
(WebCore::GraphicsLayerClutter::addChild):
(WebCore::GraphicsLayerClutter::addChildAtIndex):
(WebCore::GraphicsLayerClutter::addChildBelow):
(WebCore::GraphicsLayerClutter::addChildAbove):
(WebCore::GraphicsLayerClutter::replaceChild):
(WebCore::GraphicsLayerClutter::removeFromParent):
(WebCore::GraphicsLayerClutter::platformClutterLayerPaintContents):
(WebCore::GraphicsLayerClutter::platformClutterLayerAnimationStarted):
(WebCore::GraphicsLayerClutter::repaintLayerDirtyRects):
(WebCore::GraphicsLayerClutter::computePositionRelativeToBase):
(WebCore::GraphicsLayerClutter::flushCompositingState): Synchronize the corresponding Actors with the current
compositing states of this GraphicsLayer and its child layers.
(WebCore::GraphicsLayerClutter::recursiveCommitChanges):
(WebCore::GraphicsLayerClutter::flushCompositingStateForThisLayerOnly): Commit batched changes non-recursively.
(WebCore::GraphicsLayerClutter::commitLayerChangesAfterSublayers): Reset layer changes after we recurse on children.
(WebCore::GraphicsLayerClutter::noteSublayersChanged):
(WebCore::GraphicsLayerClutter::noteLayerPropertyChanged):
(WebCore::GraphicsLayerClutter::commitLayerChangesBeforeSublayers): Commit layer changes before we recurse on children.
(WebCore::GraphicsLayerClutter::updateGeometry): Updated the position and size of the Actor.
(WebCore::GraphicsLayerClutter::updateSublayerList): Updated the list of child Actors.
(WebCore::GraphicsLayerClutter::updateLayerNames):
(WebCore::GraphicsLayerClutter::updateTransform):
(WebCore::GraphicsLayerClutter::updateLayerDrawsContent):
(WebCore::GraphicsLayerClutter::layerForSuperlayer):
* platform/graphics/clutter/GraphicsLayerClutter.h:
(WebCore):
(WebCore::GraphicsLayerClutter::primaryLayer):
(GraphicsLayerClutter):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137326 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] Clean up unused interfaces in PlatformSupport
https://bugs.webkit.org/show_bug.cgi?id=104674

Reviewed by Darin Fisher.

Source/WebCore:

Part of a refactoring series. See tracking bug 82948. Also, there
were some function declarations that were supposed to be removed
as part of bug 102699 but got left out of the final patch.

* platform/chromium/PlatformSupport.h:
(WebCore):
(PlatformSupport):

Source/WebKit/chromium:

Part of a refactoring series. See tracking bug 82948.

* public/platform/WebKitPlatformSupport.h:
* src/PlatformSupport.cpp:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137327 268f45cc-cd09-0410-ab3c-d52691b4dbfc
CoreIPC: ArgumentEncoder should have an inline buffer.
<http://webkit.org/b/104622>

Reviewed by Anders Carlsson.

Add a 4K inline buffer to CoreIPC::ArgumentEncoder to avoid malloc/free churn.
It was dominating the transient allocations graph in Instruments.

* Platform/CoreIPC/ArgumentEncoder.cpp:
(CoreIPC::ArgumentEncoder::ArgumentEncoder):
(CoreIPC::ArgumentEncoder::grow):
* Platform/CoreIPC/ArgumentEncoder.h:
(CoreIPC::ArgumentEncoder::buffer):
(ArgumentEncoder):
(CoreIPC::ArgumentEncoder::usesInlineBuffer):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137328 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] Install GObject DOM bindings headers in its own directory
https://bugs.webkit.org/show_bug.cgi?id=104663

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2012-12-11
Reviewed by Gustavo Noronha Silva.

.:

* GNUmakefile.am: Add GENSOURCES_WEBKITDOM and
webkitgtk_gdom_built_h_api variables.

Source/WebCore:

Move the headers from webkit to webkitdom directory.

* bindings/gobject/GNUmakefile.am:
* bindings/gobject/WebKitDOMBinding.h:
* bindings/gobject/WebKitDOMCustom.h:
* bindings/gobject/WebKitDOMEventTarget.h:
* bindings/gobject/WebKitDOMEventTargetPrivate.h:
* bindings/gobject/WebKitDOMObject.h:
* bindings/scripts/CodeGeneratorGObject.pm:
(Generate):
(WriteData):
* bindings/scripts/gobject-generate-headers.pl:
* bindings/scripts/test/GObject/WebKitDOMFloat64Array.h:
* bindings/scripts/test/GObject/WebKitDOMFloat64ArrayPrivate.h:
* bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObject.h:
* bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObjectPrivate.h:
* bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
* bindings/scripts/test/GObject/WebKitDOMTestCallbackPrivate.h:
* bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetter.h:
* bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetterPrivate.h:
* bindings/scripts/test/GObject/WebKitDOMTestEventConstructor.h:
* bindings/scripts/test/GObject/WebKitDOMTestEventConstructorPrivate.h:
* bindings/scripts/test/GObject/WebKitDOMTestEventTarget.h:
* bindings/scripts/test/GObject/WebKitDOMTestEventTargetPrivate.h:
* bindings/scripts/test/GObject/WebKitDOMTestException.h:
* bindings/scripts/test/GObject/WebKitDOMTestExceptionPrivate.h:
* bindings/scripts/test/GObject/WebKitDOMTestInterface.h:
* bindings/scripts/test/GObject/WebKitDOMTestInterfacePrivate.h:
* bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListener.h:
* bindings/scripts/test/GObject/WebKitDOMTestMediaQueryListListenerPrivate.h:
* bindings/scripts/test/GObject/WebKitDOMTestNamedConstructor.h:
* bindings/scripts/test/GObject/WebKitDOMTestNamedConstructorPrivate.h:
* bindings/scripts/test/GObject/WebKitDOMTestNode.h:
* bindings/scripts/test/GObject/WebKitDOMTestNodePrivate.h:
* bindings/scripts/test/GObject/WebKitDOMTestObj.h:
* bindings/scripts/test/GObject/WebKitDOMTestObjPrivate.h:
* bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructors.h:
* bindings/scripts/test/GObject/WebKitDOMTestOverloadedConstructorsPrivate.h:
* bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
* bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterfacePrivate.h:

Source/WebKit/gtk:

* GNUmakefile.am: Add webkitdom.h.
* webkit/webkitdom.h: Compatibility header just including the new
one.
* webkit/webkitwebframe.cpp: Update includes.
* webkit/webkitwebframe.h: Ditto.
* webkit/webkitwebinspector.cpp: Ditto.
* webkit/webkitwebinspector.h: Ditto.
* webkit/webkitwebview.cpp: Ditto.
* webkit/webkitwebview.h: Ditto.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137329 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] IndexedDB: Memory leak in IDBCallbacksProxy::onSuccess(PassRefPtr<IDBDatabaseBackendInterface>)
https://bugs.webkit.org/show_bug.cgi?id=104615

Reviewed by Tony Chang.

Ensure passed pointer is treated with ownership semantics.

* src/WebIDBCallbacksImpl.cpp:
(WebKit::WebIDBCallbacksImpl::onSuccess):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137330 268f45cc-cd09-0410-ab3c-d52691b4dbfc
REGRESSION(r121789): Text not wrapping in presence of floating objects
https://bugs.webkit.org/show_bug.cgi?id=101803

Reviewed by David Hyatt.

Source/WebCore:

When determining if a line needs to offset to avoid any floats use RenderBlock::lineHeight()
to estimate the height of the line. If the container has floats stacked up with different widths
that straddle the line, using a height of zero will make the first line think it has
more width available than it actually does and it will end up extruding from its container.

The logic for finding the offset of inline blocks and images needs to use a similar heuristic.
So nextLineBreak() now updates the available width if it encounters a replaced element (e.g. inline block,
image) at the start of a line, using the height of the element to decide which floats to avoid.
RenderBlock::computeInlineDirectionPositionsForLine() does the same thing when laying out the line.

Tests: fast/block/float/floats-offset-image-quirk-lineheight.html
       fast/block/float/floats-offset-image-quirk.html
       fast/block/float/floats-offset-image-strict-lineheight.html
       fast/block/float/floats-offset-image-strict.html
       fast/block/float/floats-offset-inline-block-quirk-lineheight.html
       fast/block/float/floats-offset-inline-block-strict-lineheight.html
       fast/block/float/floats-offset-linebox-contain-block.html
       fast/block/float/floats-offset-linebox-contain-inline.html
       fast/block/float/floats-wrap-inside-inline-006.html
       fast/block/float/floats-wrap-inside-inline-007.html

* rendering/RenderBlockLineLayout.cpp:
(LineWidth):
(WebCore::logicalHeightForLine):
    This method needs to cope with the quirk where an image alone on a line will get its descent stripped away so
    ignore the height of the line and use the height of the image in that case.
(WebCore::LineWidth::updateAvailableWidth):
(WebCore::updateLogicalInlinePositions):
(WebCore):
(WebCore::RenderBlock::computeInlineDirectionPositionsForLine):
(WebCore::RenderBlock::computeInlineDirectionPositionsForSegment):
(WebCore::RenderBlock::LineBreaker::nextSegmentBreak):

LayoutTests:

* fast/block/float/floats-offset-image-quirk-expected.html: Added.
* fast/block/float/floats-offset-image-quirk-lineheight-expected.html: Added.
* fast/block/float/floats-offset-image-quirk-lineheight.html: Added.
* fast/block/float/floats-offset-image-quirk.html: Added.
* fast/block/float/floats-offset-image-strict-expected.html: Added.
* fast/block/float/floats-offset-image-strict-lineheight-expected.html: Added.
* fast/block/float/floats-offset-image-strict-lineheight.html: Added.
* fast/block/float/floats-offset-image-strict.html: Added.
* fast/block/float/floats-offset-inline-block-quirk-lineheight-expected.html: Added.
* fast/block/float/floats-offset-inline-block-quirk-lineheight.html: Added.
* fast/block/float/floats-offset-inline-block-strict-lineheight-expected.html: Added.
* fast/block/float/floats-offset-inline-block-strict-lineheight.html: Added.
* fast/block/float/floats-offset-linebox-contain-block-expected.html: Added.
* fast/block/float/floats-offset-linebox-contain-block.html: Added.
* fast/block/float/floats-offset-linebox-contain-inline-expected.html: Added.
* fast/block/float/floats-offset-linebox-contain-inline.html: Added.
* fast/block/float/floats-wrap-inside-inline-006-expected.html: Added.
* fast/block/float/floats-wrap-inside-inline-006.html: Added.
* fast/block/float/floats-wrap-inside-inline-007-expected.html: Added.
* fast/block/float/floats-wrap-inside-inline-007.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137331 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Update MediaSource to allow append() calls in "ended" state.
https://bugs.webkit.org/show_bug.cgi?id=104581

Reviewed by Eric Carlson.

Source/WebCore:

Updated append and setTimestampOffset to allow appending in the "ended" readyState. An append() call
in the "ended" state now triggers a transition to the "open" state and allows the append to succeed.

Tests: http/tests/media/media-source/video-media-source-append-in-ended-state.html
       http/tests/media/media-source/video-media-source-append-with-offset-in-ended-state.html
       http/tests/media/media-source/video-media-source-zero-byte-append-in-ended-state.html

* Modules/mediasource/MediaSource.cpp:
(WebCore::MediaSource::append):
(WebCore::MediaSource::setTimestampOffset):

LayoutTests:

- Removed old test case that verified appending in "ended" state failed.
- Added 3 new test cases that verify append behavior in the "ended" state.

* http/tests/media/media-source/video-media-source-add-and-remove-buffers-expected.txt:
* http/tests/media/media-source/video-media-source-add-and-remove-buffers.html:
* http/tests/media/media-source/video-media-source-append-in-ended-state-expected.txt: Added.
* http/tests/media/media-source/video-media-source-append-in-ended-state.html: Added.
* http/tests/media/media-source/video-media-source-append-with-offset-in-ended-state-expected.txt: Added.
* http/tests/media/media-source/video-media-source-append-with-offset-in-ended-state.html: Added.
* http/tests/media/media-source/video-media-source-zero-byte-append-in-ended-state-expected.txt: Added.
* http/tests/media/media-source/video-media-source-zero-byte-append-in-ended-state.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137332 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Route main resource loads through the memory cache.
https://bugs.webkit.org/show_bug.cgi?id=49246

Reviewed by Antti Koivisto.

Source/WebCore:

Note that this patch doesn't actually enable caching of main resources. That will be done in a later patch.
The MainResourceLoader actually has an underlying SubresourceLoader (with the cache layer between them).
In several places, the MainResourceLoader's SubresourceLoader is treated as special.

No new tests, as this is primarily a refactor. A couple of expected results changed slightly.

* loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::setRequest):
(WebCore::DocumentLoader::subresource):
(WebCore::DocumentLoader::addSubresourceLoader): Because the SubresourceLoader underlying the main resource
    needs special handling in certain cases, track it separately from the real SubresourceLoaders.
(WebCore::DocumentLoader::removeSubresourceLoader):
(WebCore::DocumentLoader::startLoadingMainResource):
* loader/MainResourceLoader.cpp:
(WebCore::MainResourceLoader::MainResourceLoader):
(WebCore::MainResourceLoader::receivedError):
(WebCore::MainResourceLoader::cancel):
(WebCore::MainResourceLoader::clearResource):
(WebCore):
(WebCore::MainResourceLoader::frameLoader):
(WebCore::MainResourceLoader::request):
(WebCore::MainResourceLoader::continueAfterNavigationPolicy):
(WebCore::MainResourceLoader::resourceData):
(WebCore::MainResourceLoader::redirectReceived):
(WebCore::MainResourceLoader::willSendRequest):
(WebCore::MainResourceLoader::continueAfterContentPolicy):
(WebCore::MainResourceLoader::responseReceived):
(WebCore::MainResourceLoader::dataReceived):
(WebCore::MainResourceLoader::didFinishLoading):
(WebCore::MainResourceLoader::notifyFinished):
(WebCore::MainResourceLoader::reportMemoryUsage):
(WebCore::MainResourceLoader::handleSubstituteDataLoadNow):
(WebCore::MainResourceLoader::load):
(WebCore::MainResourceLoader::setDefersLoading):
(WebCore::MainResourceLoader::defersLoading):
(WebCore::MainResourceLoader::setShouldBufferData):
(WebCore::MainResourceLoader::loader):
(WebCore::MainResourceLoader::identifier):
* loader/MainResourceLoader.h:
(MainResourceLoader):
(WebCore::MainResourceLoader::documentLoader):
* loader/ResourceLoader.cpp:
(WebCore::ResourceLoader::willSendRequest):
* loader/ResourceLoader.h:
(WebCore::ResourceLoader::defersLoading):
(WebCore::ResourceLoader::cancelled):
* loader/appcache/ApplicationCacheHost.cpp:
(WebCore::ApplicationCacheHost::maybeLoadFallbackForMainResponse):
(WebCore::ApplicationCacheHost::maybeLoadFallbackForMainError):
* loader/mac/DocumentLoaderMac.cpp:
(WebCore::DocumentLoader::schedule):
(WebCore::DocumentLoader::unschedule):

LayoutTests:

* http/tests/inspector/resource-parameters.html: The main resource's url will exclude the fragment identifier here.
* http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt: The error code for loads cancelled
    by an embedder's willSendRequest() will show as standard load cancellations rather than as a content policy
    failure. This was an odd quirk of how MainResourceLoader::willSendRequest() was implemented (namely, doing a
    content policy check on ResourceRequests with empty urls).
* platform/chromium/http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt: See previous.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137333 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] Clean up unused defaultViewportArguments in RenderThemeBlackBerry.cpp
https://bugs.webkit.org/show_bug.cgi?id=104683

Reviewed by Rob Buis.

* platform/blackberry/RenderThemeBlackBerry.cpp:
(WebCore::determineFullScreenMultiplier):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137334 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Remove deprecated WebGraphicsContext3D entry points
https://bugs.webkit.org/show_bug.cgi?id=104603

Patch by James Robinson <jamesr@chromium.org> on 2012-12-11
Reviewed by Darin Fisher.

* chromium/public/WebGraphicsContext3D.h:
(WebGraphicsContext3D):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137335 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Switch to new PseudoElement based :before and :after
https://bugs.webkit.org/show_bug.cgi?id=104462

Patch by Elliott Sprehn <esprehn@chromium.org> on 2012-12-11
Reviewed by Antti Koivisto.

Source/WebCore:

Switch to the new PseudoElement based generated content implementation
that moves :before and :after into the DOM. This also switches to using
the ComposedShadowTreeWalker for determining the siblings of PseudoElement's
making the new generated content implementation support adding :before
and :after into <input> elements.

Tests: fast/css-generated-content/block-inside-inline.html
       fast/css-generated-content/box-orient.html

* dom/ComposedShadowTreeWalker.cpp:
(WebCore::ComposedShadowTreeWalker::pseudoAwareNextSibling):
(WebCore):
(WebCore::ComposedShadowTreeWalker::pseudoAwarePreviousSibling):
(WebCore::ComposedShadowTreeWalker::traverseParent):
* dom/ComposedShadowTreeWalker.h:
(ComposedShadowTreeWalker):
* dom/Element.cpp:
(WebCore::Element::attach):
(WebCore::Element::recalcStyle):
* dom/Node.cpp:
* dom/Node.h:
(Node):
* dom/NodeRenderingContext.cpp:
(WebCore::NodeRenderingContext::nextRenderer):
(WebCore::NodeRenderingContext::previousRenderer):
(WebCore::NodeRenderingContext::createRendererForElementIfNeeded):
* dom/Position.cpp:
(WebCore::Position::Position):
(WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight):
* editing/visible_units.cpp:
(WebCore::logicallyPreviousBox):
(WebCore::logicallyNextBox):
(WebCore::startPositionForLine):
(WebCore::endPositionForLine):
* html/HTMLTextFormControlElement.cpp:
(WebCore::HTMLTextFormControlElement::childShouldCreateRenderer):
* page/DragController.cpp:
(WebCore::DragController::draggableNode):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::styleDidChange):
(WebCore::RenderBlock::splitBlocks):
(WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks):
(WebCore::RenderBlock::createReplacementRunIn):
(WebCore::RenderBlock::isSelectionRoot):
* rendering/RenderBlock.h:
(RenderBlock):
* rendering/RenderButton.cpp:
* rendering/RenderButton.h:
(RenderButton):
* rendering/RenderInline.cpp:
(WebCore::RenderInline::styleDidChange):
(WebCore::RenderInline::addChildIgnoringContinuation):
(WebCore::RenderInline::splitInlines):
* rendering/RenderListItem.cpp:
(WebCore::RenderListItem::updateMarkerLocation):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::createVisiblePosition):
* rendering/RenderObject.h:
(WebCore::RenderObject::nonPseudoNode):
(RenderObject):
(WebCore::RenderObject::clearNode):
(WebCore::RenderObject::generatingNode):
* rendering/RenderObjectChildList.cpp:
* rendering/RenderObjectChildList.h:
(RenderObjectChildList):
* rendering/RenderRubyText.cpp:
* rendering/RenderRubyText.h:
(RenderRubyText):
* rendering/RenderTableRow.cpp:
(WebCore::RenderTableRow::styleDidChange):
* rendering/RenderTableRow.h:
* rendering/RenderTableSection.cpp:
(WebCore::RenderTableSection::addChild):
* rendering/RenderWidget.cpp:
(WebCore::RenderWidget::destroy):

LayoutTests:

Add test for block generated content inside inlines which is now supported
properly, and also for using box-orient and reordering.

before-content-continuation.html's expectations change because we now
support block content properly.

I skipped fast/css-generated-content/table-row-group-to-inline.html
which needs a rebaseline after this this lands. Unfortunately the test
output is still wrong because we leave an anonymous RenderTable in the
tree, but that bug has always been there.

I also skipped fast/css/empty-generated-content.html which needs rebaselines
as we no longer create extra anonymous blocks, though the reason is not clear
to me.

* fast/css-generated-content/before-content-continuation-chain-expected.txt:
* fast/css-generated-content/block-inside-inline-expected.html: Added.
* fast/css-generated-content/block-inside-inline.html: Added.
* fast/css-generated-content/box-orient-expected.html: Added.
* fast/css-generated-content/box-orient.html: Added.
* platform/chromium/TestExpectations:
* platform/mac/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137336 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] Soup network logs are frequently interrupted by other logging messages
https://bugs.webkit.org/show_bug.cgi?id=104668

Patch by Jonathon Jongsma <jonathon.jongsma@collabora.co.uk> on 2012-12-11
Reviewed by Martin Robinson.

Set an external soup log printer that uses the WebKit logging
infrastructure so that log messages are properly synchronized.

* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::soupLogPrinter):
(WebCore):
(WebCore::ensureSessionIsInitialized):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137337 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix a typo in my previous commit that is causing test failures.

Reviewed by Gustavo Noronha Silva.

There was an extra bit of statement appended after the end of a conditional. Somehow
this compiled and caused test failures.

* DumpRenderTree/gtk/EventSender.cpp:
(continuousMouseScrollByCallback):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137338 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix bogus test expectations

Unreviewed.

There were a bunch of uses of "Text" when they should have said "Failure".

* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137339 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Updating these test results after http://trac.webkit.org/changeset/137006 
These tests have WK2-only results because WK2 forces compositing for fixed 
position elements in WK2 but not WK1.

* platform/mac-wk2/compositing/rtl/rtl-fixed-expected.txt:
* platform/mac-wk2/compositing/rtl/rtl-fixed-overflow-expected.txt:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137340 268f45cc-cd09-0410-ab3c-d52691b4dbfc
REGRESSION(r133492): Heap-use-after-free in WebCore::Element::normalizeAttributes
<http://webkit.org/b/104488>

Reviewed by Antti Koivisto.

Source/WebCore:

Don't cache the AttrNodeList* in a local when iterating over an Element's Attr nodes since
that pointer may go stale if JS runs in response to a DOMSubtreeModified event below Node::normalize().

Test: fast/dom/normalize-attributes-mutation-event-crash.html

* dom/Element.cpp:
(WebCore::Element::normalizeAttributes):

LayoutTests:

* fast/dom/normalize-attributes-mutation-event-crash-expected.txt: Added.
* fast/dom/normalize-attributes-mutation-event-crash.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137341 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Initialize new web processes with list of auto-start origins for plug-ins
https://bugs.webkit.org/show_bug.cgi?id=103219
<rdar://problem/12747219>

Reviewed by Anders Carlsson.

Serialize the set of hashes into a vector as a parameter in web process creation.

* Shared/WebProcessCreationParameters.h: Add a parameter for the origin hashes.

* Shared/WebProcessCreationParameters.cpp: Encode/decode that parameter.
(WebKit::WebProcessCreationParameters::encode):
(WebKit::WebProcessCreationParameters::decode):

* UIProcess/Plugins/PlugInAutoStartProvider.cpp:
(WebKit::PlugInAutoStartProvider::autoStartOriginsCopy): Return a vector copy with contents from the
hash set.
* UIProcess/Plugins/PlugInAutoStartProvider.h:
(PlugInAutoStartProvider):

* UIProcess/WebContext.cpp:
(WebKit::WebContext::createNewWebProcess): Populate the parameter with the contents of the set.
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::initializeWebProcess): Add the items in the vector to the web process' copy of the set.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137342 268f45cc-cd09-0410-ab3c-d52691b4dbfc
nrwt isn't rejecting unrecognized expectations
https://bugs.webkit.org/show_bug.cgi?id=104701

Reviewed by Ojan Vafai.

Tools:

NRWT is silently ignoring unrecognized expectations like "Text"
and "Audio" (largely because I haven't fully removed support for
the old syntax and keywords and restructured the code to do the
proper checking). Temporarily change the tokenizer to reject
unrecognized expectations until I can make those changes.

* Scripts/webkitpy/layout_tests/models/test_expectations.py:
(TestExpectationParser._tokenize_line):
* Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:
(ExpectationSyntaxTests.test_unknown_expectation):
(TestExpectationSerializationTests.disabled_test_string_whitespace_stripping):

LayoutTests:

Remove a few lines referring to non-existent files, and
change a few "Fail" and "Text" expectations to "Failure" now
that "Fail" and "Text" will be correctly rejected.

* platform/mac/TestExpectations
* platform/qt/TestExpectations
* platform/gtk/TestExpectations
* platform/win/TestExpectations

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137343 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2012-12-11  Nate Chapin  <japhet@chromium.org>

        cr-linux valgrind is showing leaks due to r137333.

        Rubber-stamped by Antti Koivisto.

        MainResourceLoader's destructor should call m_resource->removeClient(this) is m_resource is still non-null.
        The missing removeClient() call will leak the CachedResource.

        No new tests, should shut valgrind up.

        * loader/MainResourceLoader.cpp:
        (WebCore::MainResourceLoader::~MainResourceLoader):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137344 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Cleanup: Use consistent naming in CSSParser when dealing with the forward slash operator.
https://bugs.webkit.org/show_bug.cgi?id=104699

Reviewed by Daniel Bates.

http://trac.webkit.org/changeset/136525 added an helper function to
check if a CSSParserValue is a forward slash operator.
BorderImageParseContext is also dealing with the forward slash operator
but its naming is inconsistent with isForwardSlashOperator(). This is
fixed with this patch where BorderImageParseContext::{allowSlash,
commitSlash}() is now replaced by BorderImageParseContext::{allowForwardSlashOperator,
commitForwardSlashOperator}().

No new tests : just a renaming, covered by existing tests..

* css/CSSParser.cpp:
(WebCore::CSSParser::parseFillPosition): A little fixup on the way, use
isForwardSlashOperator() instead of the current code here.
(WebCore::BorderImageParseContext::BorderImageParseContext):
(WebCore::BorderImageParseContext::allowForwardSlashOperator):
(WebCore::BorderImageParseContext::commitImage):
(WebCore::BorderImageParseContext::commitImageSlice):
(WebCore::BorderImageParseContext::commitForwardSlashOperator):
(WebCore::BorderImageParseContext::commitBorderWidth):
(WebCore::BorderImageParseContext::commitBorderOutset):
(WebCore::BorderImageParseContext::commitRepeat):
(BorderImageParseContext):
(WebCore::CSSParser::parseBorderImage):


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