[webkit-changes] [WebKit/WebKit] 13eba6: Branch WebKitGTK+ for 2.4

Carlos Garcia Campos noreply at github.com
Thu Dec 1 12:59:59 PST 2022


  Branch: refs/heads/webkitgtk/2.4
  Home:   https://github.com/WebKit/WebKit
  Commit: 13eba6f2125d0dea257d23cf4e9c0e5f0e8e1861
      https://github.com/WebKit/WebKit/commit/13eba6f2125d0dea257d23cf4e9c0e5f0e8e1861
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-02-03 (Mon, 03 Feb 2014)

  Changed paths:

  Log Message:
  -----------
  Branch WebKitGTK+ for 2.4


  Commit: f8a211c9157078b564e0b10ebcf02a9d6a829c60
      https://github.com/WebKit/WebKit/commit/f8a211c9157078b564e0b10ebcf02a9d6a829c60
  Author: Anders Carlsson <andersca at apple.com>
  Date:   2014-02-03 (Mon, 03 Feb 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/API/C/WKPage.cpp
    M Source/WebKit2/UIProcess/API/Cocoa/WKBrowsingContextController.mm
    M Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm
    M Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp
    M Source/WebKit2/UIProcess/WebInspectorProxy.cpp
    M Source/WebKit2/UIProcess/WebPageProxy.cpp
    M Source/WebKit2/UIProcess/WebPageProxy.h
    M Source/WebKit2/UIProcess/cf/WebPageProxyCF.cpp
    M Source/WebKit2/WebProcess/WebPage/WebPage.cpp
    M Source/WebKit2/WebProcess/WebPage/WebPage.h
    M Source/WebKit2/WebProcess/WebPage/WebPage.messages.in

  Log Message:
  -----------
  Merge r163037 - Consolidate page loading functions
https://bugs.webkit.org/show_bug.cgi?id=127847

Reviewed by Tim Horton.

Get rid of the loadURL functions (and the LoadURL message), rename
loadURLRequest to loadRequest and change it to take a ResourceRequest instead
of an API::URLRequest.

* UIProcess/API/C/WKPage.cpp:
(WKPageLoadURL):
(WKPageLoadURLWithUserData):
(WKPageLoadURLRequest):
(WKPageLoadURLRequestWithUserData):
* UIProcess/API/Cocoa/WKBrowsingContextController.mm:
(-[WKBrowsingContextController loadRequest:userData:]):
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView loadRequest:]):
* UIProcess/API/gtk/WebKitWebView.cpp:
(webkit_web_view_load_uri):
(webkit_web_view_load_request):
* UIProcess/WebInspectorProxy.cpp:
(WebKit::decidePolicyForNavigationAction):
(WebKit::WebInspectorProxy::createInspectorPage):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::loadRequest):
(WebKit::WebPageProxy::loadFile):
* UIProcess/WebPageProxy.h:
* UIProcess/cf/WebPageProxyCF.cpp:
(WebKit::WebPageProxy::restoreFromSessionStateData):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::loadRequest):
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPage.messages.in:


  Commit: aecb8d587726e149cba5f60613a996996b93c34e
      https://github.com/WebKit/WebKit/commit/aecb8d587726e149cba5f60613a996996b93c34e
  Author: Csaba Osztrogonác <ossy at webkit.org>
  Date:   2014-02-03 (Mon, 03 Feb 2014)

  Changed paths:
    M ChangeLog
    M Source/JavaScriptCore/ChangeLog
    M Source/JavaScriptCore/Configurations/FeatureDefines.xcconfig
    M Source/WebCore/ChangeLog
    M Source/WebCore/Configurations/FeatureDefines.xcconfig
    M Source/WebCore/bindings/js/JSDOMWindowBase.cpp
    M Source/WebKit/mac/ChangeLog
    M Source/WebKit/mac/Configurations/FeatureDefines.xcconfig
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/Configurations/FeatureDefines.xcconfig
    M Source/autotools/SetupWebKitFeatures.m4
    M Tools/ChangeLog
    M Tools/Scripts/webkitperl/FeatureList.pm
    M WebKitLibraries/ChangeLog
    M WebKitLibraries/win/tools/vsprops/FeatureDefines.props
    M WebKitLibraries/win/tools/vsprops/FeatureDefinesCairo.props

  Log Message:
  -----------
  Merge r163072 - Remove ENABLE(JAVASCRIPT_DEBUGGER) leftovers
https://bugs.webkit.org/show_bug.cgi?id=127845

Reviewed by Joseph Pecoraro.

.:

* Source/autotools/SetupWebKitFeatures.m4:

Source/JavaScriptCore:

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

* Configurations/FeatureDefines.xcconfig:
* bindings/js/JSDOMWindowBase.cpp:
(WebCore::JSDOMWindowBase::supportsProfiling):

Source/WebKit/mac:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

* Configurations/FeatureDefines.xcconfig:

Tools:

* Scripts/webkitperl/FeatureList.pm:

WebKitLibraries:

* win/tools/vsprops/FeatureDefines.props:
* win/tools/vsprops/FeatureDefinesCairo.props:


  Commit: ba58771485d35ef936d68044895d4ff27beee0a8
      https://github.com/WebKit/WebKit/commit/ba58771485d35ef936d68044895d4ff27beee0a8
  Author: Csaba Osztrogonác <ossy at webkit.org>
  Date:   2014-02-03 (Mon, 03 Feb 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/network/soup/SoupNetworkSession.cpp

  Log Message:
  -----------
  Merge r163081 - [SOUP] Fix the build if !ENABLE(WEB_TIMING)
https://bugs.webkit.org/show_bug.cgi?id=127906

Reviewed by Gustavo Noronha Silva.

* platform/network/soup/SoupNetworkSession.cpp:


  Commit: 4d6a1f393b2bfc860995be46989d4d179f58dc8b
      https://github.com/WebKit/WebKit/commit/4d6a1f393b2bfc860995be46989d4d179f58dc8b
  Author: Diego Pino Garcia <dpino at igalia.com>
  Date:   2014-02-03 (Mon, 03 Feb 2014)

  Changed paths:
    M Source/WebInspectorUI/ChangeLog
    M Source/WebInspectorUI/UserInterface/KeyboardShortcut.js
    M Source/WebInspectorUI/UserInterface/Main.js

  Log Message:
  -----------
  Merge r163086 - Web Inspector: Implement open/close Console window shortcut
https://bugs.webkit.org/show_bug.cgi?id=127896

Patch by Diego Pino Garcia <dpino at igalia.com> on 2014-01-30
Reviewed by Timothy Hatcher.

* UserInterface/KeyboardShortcut.js:
(WebInspector.KeyboardShortcut.prototype.get displayName):
Bug: Option symbol should be displayed as Alternative symbol (\u2387)
in non Mac platforms.
* UserInterface/Main.js:
(WebInspector.contentLoaded):
Create keyboard shortcut for toggling console window.


  Commit: 7157dd95536626cf473ce1dbcdad69e196fe46a4
      https://github.com/WebKit/WebKit/commit/7157dd95536626cf473ce1dbcdad69e196fe46a4
  Author: Anders Carlsson <andersca at apple.com>
  Date:   2014-02-03 (Mon, 03 Feb 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/xml/XMLHttpRequest.cpp

  Log Message:
  -----------
  Merge r163174 - Don't allocate a new XMLHttpRequestStaticData every time staticData() is called
https://bugs.webkit.org/show_bug.cgi?id=127996

Reviewed by Andreas Kling.

std::once_flag should be static.

* xml/XMLHttpRequest.cpp:
(WebCore::staticData):


  Commit: 8a259c7e26a10a5b16988c2c50e852ef7fc5a88c
      https://github.com/WebKit/WebKit/commit/8a259c7e26a10a5b16988c2c50e852ef7fc5a88c
  Author: Žan Doberšek <zdobersek at igalia.com>
  Date:   2014-02-04 (Tue, 04 Feb 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/dom/Document.cpp

  Log Message:
  -----------
  Partially revert r162947 so that Document::topDocument() again Walk over the chain of
owner Elements. This fixes the crashes related to creating and accessing the AXObjectCache
of documents that were introduced in that revision, which determined the top document by
returning the Document of the main frame. This fails badly when the frame in question is cached.

Patch by Zan Dobersek <zdobersek at igalia.com> on 2014-02-04

* dom/Document.cpp:
(WebCore::Document::topDocument):


  Commit: 6ce6bce193d5cbe63b1196a11073de7605aa42eb
      https://github.com/WebKit/WebKit/commit/6ce6bce193d5cbe63b1196a11073de7605aa42eb
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-02-05 (Wed, 05 Feb 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/GNUmakefile.list.am
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/GNUmakefile.list.am
    M Source/WebKit2/Shared/InteractionInformationAtPosition.h

  Log Message:
  -----------
  Unreviewed. Fix make distcheck.

Source/WebCore:

* GNUmakefile.list.am:

Source/WebKit2:

* GNUmakefile.list.am:
* Shared/InteractionInformationAtPosition.h:


  Commit: 1b65daeabca6f428f3bf7a80aa34f210a3b1d322
      https://github.com/WebKit/WebKit/commit/1b65daeabca6f428f3bf7a80aa34f210a3b1d322
  Author: Radu Stavila <stavila at adobe.com>
  Date:   2014-02-05 (Wed, 05 Feb 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    M LayoutTests/TestExpectations
    A LayoutTests/fast/scrolling/scroll-select-list-expected.html
    A LayoutTests/fast/scrolling/scroll-select-list.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/page/EventHandler.cpp
    M Source/WebCore/rendering/RenderBox.cpp
    M Source/WebCore/rendering/RenderBox.h
    M Source/WebCore/rendering/RenderEmbeddedObject.cpp
    M Source/WebCore/rendering/RenderEmbeddedObject.h
    M Source/WebCore/rendering/RenderListBox.cpp
    M Source/WebCore/rendering/RenderListBox.h
    M Source/WebCore/rendering/RenderTextControlSingleLine.cpp
    M Source/WebCore/rendering/RenderTextControlSingleLine.h

  Log Message:
  -----------
  Merge r163329 - REGRESSION (r163018): Can’t scroll in <select> lists
https://bugs.webkit.org/show_bug.cgi?id=128090

Source/WebCore:

The regression was caused by the fact that a new method scrollWithWheelEventLocation() was added
to RenderBox to replace the generic scroll() method for the particular case of scrolling using
the mouse wheel. This turned out to be a mistake because in the case of some elements, like select lists,
the scroll method was overriden and now the incorrect method was being called.
The solution was to remove the new method and just add two default parameters to the generic
scroll method.

Patch by Radu Stavila <stavila at adobe.com> on 2014-02-03
Reviewed by Simon Fraser.

Test: fast/scrolling/scroll-select-list.html

* page/EventHandler.cpp:
(WebCore::scrollNode):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::scroll):
* rendering/RenderBox.h:
* rendering/RenderEmbeddedObject.cpp:
(WebCore::RenderEmbeddedObject::scroll):
* rendering/RenderEmbeddedObject.h:
* rendering/RenderListBox.cpp:
(WebCore::RenderListBox::scroll):
* rendering/RenderListBox.h:
* rendering/RenderTextControlSingleLine.cpp:
(WebCore::RenderTextControlSingleLine::scroll):
* rendering/RenderTextControlSingleLine.h:

LayoutTests:

New test validates scrolling using the mouse wheel inside a select list.
This test is for the moment added as a ImageOnlyFailure expectation
because the current implementation of eventSender cannot simulate mouse wheel events.

Patch by Radu Stavila <stavila at adobe.com> on 2014-02-03
Reviewed by Simon Fraser.

* TestExpectations:
* fast/scrolling/scroll-select-list-expected.html: Added.
* fast/scrolling/scroll-select-list.html: Added.


  Commit: 98f6d9db8559082b91e001e94e2d7c7d74fd2494
      https://github.com/WebKit/WebKit/commit/98f6d9db8559082b91e001e94e2d7c7d74fd2494
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-02-05 (Wed, 05 Feb 2014)

  Changed paths:
    M ChangeLog
    M Source/WebKit/gtk/ChangeLog
    M Source/WebKit/gtk/NEWS
    M Source/autotools/Versions.m4

  Log Message:
  -----------
  Unreviewed. Update NEWS and Versions.m4 for 2.3.5 release.

.:

* Source/autotools/Versions.m4: Bump version numbers.

Source/WebKit/gtk:

* NEWS: Added release notes for 2.3.5.


  Commit: 9e4f9f5c15d1759e0b95dbf2e740a81bc48858ba
      https://github.com/WebKit/WebKit/commit/9e4f9f5c15d1759e0b95dbf2e740a81bc48858ba
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-02-05 (Wed, 05 Feb 2014)

  Changed paths:
    M Source/WTF/ChangeLog
    M Source/WTF/wtf/HashTraits.h

  Log Message:
  -----------
  Merge r163460 - HashMap can't be used with std::unique_ptr as value when it has a custom deleter
https://bugs.webkit.org/show_bug.cgi?id=128250

Patch by Carlos Garcia Campos <cgarcia at igalia.com> on 2014-02-05
Reviewed by Darin Adler.

The problem is that the HashMap is using a unique_ptr with the
default deleter, so that when trying to move the unique_ptr the
deleters don't match.

* wtf/HashTraits.h: Add the deleter also in the template
definitation of the parent class for the HashTraits<std::unique_ptr<T, Deleter>>


  Commit: aea46d5a5542de1d0b22b69203b53060902ae5d4
      https://github.com/WebKit/WebKit/commit/aea46d5a5542de1d0b22b69203b53060902ae5d4
  Author: Alberto Garcia <berto at igalia.com>
  Date:   2014-02-10 (Mon, 10 Feb 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/Platform/IPC/unix/ConnectionUnix.cpp
    M Source/WebKit2/Platform/unix/SharedMemoryUnix.cpp

  Log Message:
  -----------
  Merge r163292 - Fix wrong mix of fcntl commands and flags
https://bugs.webkit.org/show_bug.cgi?id=127842

Reviewed by Darin Adler.

We are mixing the commands to set file descriptor and file status
flags in a couple of fcntl() calls. FD_CLOEXEC must be set using
F_SETFD, and the access mode flags (O_RDONLY, O_WRONLY, O_RDWR)
with F_SETFL.

This combines patches by Guillem Jover and Sergio Correia.

* Platform/IPC/unix/ConnectionUnix.cpp:
(IPC::readBytesFromSocket):
* Platform/unix/SharedMemoryUnix.cpp:
(WebKit::SharedMemory::createHandle):


  Commit: d7ab737d7318dc1d7b9bca8e68449c1cacdf2af8
      https://github.com/WebKit/WebKit/commit/d7ab737d7318dc1d7b9bca8e68449c1cacdf2af8
  Author: Ryuan Choi <ryuan.choi at navercorp.com>
  Date:   2014-02-10 (Mon, 10 Feb 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h

  Log Message:
  -----------
  Merge r163435 - MediaPlayerPrivateGStreamerBase should have virtual destructor
https://bugs.webkit.org/show_bug.cgi?id=128238

Reviewed by Carlos Garcia Campos.

MediaPlayerPrivateGStreamer inherit MediaPlayerPrivateGStreamerBase.
So MediaPlayerPrivateGStreamerBase should have virtual destructor.

* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h: Made destructor as virtual.


  Commit: 9ee81f1911f452eaf2ddf3b031fd9c1b3cdf3d98
      https://github.com/WebKit/WebKit/commit/9ee81f1911f452eaf2ddf3b031fd9c1b3cdf3d98
  Author: Commit Queue <commit-queue at webkit.org>
  Date:   2014-02-10 (Mon, 10 Feb 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/gtk/WebPopupMenuProxyGtk.cpp

  Log Message:
  -----------
  Merge r163748 - Unreviewed, rolling out r162768.
http://trac.webkit.org/changeset/162768
https://bugs.webkit.org/show_bug.cgi?id=128495

Causes crashes on GTK WK2 in three fast/forms tests.
(Requested by zdobersek on #webkit).

* UIProcess/gtk/WebPopupMenuProxyGtk.cpp:
(WebKit::WebPopupMenuProxyGtk::showPopupMenu):


  Commit: ecd5789e65d28482dde60cb884b616d334b883c9
      https://github.com/WebKit/WebKit/commit/ecd5789e65d28482dde60cb884b616d334b883c9
  Author: Carlos Garnacho <carlosg at gnome.org>
  Date:   2014-02-10 (Mon, 10 Feb 2014)

  Changed paths:
    M Tools/ChangeLog
    M Tools/WebKitTestRunner/gtk/EventSenderProxyGtk.cpp

  Log Message:
  -----------
  Merge r163373 - [GTK] Ensure generated events have given modifiers GDK understands
https://bugs.webkit.org/show_bug.cgi?id=128171

Patch by Carlos Garnacho <carlosg at gnome.org> on 2014-02-04
Reviewed by Carlos Garcia Campos.

* WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
(WTR::webkitModifiersToGDKModifiers): Move around
(WTR::EventSenderProxy::createMouseButtonEvent):


  Commit: 1efeba0a92142c92af42522b92a29d1521ea3db8
      https://github.com/WebKit/WebKit/commit/1efeba0a92142c92af42522b92a29d1521ea3db8
  Author: Carlos Garnacho <carlosg at gnome.org>
  Date:   2014-02-10 (Mon, 10 Feb 2014)

  Changed paths:
    M Tools/ChangeLog
    M Tools/WebKitTestRunner/GNUmakefile.am

  Log Message:
  -----------
  Merge r163375 - [Automake] Add missing $(feature_defines) when generating InjectedBundle bindings
https://bugs.webkit.org/show_bug.cgi?id=128170

Patch by Carlos Garnacho <carlosg at gnome.org> on 2014-02-04
Reviewed by Carlos Garcia Campos.

* WebKitTestRunner/GNUmakefile.am: Add missing $(feature_defines) when
generating the InjectedBundle bindings. So the various ENABLE_* defines
are available there.


  Commit: c3da9794af7f066b3b3573622140bb7fbd49460b
      https://github.com/WebKit/WebKit/commit/c3da9794af7f066b3b3573622140bb7fbd49460b
  Author: Carlos Garnacho <carlosg at gnome.org>
  Date:   2014-02-10 (Mon, 10 Feb 2014)

  Changed paths:
    M ChangeLog
    M LayoutTests/ChangeLog
    M LayoutTests/platform/gtk-wk1/TestExpectations
    M LayoutTests/platform/gtk-wk2/TestExpectations
    M LayoutTests/platform/gtk/TestExpectations
    M Source/WebCore/ChangeLog
    M Source/WebCore/GNUmakefile.list.am
    M Source/WebCore/PlatformGTK.cmake
    M Source/WebCore/bindings/gobject/GNUmakefile.am
    M Source/WebCore/bindings/gobject/webkitdom.symbols
    A Source/WebCore/platform/gtk/GtkTouchContextHelper.cpp
    A Source/WebCore/platform/gtk/GtkTouchContextHelper.h
    M Source/WebKit/gtk/ChangeLog
    M Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.h
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/GNUmakefile.list.am
    M Source/WebKit2/PlatformGTK.cmake
    M Source/WebKit2/Shared/NativeWebTouchEvent.h
    A Source/WebKit2/Shared/gtk/NativeWebTouchEventGtk.cpp
    M Source/WebKit2/Shared/gtk/WebEventFactory.cpp
    M Source/WebKit2/Shared/gtk/WebEventFactory.h
    M Source/WebKit2/UIProcess/API/gtk/PageClientImpl.cpp
    M Source/WebKit2/UIProcess/API/gtk/PageClientImpl.h
    M Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBase.cpp
    M Source/autotools/SetupWebKitFeatures.m4
    M Source/cmake/OptionsGTK.cmake
    M Tools/ChangeLog
    M Tools/DumpRenderTree/gtk/EventSender.cpp
    M Tools/Scripts/webkitperl/FeatureList.pm
    M Tools/WebKitTestRunner/EventSenderProxy.h
    M Tools/WebKitTestRunner/gtk/EventSenderProxyGtk.cpp

  Log Message:
  -----------
  Merge r163749 - [GTK] Enable touch features
https://bugs.webkit.org/show_bug.cgi?id=98931

Patch by Carlos Garnacho <carlosg at gnome.org> on 2014-02-09
Reviewed by Carlos Garcia Campos.

* Source/autotools/SetupWebKitFeatures.m4:
* Source/cmake/OptionsGTK.cmake: set ENABLE_TOUCH_EVENTS to 1 if building with GTK+.

Source/WebCore: [GTK] Add touch-events related code to build
https://bugs.webkit.org/show_bug.cgi?id=98931

Patch by Carlos Garnacho <carlosg at gnome.org> on 2014-02-09
Reviewed by Carlos Garcia Campos.

Tests in fast/events/touch have been enabled on GTK+ now that touch
support is implemented, and thus all expected bits are there.

* platform/gtk/GtkTouchContextHelper.cpp:
* platform/gtk/GtkTouchContextHelper.h: Add helper object to track all touchpoints, handy
when creating WebTouchEvents.
* GNUmakefile.list.am:
* PlatformGTK.cmake:
* bindings/gobject/GNUmakefile.am: Add touch related code and idls to build, those are
necessary now that GTK+ implements touch events.

Source/WebKit/gtk: [GTK] Allow building with touch events enabled
https://bugs.webkit.org/show_bug.cgi?id=98931

Patch by Carlos Garnacho <carlosg at gnome.org> on 2014-02-09
Reviewed by Carlos Garcia Campos.

Even though WebKit1 GTK code doesn't implement touch events,
Fix build if ENABLE_TOUCH_EVENTS is present for WK2.

* WebCoreSupport/ChromeClientGtk.h:
(WebKit::ChromeClient::needTouchEvents): Add empty stub

Source/WebKit2: [GTK] Implement support touch events
https://bugs.webkit.org/show_bug.cgi?id=98931

Patch by Carlos Garnacho <carlosg at gnome.org> on 2014-02-09
Reviewed by Carlos Garcia Campos.

In GTK+ >= 3.4.0, GdkEventTouch is available to inform about multitouch events. Use these to implement
touch events on this platform. If a touch is left unhandled and is the "pointer emulating" one, mouse
events will be generated as a fallback.

* GNUmakefile.list.am:
* PlatformGTK.cmake:
* Shared/gtk/NativeWebTouchEventGtk.cpp:
* Shared/NativeWebTouchEvent.h:
(WebKit::NativeWebTouchEvent::nativeEvent):
(WebKit::NativeWebTouchEvent::touchContext): Add GTK+ implementation of NativeWebTouchEvent.
* Shared/gtk/WebEventFactory.cpp:
(WebKit::touchPhaseFromEvents):
(WebKit::WebEventFactory::createWebTouchEvent): Add methods to generate WebTouchEvents out
of GdkEventTouch events, a GtkTouchContextHelper object is used to hold information about all current
touches, in order to build information about all individual touchpoints.
* Shared/gtk/WebEventFactory.h:
* UIProcess/API/gtk/PageClientImpl.cpp:
(WebKit::PageClientImpl::doneWithTouchEvent): Implement pointer emulation. If a touch event was unhandled
in DOM and pertains to the touch sequence that emulates pointer events. The event gets transformed to its
mouse event counterpart and handled by the widget again.
* UIProcess/API/gtk/PageClientImpl.h:
* UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseRealize): Listen for touch events
(webkitWebViewBaseTouchEvent):
(webkit_web_view_base_class_init): Add implementation for the touch_events() handler, this merely
lets the pageProxy handle the NativeWebTouchEvent we create to wrap the GdkEvent received.

Tools: [GTK] Enable touch features
https://bugs.webkit.org/show_bug.cgi?id=98931

Patch by Carlos Garnacho <carlosg at gnome.org> on 2014-02-09
Reviewed by Carlos Garcia Campos.

* WebKitTestRunner/EventSenderProxy.h:
* WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
(WTR::updateEventCoordinates):
(WTR::EventSenderProxy::createTouchEvent):
(WTR::EventSenderProxy::addTouchPoint):
(WTR::EventSenderProxy::updateTouchPoint):
(WTR::EventSenderProxy::sendUpdatedTouchEvents):
(WTR::EventSenderProxy::setTouchPointRadius):
(WTR::EventSenderProxy::setTouchModifier): Implement touch event proxying.

LayoutTests: [GTK] Enable touch features
https://bugs.webkit.org/show_bug.cgi?id=98931

Patch by Carlos Garnacho <carlosg at gnome.org> on 2014-02-09
Reviewed by Carlos Garcia Campos.

* platform/gtk/TestExpectations: remove fast/events/touch
* platform/gtk-wk2/TestExpectations: Add new expectations on
fast/events/touch events.


  Commit: 772b462139c3a6af669c45022198a7542ad6a57c
      https://github.com/WebKit/WebKit/commit/772b462139c3a6af669c45022198a7542ad6a57c
  Author: Adrian Perez de Castro <aperez at igalia.com>
  Date:   2014-02-10 (Mon, 10 Feb 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/API/gtk/WebKitWebContext.cpp
    M Source/WebKit2/UIProcess/API/gtk/WebKitWebContext.h
    M Tools/ChangeLog
    M Tools/MiniBrowser/gtk/main.c
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestMultiprocess.cpp

  Log Message:
  -----------
  Merge r163698 - [GTK] Make process model names properly meaningful
https://bugs.webkit.org/show_bug.cgi?id=128389

Patch by Adrian Perez de Castro <aperez at igalia.com> on 2014-02-08
Reviewed by Carlos Garcia Campos.

The name WEBKIT_PROCESS_MODEL_ONE_SECONDARY_PROCESS_PER_WEB_VIEW
is misleading because there are situations in which web views may
share the same web process even when multi-process mode is enabled;
for example when opening a related view and both interact using JS.

Source/WebKit2:

* UIProcess/API/gtk/WebKitWebContext.cpp:
(webkit_web_context_set_process_model):
(webkit_web_context_get_process_model):
Update names of WebKitProcessModel enum values.
* UIProcess/API/gtk/WebKitWebContext.h:
Ditto.

Tools:

* MiniBrowser/gtk/main.c:
(main):
Update usage of WebKitProcessModel enum values.
* TestWebKitAPI/Tests/WebKit2Gtk/TestMultiprocess.cpp:
(beforeAll):
Ditto.


  Commit: 985930e9058098dcc05aabdcc98d5413ff2a82b0
      https://github.com/WebKit/WebKit/commit/985930e9058098dcc05aabdcc98d5413ff2a82b0
  Author: Anders Carlsson <andersca at apple.com>
  Date:   2014-02-10 (Mon, 10 Feb 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBase.cpp
    M Source/WebKit2/UIProcess/API/ios/WKContentView.mm
    M Source/WebKit2/UIProcess/API/mac/WKView.mm
    M Source/WebKit2/UIProcess/WebContext.cpp
    M Source/WebKit2/UIProcess/WebContext.h
    M Source/WebKit2/UIProcess/WebPageProxy.cpp
    M Source/WebKit2/UIProcess/WebPageProxy.h
    M Source/WebKit2/UIProcess/WebProcessProxy.cpp
    M Source/WebKit2/UIProcess/WebProcessProxy.h

  Log Message:
  -----------
  Merge r163671 - Simplify web page creation
https://bugs.webkit.org/show_bug.cgi?id=128425

Reviewed by Andreas Kling.

Add a WebPageConfiguration class and stick the page group, preferences, session etc there
instead of adding more and more parameters to the WebPageProxy constructor.

Make WebContext::createWebPage fill in the missing pieces in the WebPageConfiguration object.

* UIProcess/API/ios/WKContentView.mm:
(-[WKContentView initWithFrame:configuration:]):
(-[WKContentView _commonInitializationWithContextRef:pageGroupRef:relatedToPage:]):
* UIProcess/API/mac/WKView.mm:
(-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]):
* UIProcess/WebContext.cpp:
(WebKit::WebContext::createWebPage):
* UIProcess/WebContext.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::create):
(WebKit::WebPageProxy::WebPageProxy):
* UIProcess/WebPageProxy.h:
* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::createWebPage):
* UIProcess/WebProcessProxy.h:


  Commit: 3be98b3d36c4798181de758130e09f1b9ae13869
      https://github.com/WebKit/WebKit/commit/3be98b3d36c4798181de758130e09f1b9ae13869
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-02-10 (Mon, 10 Feb 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/API/gtk/WebKitWebContext.cpp
    M Source/WebKit2/UIProcess/API/gtk/WebKitWebContextPrivate.h
    M Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp
    M Source/WebKit2/UIProcess/API/gtk/WebKitWebView.h
    M Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBase.cpp
    M Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBasePrivate.h
    M Source/WebKit2/UIProcess/API/gtk/docs/webkit2gtk-sections.txt
    M Tools/ChangeLog
    M Tools/MiniBrowser/gtk/BrowserWindow.c
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestMultiprocess.cpp

  Log Message:
  -----------
  Merge r163781 - [GTK] Add API to create a webview related to another one
https://bugs.webkit.org/show_bug.cgi?id=128498

Reviewed by Gustavo Noronha Silva.

Source/WebKit2:

Add webkit_web_view_new_with_related_view() to create a new
WebView sharing the same web process as the given one.

* UIProcess/API/gtk/WebKitWebContext.cpp:
(webkitWebContextCreatePageForWebView): Use the given related
WebView to pass a related WebPageProxy to webkitWebViewBaseCreateWebPage().
* UIProcess/API/gtk/WebKitWebContextPrivate.h:
* UIProcess/API/gtk/WebKitWebView.cpp:
(webkitWebViewConstructed): Pass the related web view to webkitWebContextCreatePageForWebView().
(webkitWebViewSetProperty):
(webkit_web_view_class_init): Add related-view construct-only property.
(webkit_web_view_new_with_related_view): New public method to
create a web view with a related one.
* UIProcess/API/gtk/WebKitWebView.h:
* UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseCreate): Pass nullptr as related page to webkitWebViewBaseCreateWebPage().
(webkitWebViewBaseCreateWebPage): Use the given related
WebPageProxy to initialize the web page configuration.
* UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
* UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbol.

Tools:

* MiniBrowser/gtk/BrowserWindow.c:
(webViewCreate): Use webkit_web_view_new_with_related_view() when
creating a new web view for window.open().
* TestWebKitAPI/Tests/WebKit2Gtk/TestMultiprocess.cpp:
(testMultiprocessWebViewCreateReadyClose): Add test case to check
that window.open() works when creating the new WebView related to
the existing one, and that no new web process is spawned when
using webkit_web_view_new_with_related_view().
(beforeAll):


  Commit: a6a1105e7efc1ec460164fc2dd24db7ced94c17a
      https://github.com/WebKit/WebKit/commit/a6a1105e7efc1ec460164fc2dd24db7ced94c17a
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-02-11 (Tue, 11 Feb 2014)

  Changed paths:
    M Source/WTF/ChangeLog
    M Source/WTF/GNUmakefile.list.am
    M Source/WTF/wtf/PlatformEfl.cmake
    M Source/WTF/wtf/PlatformGTK.cmake
    R Source/WTF/wtf/gobject/GOwnPtr.cpp
    R Source/WTF/wtf/gobject/GOwnPtr.h
    M Source/WTF/wtf/gobject/GUniquePtr.h
    M Source/WebCore/ChangeLog
    M Source/WebCore/GNUmakefile.list.am
    M Source/WebCore/PlatformEfl.cmake
    M Source/WebCore/PlatformGTK.cmake
    M Source/WebCore/platform/audio/gstreamer/AudioDestinationGStreamer.cpp
    M Source/WebCore/platform/audio/gstreamer/AudioFileReaderGStreamer.cpp
    M Source/WebCore/platform/glib/BatteryProviderUPower.cpp
    M Source/WebCore/platform/graphics/gstreamer/GStreamerUtilities.cpp
    M Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp
    M Source/WebCore/platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp
    M Source/WebCore/platform/graphics/gtk/ImageBufferGtk.cpp
    M Source/WebCore/platform/graphics/gtk/ImageGtk.cpp
    M Source/WebCore/platform/gtk/DataObjectGtk.cpp
    M Source/WebCore/platform/gtk/FileSystemGtk.cpp
    M Source/WebCore/platform/gtk/GamepadsGtk.cpp
    M Source/WebCore/platform/gtk/GtkInputMethodFilter.cpp
    M Source/WebCore/platform/gtk/PasteboardHelper.cpp
    M Source/WebCore/platform/gtk/RenderThemeGtk.cpp
    M Source/WebCore/platform/gtk/SharedBufferGtk.cpp
    M Source/WebCore/platform/network/gtk/CredentialBackingStore.cpp
    R Source/WebCore/platform/network/soup/GOwnPtrSoup.cpp
    R Source/WebCore/platform/network/soup/GOwnPtrSoup.h
    M Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp
    M Source/WebCore/platform/network/soup/SocketStreamHandleSoup.cpp
    M Source/WebCore/platform/network/soup/SoupNetworkSession.cpp
    M Source/WebKit/gtk/ChangeLog
    M Source/WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.cpp
    M Source/WebKit/gtk/WebCoreSupport/TextCheckerClientGtk.cpp
    M Source/WebKit/gtk/webkit/webkitdownload.cpp
    M Source/WebKit/gtk/webkit/webkitwebplugin.cpp
    M Source/WebKit/gtk/webkit/webkitwebview.cpp
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/NetworkProcess/soup/NetworkProcessSoup.cpp
    M Source/WebKit2/Shared/Downloads/soup/DownloadSoup.cpp
    M Source/WebKit2/UIProcess/API/gtk/WebKitFaviconDatabase.cpp
    M Source/WebKit2/UIProcess/API/gtk/WebKitURISchemeRequest.cpp
    M Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp
    M Source/WebKit2/UIProcess/InspectorServer/gtk/WebInspectorServerGtk.cpp
    M Source/WebKit2/UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp
    M Source/WebKit2/UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp
    M Source/WebKit2/WebProcess/WebPage/gtk/WebPrintOperationGtk.cpp
    M Source/WebKit2/WebProcess/soup/WebProcessSoup.cpp
    M Tools/ChangeLog
    M Tools/DumpRenderTree/gtk/DumpRenderTree.cpp
    M Tools/DumpRenderTree/gtk/EventSender.cpp
    M Tools/TestWebKitAPI/Tests/WTF/gobject/GUniquePtr.cpp
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestCookieManager.cpp
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestInspectorServer.cpp
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestResources.cpp
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebExtensions.cpp
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitFaviconDatabase.cpp
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebViewGroup.cpp
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebViewEditor.cpp
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.cpp
    M Tools/TestWebKitAPI/Tests/gtk/InputMethodFilter.cpp
    M Tools/TestWebKitAPI/gtk/PlatformWebViewGtk.cpp
    M Tools/TestWebKitAPI/gtk/WebKit2Gtk/TestMain.h
    M Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestBus.cpp
    M Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.cpp
    M Tools/WebKitTestRunner/gtk/EventSenderProxyGtk.cpp

  Log Message:
  -----------
  Merge r163797 - [GLIB] Add GUniqueOutPtr and use it instead of GOwnPtr
https://bugs.webkit.org/show_bug.cgi?id=127554

Reviewed by Gustavo Noronha Silva.

Source/WebCore:

Use GUniqueOutPtr instead of GOwnPtr.

* GNUmakefile.list.am:
* PlatformEfl.cmake:
* PlatformGTK.cmake:
* platform/audio/gstreamer/AudioDestinationGStreamer.cpp:
(WebCore::AudioDestinationGStreamer::handleMessage):
* platform/audio/gstreamer/AudioFileReaderGStreamer.cpp:
(WebCore::AudioFileReader::handleMessage):
* platform/glib/BatteryProviderUPower.cpp:
(BatteryProviderUPower::startUpdating):
* platform/graphics/gstreamer/GStreamerUtilities.cpp:
(WebCore::initializeGStreamer):
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::handleMessage):
* platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:
(WebCore::TrackPrivateBaseGStreamer::getTag):
* platform/graphics/gtk/ImageBufferGtk.cpp:
(WebCore::encodeImage):
(WebCore::ImageBuffer::toDataURL):
* platform/graphics/gtk/ImageGtk.cpp:
(WebCore::loadResourceSharedBuffer):
* platform/gtk/DataObjectGtk.cpp:
(WebCore::DataObjectGtk::setURIList):
* platform/gtk/FileSystemGtk.cpp:
(WebCore::readFromFile):
* platform/gtk/GamepadsGtk.cpp:
(WebCore::GamepadDeviceGtk::readCallback):
* platform/gtk/GtkInputMethodFilter.cpp:
(WebCore::GtkInputMethodFilter::handlePreeditChanged):
* platform/gtk/PasteboardHelper.cpp:
(WebCore::PasteboardHelper::fillDataObjectFromDropData):
* platform/gtk/RenderThemeGtk.cpp:
(WebCore::RenderThemeGtk::systemFont):
* platform/gtk/SharedBufferGtk.cpp:
(WebCore::SharedBuffer::createWithContentsOfFile):
* platform/network/gtk/CredentialBackingStore.cpp:
(WebCore::credentialForChallengeAsyncReadyCallback):
* platform/network/soup/GOwnPtrSoup.cpp: Removed.
* platform/network/soup/GOwnPtrSoup.h: Removed.
* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::redirectSkipCallback):
(WebCore::nextMultipartResponsePartCallback):
(WebCore::sendRequestCallback):
(WebCore::addFileToSoupMessageBody):
(WebCore::createSoupRequestAndMessageForHandle):
(WebCore::readCallback):
* platform/network/soup/SocketStreamHandleSoup.cpp:
(WebCore::SocketStreamHandle::platformSend):
(WebCore::SocketStreamHandle::platformClose):
(WebCore::connectedCallback):
(WebCore::readReadyCallback):
* platform/network/soup/SoupNetworkSession.cpp:
(WebCore::SoupNetworkSession::httpProxy):

Source/WebKit/gtk:

Use GUniqueOutPtr instead of GOwnPtr.

* WebCoreSupport/FrameLoaderClientGtk.cpp:
(WebKit::FrameLoaderClient::dispatchDidFailLoad):
* WebCoreSupport/TextCheckerClientGtk.cpp:
* webkit/webkitdownload.cpp:
(webkit_download_open_stream_for_uri):
(webkit_download_set_destination_uri):
(webkit_download_received_data):
* webkit/webkitwebplugin.cpp:
(webkit_web_plugin_get_path):
* webkit/webkitwebview.cpp:
(webkit_web_view_expose_event):

Source/WebKit2:

Use GUniqueOutPtr instead of GOwnPtr.

* NetworkProcess/soup/NetworkProcessSoup.cpp:
(WebKit::getCacheDiskFreeSize):
* Shared/Downloads/soup/DownloadSoup.cpp:
(WebKit::DownloadClient::didReceiveResponse):
(WebKit::DownloadClient::didReceiveData):
(WebKit::DownloadClient::didFinishLoading):
* UIProcess/API/gtk/WebKitFaviconDatabase.cpp:
(processPendingIconsForPageURL):
(webkit_favicon_database_get_favicon):
* UIProcess/API/gtk/WebKitURISchemeRequest.cpp:
(webkitURISchemeRequestReadCallback):
* UIProcess/API/gtk/WebKitWebView.cpp:
(gotFaviconCallback):
* UIProcess/InspectorServer/gtk/WebInspectorServerGtk.cpp:
(WebKit::WebInspectorServer::platformResourceForPath):
* UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:
(WebKit::ProcessLauncher::launchProcess):
* UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:
(WebKit::PluginProcessProxy::scanPlugin):
* WebProcess/WebPage/gtk/WebPrintOperationGtk.cpp:
* WebProcess/soup/WebProcessSoup.cpp:
(WebKit::getCacheDiskFreeSize):

Source/WTF:

GUniqueOutPtr is a simplified version of GOwnPtr for the cases
where we need the address of the contained pointer. GUniqueOutPtr
uses GUniquePtr to free the contained object and to release the
container pointer. The API is very simple to make sure this is
only used when outPtr() is needed. It can't be constructed with a
pointer, and there's not method to set a new pointer. Another
difference with the old GOwnPtr is that outPtr() can be used
multiple times, because it frees any pointer previously set.

* GNUmakefile.list.am:
* wtf/PlatformEfl.cmake:
* wtf/PlatformGTK.cmake:
* wtf/gobject/GOwnPtr.cpp: Removed.
* wtf/gobject/GOwnPtr.h: Removed.
* wtf/gobject/GUniquePtr.h:
(WTF::GUniqueOutPtr::GUniqueOutPtr):
(WTF::GUniqueOutPtr::~GUniqueOutPtr):
(WTF::GUniqueOutPtr::outPtr):
(WTF::GUniqueOutPtr::reset):
(WTF::GUniqueOutPtr::release):
(WTF::GUniqueOutPtr::operator*):
(WTF::GUniqueOutPtr::operator->):
(WTF::GUniqueOutPtr::get):
(WTF::GUniqueOutPtr::operator!):
(WTF::GUniqueOutPtr::operator UnspecifiedBoolType):

Tools:

Use GUniqueOutPtr instead of GOwnPtr.

* DumpRenderTree/gtk/DumpRenderTree.cpp:
* DumpRenderTree/gtk/EventSender.cpp:
(createKeyPressEvent):
* TestWebKitAPI/Tests/WTF/gobject/GUniquePtr.cpp:
(TestWebKitAPI::returnOutChar):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit2Gtk/TestCookieManager.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/TestInspectorServer.cpp:
(testInspectorServerPageList):
(openRemoteDebuggingSession):
(sendIncompleteRequest):
* TestWebKitAPI/Tests/WebKit2Gtk/TestResources.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/TestWebExtensions.cpp:
(testWebExtensionWindowObjectCleared):
(testWebExtensionIsolatedWorld):
* TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitFaviconDatabase.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:
(testWebViewRunJavaScript):
(testWebViewSave):
(testWebViewPageVisibility):
* TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebViewGroup.cpp:
(isStyleSheetInjectedForURLAtPath):
* TestWebKitAPI/Tests/WebKit2Gtk/TestWebViewEditor.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.cpp:
* TestWebKitAPI/Tests/gtk/InputMethodFilter.cpp:
(TestWebKitAPI::TestInputMethodFilter::sendKeyEventToFilter):
* TestWebKitAPI/gtk/PlatformWebViewGtk.cpp:
(TestWebKitAPI::doKeyStroke):
* TestWebKitAPI/gtk/WebKit2Gtk/TestMain.h:
* TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestBus.cpp:
(WebKitTestBus::run):
* TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.cpp:
(resourceGetDataCallback):
(WebViewTest::keyStroke):
(onSnapshotReady):
* WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
(WTR::EventSenderProxy::keyDown):


  Commit: 855a2223203c65ed06c638ac0c16d8f89b925079
      https://github.com/WebKit/WebKit/commit/855a2223203c65ed06c638ac0c16d8f89b925079
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-02-11 (Tue, 11 Feb 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/API/C/gtk/WKView.cpp
    M Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBase.cpp
    M Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBasePrivate.h
    M Source/WebKit2/UIProcess/gtk/WebInspectorProxyGtk.cpp

  Log Message:
  -----------
  Merge r163799 - [GTK] Create the inspector view using the same web process as the inspected page
https://bugs.webkit.org/show_bug.cgi?id=128539

Reviewed by Martin Robinson.

* UIProcess/API/C/gtk/WKView.cpp:
(WKViewCreate): Pass nullptr as the related page.
* UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseCreate): Add related page argument and pass it
to webkitWebViewBaseCreateWebPage() instead of nullptr.
* UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
* UIProcess/gtk/WebInspectorProxyGtk.cpp:
(WebKit::WebInspectorProxy::platformCreateInspectorPage): Pass
m_page as related page to webkitWebViewBaseCreate().


  Commit: 6f17a958a9776aed9c8d69d7b72877e6d8ae89c7
      https://github.com/WebKit/WebKit/commit/6f17a958a9776aed9c8d69d7b72877e6d8ae89c7
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-02-15 (Sat, 15 Feb 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp

  Log Message:
  -----------
  Merge r164167 - [GTK] Fix marshaller used in WebKitWebPage::document-loaded signal
https://bugs.webkit.org/show_bug.cgi?id=128808

Reviewed by Sergio Villar Senin.

* WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
(webkit_web_page_class_init): Use g_cclosure_marshal_VOID__VOID
instead of g_cclosure_marshal_VOID__OBJECT.


  Commit: b6f736948251f4c1c30b3e6d3db738c03909ef54
      https://github.com/WebKit/WebKit/commit/b6f736948251f4c1c30b3e6d3db738c03909ef54
  Author: Piotr Grad <p.grad at samsung.com>
  Date:   2014-02-17 (Mon, 17 Feb 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/media/video-extreme-playbackrate-crash-expected.txt
    A LayoutTests/media/video-extreme-playbackrate-crash.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp

  Log Message:
  -----------
  Merge r163871 - [GStreamer] High playback rate causes crash
https://bugs.webkit.org/show_bug.cgi?id=128453

Patch by Piotr Grad <p.grad at samsung.com> on 2014-02-11
Reviewed by Philippe Normand.

Source/WebCore:

To high playback rate passed to GStreamer was causing crash.
Added guard in setRate method.

Test: media/video-extreme-playbackrate-crash.html

* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::setRate):

LayoutTests:

Test checks if passing high playback rate causes crash.

* media/video-extreme-playbackrate-crash-expected.txt: Added.
* media/video-extreme-playbackrate-crash.html: Added.


  Commit: 97ef36d2eb229cac98b2d487496c84e073f6127c
      https://github.com/WebKit/WebKit/commit/97ef36d2eb229cac98b2d487496c84e073f6127c
  Author: Alberto Garcia <berto at igalia.com>
  Date:   2014-02-17 (Mon, 17 Feb 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/Platform/unix/SharedMemoryUnix.cpp

  Log Message:
  -----------
  Merge r163875 - O_CLOEXEC in shm_open does not work on FreeBSD
https://bugs.webkit.org/show_bug.cgi?id=128572

Reviewed by Darin Adler.

The O_CLOEXEC is not supported by shm_open() and is also not
necessary since FD_CLOEXEC is already set by default when the new
file descriptor is created.

* Platform/unix/SharedMemoryUnix.cpp:
(WebKit::SharedMemory::create):


  Commit: f5ecfad52bfef4b3165c0c21d10abb96be864929
      https://github.com/WebKit/WebKit/commit/f5ecfad52bfef4b3165c0c21d10abb96be864929
  Author: Ryan Lortie <desrt at desrt.ca>
  Date:   2014-02-17 (Mon, 17 Feb 2014)

  Changed paths:
    M ChangeLog
    M Source/autotools/SetupLibtool.m4

  Log Message:
  -----------
  Merge r163954 - 'ar T' is not portable and breaks the build on FreeBSD
https://bugs.webkit.org/show_bug.cgi?id=128596

Patch by Ryan Lortie <desrt at desrt.ca> on 2014-02-12
Reviewed by Gustavo Noronha Silva.

Create thin archives only if we are using GNU ar.

* Source/autotools/SetupLibtool.m4:


  Commit: a5e90c91d79bf028451454dd9990f2a8d7d771fd
      https://github.com/WebKit/WebKit/commit/a5e90c91d79bf028451454dd9990f2a8d7d771fd
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-02-17 (Mon, 17 Feb 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/GNUmakefile.list.am
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/GNUmakefile.list.am

  Log Message:
  -----------
  Unreviewed. Fix make distcheck.

Source/WebCore:

* GNUmakefile.list.am: Add missing header files.

Source/WebKit2:

* GNUmakefile.list.am: Add missing header files.


  Commit: 5ddcb2204c662a25f1e34772114ad673305843ce
      https://github.com/WebKit/WebKit/commit/5ddcb2204c662a25f1e34772114ad673305843ce
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-02-17 (Mon, 17 Feb 2014)

  Changed paths:
    M ChangeLog
    M Source/WebKit/gtk/ChangeLog
    M Source/WebKit/gtk/NEWS
    M Source/autotools/Versions.m4

  Log Message:
  -----------
  Unreviewed. Update NEWS and Versions.m4 for 2.3.90 release.

.:

* Source/autotools/Versions.m4: Bump version numbers.

Source/WebKit/gtk:

* NEWS: Added release notes for 2.3.90.


  Commit: b6916b0bbcb537184b39e4e45f4dd8e67e773497
      https://github.com/WebKit/WebKit/commit/b6916b0bbcb537184b39e4e45f4dd8e67e773497
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-02-26 (Wed, 26 Feb 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBase.cpp
    M Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBasePrivate.h

  Log Message:
  -----------
  Merge r164578 - [GTK] Remove unneeded method webkitWebViewBaseRequestExitFullScreen
https://bugs.webkit.org/show_bug.cgi?id=129245

Reviewed by Sergio Villar Senin.

* UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseKeyPressEvent): Call FullscreenManager::requestExitFullScreen() directly.
* UIProcess/API/gtk/WebKitWebViewBasePrivate.h:


  Commit: 94514ce7f951aca3bff2c70ec66d547d0b457523
      https://github.com/WebKit/WebKit/commit/94514ce7f951aca3bff2c70ec66d547d0b457523
  Author: Koop Mast <kwm at FreeBSD.org>
  Date:   2014-02-26 (Wed, 26 Feb 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/dom/make_names.pl

  Log Message:
  -----------
  Merge r163534 - Use system default compiler instead of gcc, as final fall through.
https://bugs.webkit.org/show_bug.cgi?id=126773

Patch by Koop Mast <kwm at FreeBSD.org> on 2014-02-06
Reviewed by Alexey Proskuryakov.

* dom/make_names.pl:


  Commit: dbf890c6bdebe172426f8462d6a40208bb5a70a8
      https://github.com/WebKit/WebKit/commit/dbf890c6bdebe172426f8462d6a40208bb5a70a8
  Author: Ryan Lortie <desrt at desrt.ca>
  Date:   2014-02-26 (Wed, 26 Feb 2014)

  Changed paths:
    M Source/WTF/ChangeLog
    M Source/WTF/wtf/Platform.h

  Log Message:
  -----------
  Merge r164220 - Enable DFG_JIT on FreeBSD
https://bugs.webkit.org/show_bug.cgi?id=128898

Patch by Ryan Lortie <desrt at desrt.ca> on 2014-02-17
Reviewed by Csaba Osztrogonác.

* wtf/Platform.h:


  Commit: 8e0503ea8164ca3dfc6f337e28d59b094b3e691b
      https://github.com/WebKit/WebKit/commit/8e0503ea8164ca3dfc6f337e28d59b094b3e691b
  Author: Koop Mast <kwm at FreeBSD.org>
  Date:   2014-02-26 (Wed, 26 Feb 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/NetworkProcess/unix/NetworkProcessMainUnix.cpp

  Log Message:
  -----------
  Merge r164583 - Remove unused error.h header.
https://bugs.webkit.org/show_bug.cgi?id=126774

Patch by Koop Mast <kwm at FreeBSD.org> on 2014-02-24
Reviewed by Anders Carlsson.

This header doesn't exists on FreeBSD. According to
https://www.gnu.org/software/gnulib/manual/html_node/error_002eh.html
the function that this header implements are not present in the file.
So there isn't any need for this header.

* NetworkProcess/unix/NetworkProcessMainUnix.cpp:


  Commit: 3617e7363538760fce9d7a12e9514778a091a547
      https://github.com/WebKit/WebKit/commit/3617e7363538760fce9d7a12e9514778a091a547
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-02-27 (Thu, 27 Feb 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog

  Log Message:
  -----------
  [GTK] Remove unneeded method webkitWebViewBaseRequestExitFullScreen
https://bugs.webkit.org/show_bug.cgi?id=129245

Reviewed by Sergio Villar Senin.

* UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseKeyPressEvent): Call FullscreenManager::requestExitFullScreen() directly.
* UIProcess/API/gtk/WebKitWebViewBasePrivate.h:


  Commit: 2126dcd2930de01d115cdf53d45543cec7f16b17
      https://github.com/WebKit/WebKit/commit/2126dcd2930de01d115cdf53d45543cec7f16b17
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-02-27 (Thu, 27 Feb 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/Platform/IPC/unix/ConnectionUnix.cpp

  Log Message:
  -----------
  Merge r164787 - [GTK] Web Inspector doesn't work with network process enabled
https://bugs.webkit.org/show_bug.cgi?id=127651

Reviewed by Sergio Villar Senin.

The problem is that the web inspector loads so many resources,
that when using the network process, a lot of IPC traffic is
generated causing the send buffer of the socket to be full. When
that happens sendmsg() fails with EAGAIN, because we are using non
blocking sockets, and we are not handling neither EAGAIN nor
EWOULDBLOCK errors (we do when reading from the socket, though).

* Platform/IPC/unix/ConnectionUnix.cpp:
(IPC::Connection::readyReadHandler): Add a log message to know
when reading from the socket fails for any unhandled error.
(IPC::Connection::sendOutgoingMessage): Handle EAGAIN and
EWOULDBLOCK errors to try again in those cases. Also add a log
message for unhandled errors.


  Commit: 0142caf20a57f7b04089b38196a54755974f6a21
      https://github.com/WebKit/WebKit/commit/0142caf20a57f7b04089b38196a54755974f6a21
  Author: Koop Mast <kwm at FreeBSD.org>
  Date:   2014-02-27 (Thu, 27 Feb 2014)

  Changed paths:
    M ChangeLog
    M Source/autotools/FindDependencies.m4

  Log Message:
  -----------
  Merge r164796 - Fallback on checking for libz manualy if zlib.pc isn't available.
https://bugs.webkit.org/show_bug.cgi?id=127061

Patch by Koop Mast <kwm at FreeBSD.org> on 2014-02-27
Reviewed by Gustavo Noronha Silva.

* Source/autotools/FindDependencies.m4:


  Commit: a2f82ab4a43ec1bd791f9b7d149ec65ed6b6667d
      https://github.com/WebKit/WebKit/commit/a2f82ab4a43ec1bd791f9b7d149ec65ed6b6667d
  Author: Ryan Lortie <desrt at desrt.ca>
  Date:   2014-02-27 (Thu, 27 Feb 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/PluginProcess/unix/PluginProcessMainUnix.cpp

  Log Message:
  -----------
  Merge r164797 - need to #include <libgen.h> for basename
https://bugs.webkit.org/show_bug.cgi?id=128597

Patch by Ryan Lortie <desrt at desrt.ca> on 2014-02-27
Reviewed by Carlos Garcia Campos.

* PluginProcess/unix/PluginProcessMainUnix.cpp: include <libgen.h> as required by POSIX for basename


  Commit: edbd876068c6786f8acd09bcad1447bdcf400a21
      https://github.com/WebKit/WebKit/commit/edbd876068c6786f8acd09bcad1447bdcf400a21
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-02-27 (Thu, 27 Feb 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/GNUmakefile.am
    M Source/WebKit2/GNUmakefile.list.am
    M Source/WebKit2/PlatformGTK.cmake
    M Source/WebKit2/Shared/Plugins/Netscape/NetscapePluginModule.h
    M Source/WebKit2/Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp
    A Source/WebKit2/UIProcess/Plugins/gtk/PluginInfoCache.cpp
    A Source/WebKit2/UIProcess/Plugins/gtk/PluginInfoCache.h
    M Source/WebKit2/UIProcess/Plugins/unix/PluginInfoStoreUnix.cpp

  Log Message:
  -----------
  Merge r164808 - [GTK][WK2] Blocks when fetching plugins information
https://bugs.webkit.org/show_bug.cgi?id=115650

Reviewed by Gustavo Noronha Silva.

Use a persistent cache to store the plugins metadata to avoid
having to load all the plugins everytime a plugin is used for the
first time.

* GNUmakefile.am:
* GNUmakefile.list.am:
* PlatformGTK.cmake:
* Shared/Plugins/Netscape/NetscapePluginModule.h:
* Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:
(WebKit::NetscapePluginModule::parseMIMEDescription): Make this
method public.
(WebKit::NetscapePluginModule::buildMIMEDescription): Added this
helper to build the MIME description string.
* UIProcess/Plugins/gtk/PluginInfoCache.cpp: Added.
(WebKit::PluginInfoCache::shared):
(WebKit::PluginInfoCache::PluginInfoCache):
(WebKit::PluginInfoCache::~PluginInfoCache):
(WebKit::PluginInfoCache::saveToFileIdleCallback):
(WebKit::PluginInfoCache::saveToFile):
(WebKit::PluginInfoCache::getPluginInfo):
(WebKit::PluginInfoCache::updatePluginInfo):
* UIProcess/Plugins/gtk/PluginInfoCache.h: Added.
* UIProcess/Plugins/unix/PluginInfoStoreUnix.cpp:
(WebKit::PluginInfoStore::getPluginInfo): Check first if we have
metadata of the plugin in the cache and update the cache if we
loaded the plugin to get its metadata.


  Commit: ef195567793df7afc9451dd09e5389203046f352
      https://github.com/WebKit/WebKit/commit/ef195567793df7afc9451dd09e5389203046f352
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-03-03 (Mon, 03 Mar 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/webkit2gtk.pc.in

  Log Message:
  -----------
  Merge r164939 - [GTK] Remove the include dir of the C API from the WebKit2 pkg-config file
https://bugs.webkit.org/show_bug.cgi?id=129543

Reviewed by Martin Robinson.

We are not installing the C API headers anymore.

* webkit2gtk.pc.in:


  Commit: 7e0500232478bfecd7e65ab57653c77a5c46a73d
      https://github.com/WebKit/WebKit/commit/7e0500232478bfecd7e65ab57653c77a5c46a73d
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-03-03 (Mon, 03 Mar 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/API/gtk/webkit2.h
    M Source/WebKit2/WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h

  Log Message:
  -----------
  Merge r164940 - [GTK] Make impossible to build with <webkit2/webkit2.h> and <webkit2/webkit-web-extension.h> included together
https://bugs.webkit.org/show_bug.cgi?id=129549

Reviewed by Martin Robinson.

Add a compile error to prevent mixing the UI and web process APIs.

* UIProcess/API/gtk/webkit2.h:
* WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h:


  Commit: ab7785b3ac41ec5b54006b0cf4ab71779c878c5c
      https://github.com/WebKit/WebKit/commit/ab7785b3ac41ec5b54006b0cf4ab71779c878c5c
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-03-03 (Mon, 03 Mar 2014)

  Changed paths:
    M ChangeLog
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/GNUmakefile.am
    A Source/WebKit2/webkit2gtk-web-extension.pc.in
    M configure.ac

  Log Message:
  -----------
  Merge r164973 - [GTK] WebKit2WebExtension GIR can't be used in vala
https://bugs.webkit.org/show_bug.cgi?id=127179

Reviewed by Martin Robinson.

Add a different pkg-config file for the web extensions API.

.:

* configure.ac:

Source/WebKit2:

* GNUmakefile.am:
* webkit2gtk-web-extension.pc.in: Added.


  Commit: 9a14cb57c3130f432eb1d3ee06c1e8ba8eec1078
      https://github.com/WebKit/WebKit/commit/9a14cb57c3130f432eb1d3ee06c1e8ba8eec1078
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-03-03 (Mon, 03 Mar 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/plugins/PluginPackageNone.cpp

  Log Message:
  -----------
  Revert r159999 - "Correct broken build on efl port with --no-netscape-plugin-api"

This reverts commit r159999.


  Commit: cea3a4ae07140bc15aac656f37ec1f7e192ccab9
      https://github.com/WebKit/WebKit/commit/cea3a4ae07140bc15aac656f37ec1f7e192ccab9
  Author: Tomáš Popela <tpopela at redhat.com>
  Date:   2014-03-03 (Mon, 03 Mar 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/bindings/scripts/CodeGeneratorGObject.pm

  Log Message:
  -----------
  Merge r164980 - [GTK] webkit_dom_range_compare_boundary_points fails when 0 is passed as how parameter
https://bugs.webkit.org/show_bug.cgi?id=129145

Patch by Tomas Popela <tpopela at redhat.com> on 2014-03-03
Reviewed by Carlos Garcia Campos.

While generating GObject DOM API the generator should skip non pointer
types while generating the g_return_val_if_fail macro.
This will avoid the situation when Range.START_TO_START is defined as 0,
thus the webkit_dom_range_compare_boundary_points function will fail
everytime it is called with 0 as how value.

* bindings/scripts/CodeGeneratorGObject.pm:
(GenerateFunction):


  Commit: cbc4144c1dfda89edb8f8c539af6b7bf0731a61e
      https://github.com/WebKit/WebKit/commit/cbc4144c1dfda89edb8f8c539af6b7bf0731a61e
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-03-03 (Mon, 03 Mar 2014)

  Changed paths:
    M ChangeLog
    M Source/WebKit/gtk/ChangeLog
    M Source/WebKit/gtk/NEWS
    M Source/autotools/Versions.m4

  Log Message:
  -----------
  Unreviewed. Update NEWS and Versions.m4 for 2.3.91 release.

.:

* Source/autotools/Versions.m4: Bump version numbers.

Source/WebKit/gtk:

* NEWS: Added release notes for 2.3.91.


  Commit: e595b3752b390b2c745d0592db812900bf635ff8
      https://github.com/WebKit/WebKit/commit/e595b3752b390b2c745d0592db812900bf635ff8
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-03-06 (Thu, 06 Mar 2014)

  Changed paths:
    M Tools/ChangeLog
    M Tools/MiniBrowser/gtk/main.c

  Log Message:
  -----------
  Merge r165181 - [GTK] MiniBrowser crashes when opening several urls passed as command line options
https://bugs.webkit.org/show_bug.cgi?id=129738

Reviewed by Sergio Villar Senin.

The problem is that we are calling g_object_unref() for the
WebKitWebSettings everytime we set it to a WebKitWebView, but the
view only increases the reference counter when the settings is not
the same it currently has. We should release our reference once.

* MiniBrowser/gtk/main.c:
(createBrowserWindow):
(main):


  Commit: 4ca3e4f248b27eac92182673406c24a9864db9ed
      https://github.com/WebKit/WebKit/commit/4ca3e4f248b27eac92182673406c24a9864db9ed
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-03-06 (Thu, 06 Mar 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBase.cpp
    M Tools/ChangeLog
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestMultiprocess.cpp

  Log Message:
  -----------
  Merge r165182 - [GTK] Close the page when the view is disposed instead of when finalized
https://bugs.webkit.org/show_bug.cgi?id=129783

Reviewed by Sergio Villar Senin.

Source/WebKit2:

When a GtkWidget is destroyed, the GObject is disposed, but not
finalized if it has additional references. When the destroyed
widget is leaked by the application, we leak the page proxy and
what is more important the web process in multi-process mode.

* UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseDispose): Close the WebPageProxy.

Tools:

Add test case but disabled for now because it's affetected by bug #129684.

* TestWebKitAPI/Tests/WebKit2Gtk/TestMultiprocess.cpp:
(testProcessPerWebView):


  Commit: 63bab91e6051158ac4df2b2fa52fe05b5546baac
      https://github.com/WebKit/WebKit/commit/63bab91e6051158ac4df2b2fa52fe05b5546baac
  Author: Lorenzo Tilve <ltilve at igalia.com>
  Date:   2014-03-06 (Thu, 06 Mar 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/css/StyleProperties.cpp
    M Source/WebCore/css/StyleProperties.h

  Log Message:
  -----------
  Merge r164995 - Optimize StylePropertiesSet::findPropertyIndex() to improve CSS properties performance
https://bugs.webkit.org/show_bug.cgi?id=129605

Patch by Lorenzo Tilve <ltilve at igalia.com> on 2014-03-03
Reviewed by Andreas Kling.

Merged from Blink (patch by Mikhail Pozdnyakov):
https://src.chromium.org/viewvc/blink?view=revision&revision=167325

Avoid checking whether 'StylePropertiesSet' is mutable and accesing directly to its
data members to achieve performance improvements

Before the optimization applied:
    mean: 3064.8337171934063 runs/s
    median: 3097.5899379343855 runs/s
    stdev: 66.89274074044187 runs/s
    min: 2891.7479324362585 runs/s
    max: 3113.288683440125 runs/s

After the optimization applied:
    mean: 3343.8356114138105 runs/s
    median: 3356.25682957446 runs/s
    stdev: 36.297533087489036 runs/s
    min: 3238.5468032264243 runs/s
    max: 3368.664837531425 runs/s

Performance gain for the average value is approx. 9.1%, in the
range of the 10% - 8.2% for the min and max measured
values (Linux desktop x64).

* css/StyleProperties.cpp:
(WebCore::ImmutableStyleProperties::findPropertyIndex):
(WebCore::MutableStyleProperties::findPropertyIndex):
* css/StyleProperties.h:
(WebCore::toMutableStyleProperties):
(WebCore::toImmutableStyleProperties):
(WebCore::StyleProperties::findPropertyIndex):


  Commit: 9691efb5e98ed299a1f3d44ab49f8ae8803d29ee
      https://github.com/WebKit/WebKit/commit/9691efb5e98ed299a1f3d44ab49f8ae8803d29ee
  Author: Žan Doberšek <zdobersek at igalia.com>
  Date:   2014-03-11 (Tue, 11 Mar 2014)

  Changed paths:
    M Source/JavaScriptCore/ChangeLog
    M Source/JavaScriptCore/GNUmakefile.am

  Log Message:
  -----------
  Merge r163083 - [GTK] Disable optimizations for JSC that turned out malignant after jsCStack branch merge
https://bugs.webkit.org/show_bug.cgi?id=127909

Reviewed by Carlos Garcia Campos.

* GNUmakefile.am: Disable the -fomit-frame-pointer optimization to achieve proper register usage
in operationCallEval. Disable the -ftree-dce optimization since it is causing additional failures
when using GCC 4.8, possibly due to a bug in the compiler itself.


  Commit: a0809405cc468ce4bfd3586d4079ceb14f061e76
      https://github.com/WebKit/WebKit/commit/a0809405cc468ce4bfd3586d4079ceb14f061e76
  Author: Žan Doberšek <zdobersek at igalia.com>
  Date:   2014-03-11 (Tue, 11 Mar 2014)

  Changed paths:
    M ChangeLog
    M Source/JavaScriptCore/ChangeLog
    M Source/JavaScriptCore/GNUmakefile.am
    M Source/autotools/SetupAutomake.m4

  Log Message:
  -----------
  Merge r163085 - [GTK] Only disable -ftree-dce optimization when compiling with GCC
https://bugs.webkit.org/show_bug.cgi?id=127911

Reviewed by Carlos Garcia Campos.

.:

* Source/autotools/SetupAutomake.m4: Define the COMPILER_GCC and COMPILER_CLANG Automake macros.
These can be used when compiler-specific flags have to be used. The latter one is not actually needed
at the moment, but is added for the sake of completeness.

Source/JavaScriptCore:

* GNUmakefile.am: Only disable the -ftree-dce optimization when using the GCC compiler.
Some Clang versions/configurations don't support the flag.


  Commit: f8c2d870cb58d202d41a2006f6976f367340f81a
      https://github.com/WebKit/WebKit/commit/f8c2d870cb58d202d41a2006f6976f367340f81a
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-03-11 (Tue, 11 Mar 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp

  Log Message:
  -----------
  Merge r165257 - [GTK] Timeout sources not correctly removed
https://bugs.webkit.org/show_bug.cgi?id=129877

Reviewed by Philippe Normand.

Set source ID variables to 0 after removing the sources from the
context. Also give a name to the sources.

* platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:
(WebCore::TrackPrivateBaseGStreamer::disconnect):
(WebCore::TrackPrivateBaseGStreamer::activeChanged):
(WebCore::TrackPrivateBaseGStreamer::tagsChanged):
(WebCore::TrackPrivateBaseGStreamer::notifyTrackOfActiveChanged):


  Commit: 58fed0562f32d12c3a170493bf87c062667514fd
      https://github.com/WebKit/WebKit/commit/58fed0562f32d12c3a170493bf87c062667514fd
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-03-11 (Tue, 11 Mar 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/WebProcess/WebPage/gtk/WebPrintOperationGtk.cpp

  Log Message:
  -----------
  Merge r165259 - [GTK] Use final and override in WebPrintOperationGtk
https://bugs.webkit.org/show_bug.cgi?id=129868

Reviewed by Sergio Villar Senin.

* WebProcess/WebPage/gtk/WebPrintOperationGtk.cpp:


  Commit: fd7ddb6a943b4eab3a6a85a29ea6912d1677987b
      https://github.com/WebKit/WebKit/commit/fd7ddb6a943b4eab3a6a85a29ea6912d1677987b
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-03-11 (Tue, 11 Mar 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/WebProcess/WebPage/gtk/WebPrintOperationGtk.cpp

  Log Message:
  -----------
  Merge r165371 - [GTK] The web process can finish while a print operation is still ongoing
https://bugs.webkit.org/show_bug.cgi?id=129871

Reviewed by Martin Robinson.

This can happen when the last page is closed while the print job
is sending data to the printer.

* WebProcess/WebPage/gtk/WebPrintOperationGtk.cpp: Disable web
process termination when the print job is sending data to the
printer and enable it again when job finishes.


  Commit: 0fdf152d53ea1e23fe7528a2ad0c895d799d2408
      https://github.com/WebKit/WebKit/commit/0fdf152d53ea1e23fe7528a2ad0c895d799d2408
  Author: Mario Sanchez Prada <mario at webkit.org>
  Date:   2014-03-12 (Wed, 12 Mar 2014)

  Changed paths:
    M ChangeLog
    M Source/WebCore/ChangeLog
    M Source/WebCore/GNUmakefile.am
    M Source/WebCore/GNUmakefile.list.am
    M Source/WebCore/PlatformGTK.cmake
    R Source/WebCore/platform/geoclue/GeolocationProviderGeoclue.cpp
    M Source/WebCore/platform/geoclue/GeolocationProviderGeoclue.h
    A Source/WebCore/platform/geoclue/GeolocationProviderGeoclue1.cpp
    A Source/WebCore/platform/geoclue/GeolocationProviderGeoclue2.cpp
    M Source/autotools/FindDependencies.m4
    M Source/autotools/PrintBuildConfiguration.m4
    M Source/autotools/SetupAutoconfHeader.m4
    M Source/autotools/SetupAutomake.m4
    M Source/autotools/Versions.m4
    A Source/cmake/FindGeoClue2.cmake
    M Source/cmake/OptionsGTK.cmake
    M Source/cmakeconfig.h.cmake

  Log Message:
  -----------
  Merge r165418 - [GTK] Add support for Geoclue2
https://bugs.webkit.org/show_bug.cgi?id=120185

Reviewed by Carlos Garcia Campos.

.:

Add support for Geoclue2 using autotools.

* Source/autotools/FindDependencies.m4: Add support for handling
both Geoclue 1.0 and 2.0.
* Source/autotools/PrintBuildConfiguration.m4: Print the version
of geoclue that is being used.
* Source/autotools/SetupAutoconfHeader.m4: Define GEOCLUE_API_VERSION_2.
* Source/autotools/SetupAutomake.m4: Likewise, for AM_CONDITIONAL.
* Source/autotools/Versions.m4: Added minimum required version for Geoclue2.

Add support for Geoclue2 using CMake.

* Source/cmake/FindGeoClue2.cmake: Added.
* Source/cmake/OptionsGTK.cmake:  Add support for handling Geoclue 1.0 and 2.0.
* Source/cmakeconfig.h.cmake: Define WTF_USE_GEOCLUE2.

Source/WebCore:

Implement a new geolocation provider based on Geoclue2, which will only
be used if a good enough version of Geoclue2 is found  at configure time.

* GNUmakefile.am: Generate C-API for accessing the D-Bus API
provided by Geoclue2, and place it in DerivedSources.
* GNUmakefile.list.am: Add GeolocationProviderGeoclue2.cpp, and
include the generated proxy files when using Geoclue2.
* PlatformGTK.cmake: Likewise, for CMake based builds.
* platform/geoclue/GeolocationProviderGeoclue.h: Modified to
accomodate the needs both for Geoclue and Geoclue2 providers.
* platform/geoclue/GeolocationProviderGeoclue1.cpp: Renamed from Source/WebCore/platform/geoclue/GeolocationProviderGeoclue.cpp.
(GeolocationProviderGeoclue::getPositionCallback):
(GeolocationProviderGeoclue::positionChangedCallback):
(GeolocationProviderGeoclue::createGeocluePositionCallback):
(GeolocationProviderGeoclue::geoclueClientSetRequirementsCallback):
(GeolocationProviderGeoclue::createGeoclueClientCallback):
(GeolocationProviderGeoclue::GeolocationProviderGeoclue):
(GeolocationProviderGeoclue::~GeolocationProviderGeoclue):
(GeolocationProviderGeoclue::startUpdating):
(GeolocationProviderGeoclue::stopUpdating):
(GeolocationProviderGeoclue::setEnableHighAccuracy):
(GeolocationProviderGeoclue::initializeGeoclueClient):
(GeolocationProviderGeoclue::initializeGeocluePosition):
(GeolocationProviderGeoclue::updateClientRequirements):
(GeolocationProviderGeoclue::positionChanged):
(GeolocationProviderGeoclue::errorOccurred):
* platform/geoclue/GeolocationProviderGeoclue2.cpp: Added.
(GeolocationProviderGeoclue::GeolocationProviderGeoclue):
(GeolocationProviderGeoclue::~GeolocationProviderGeoclue):
(GeolocationProviderGeoclue::startUpdating):
(GeolocationProviderGeoclue::stopUpdating):
(GeolocationProviderGeoclue::setEnableHighAccuracy):
(GeolocationProviderGeoclue::createGeoclueManagerProxyCallback):
(GeolocationProviderGeoclue::getGeoclueClientCallback):
(GeolocationProviderGeoclue::createGeoclueClientProxyCallback):
(GeolocationProviderGeoclue::startClientCallback):
(GeolocationProviderGeoclue::locationUpdatedCallback):
(GeolocationProviderGeoclue::createLocationProxyCallback):
(GeolocationProviderGeoclue::startGeoclueClient):
(GeolocationProviderGeoclue::updateLocation):
(GeolocationProviderGeoclue::errorOccurred):
(GeolocationProviderGeoclue::updateClientRequirements):


  Commit: 1f1bee19aaafd32e69bd390656a8aacfa3d63921
      https://github.com/WebKit/WebKit/commit/1f1bee19aaafd32e69bd390656a8aacfa3d63921
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-03-12 (Wed, 12 Mar 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/network/soup/SoupNetworkSession.cpp
    M Source/WebCore/platform/network/soup/SoupNetworkSession.h
    M Source/WebKit/gtk/ChangeLog
    M Source/WebKit/gtk/webkit/webkitglobals.cpp

  Log Message:
  -----------
  Merge r165467 - [GTK] [Stable] deadlock in gobject introspection
https://bugs.webkit.org/show_bug.cgi?id=125651

Reviewed by Sergio Villar Senin.

Source/WebCore:

Make the default SoupNetworkSession a destroyable object to ensure
the wrapped SoupSession is finalized when the process finishes. This
is important because soup cancels any ongoing connection when finalized.

* platform/network/soup/SoupNetworkSession.cpp:
(WebCore::SoupNetworkSession::defaultSession): Do not use NeverDestroyed.
* platform/network/soup/SoupNetworkSession.h:

Source/WebKit/gtk:

* webkit/webkitglobals.cpp:
(webkitExit): Dot not try to unref the default network session, it
will be finalized automatically when the process finishes.


  Commit: 6687a466438aadfd34f47802f26ec13245f0b76a
      https://github.com/WebKit/WebKit/commit/6687a466438aadfd34f47802f26ec13245f0b76a
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-03-12 (Wed, 12 Mar 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/WebProcess/WebPage/WebPage.cpp
    M Source/WebKit2/WebProcess/WebPage/WebPage.h
    M Source/WebKit2/WebProcess/WebPage/gtk/WebPrintOperationGtk.cpp
    M Source/WebKit2/WebProcess/WebPage/gtk/WebPrintOperationGtk.h

  Log Message:
  -----------
  Merge r165489 - [GTK] Runtime error when page is closed while print operation is in progress
https://bugs.webkit.org/show_bug.cgi?id=129869

Reviewed by Anders Carlsson.

Sometimes when the page is closed right after printing the web
process aborts with the runtime message "pure virtual method
called terminate called without an active exception".
This happens because the page is closed when the pages have been
printed, but print job is still ongoing sending the data to the
printer. When print job finishes, we try to notify the UI process
sending the print callback message using WebPage::send(), but the
web page object has been destroyed. The virtual method it complains
about is probably MessageSender::messageSenderDestinationID() used
by send(). Since our print operation is always asynchronous, we
need a way to notify the web page when the print operation has
actually finished to clean it up, but also notify the print
operation when the page has been closed to not try to notify the
UI process in that case.

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::close): Call disconnectFromPage to notify the
print operation in case there's an ongoing print job.
(WebKit::WebPage::endPrinting): Do not cleanup the print operation
here, since the print opertation might not have finished yet.
(WebKit::WebPage::didFinishPrintOperation): Send
PrintFinishedCallback message to the Ui process and cleanup the
print operation.
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/gtk/WebPrintOperationGtk.cpp:
(WebKit::WebPrintOperationGtk::disconnectFromPage): Set m_webPage
to nullptr.
(WebKit::WebPrintOperationGtk::printDone): Call
didFinishPrintOperation() is the web page hasn't been closed.
* WebProcess/WebPage/gtk/WebPrintOperationGtk.h:


  Commit: 5199809613d407abcf059b85a7457e1e203f6e6e
      https://github.com/WebKit/WebKit/commit/5199809613d407abcf059b85a7457e1e203f6e6e
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-03-13 (Thu, 13 Mar 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/Platform/IPC/unix/ConnectionUnix.cpp

  Log Message:
  -----------
  Merge r165550 - [GTK] Close the connection when we fail to read from the socket for any unhandled error
https://bugs.webkit.org/show_bug.cgi?id=130191

Reviewed by Martin Robinson.

We currently show an error message, but we should close the
connection avoid entering an infinite loop. Also provide more
information in the error message to help when debugging the issue.

* Platform/IPC/unix/ConnectionUnix.cpp:
(IPC::Connection::readyReadHandler):


  Commit: 4dd3061d0c4e1e3ccf5fa8fd3fd67ffb280290b1
      https://github.com/WebKit/WebKit/commit/4dd3061d0c4e1e3ccf5fa8fd3fd67ffb280290b1
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-03-14 (Fri, 14 Mar 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/GNUmakefile.am

  Log Message:
  -----------
  Merge r165625 - [GTK] WebKit2WebExtension GIR can't be used in vala
https://bugs.webkit.org/show_bug.cgi?id=127179

Reviewed by Martin Robinson.

Do not include all WebKit2 gir symbols from WebKit2WebExtension gir
file.

* GNUmakefile.am:


  Commit: 43f771799efac98c167f55d303759ad47c4cab9c
      https://github.com/WebKit/WebKit/commit/43f771799efac98c167f55d303759ad47c4cab9c
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-03-17 (Mon, 17 Mar 2014)

  Changed paths:
    M ChangeLog
    M Source/WebKit/gtk/ChangeLog
    M Source/WebKit/gtk/NEWS
    M Source/autotools/Versions.m4

  Log Message:
  -----------
  Unreviewed. Update NEWS and Versions.m4 for 2.3.92 release.

.:

* Source/autotools/Versions.m4: Bump version numbers.

Source/WebKit/gtk:

* NEWS: Added release notes for 2.3.92.


  Commit: e354499c772ca750923bbfbaa4a9528185196562
      https://github.com/WebKit/WebKit/commit/e354499c772ca750923bbfbaa4a9528185196562
  Author: Giovanni Campagna <gcampagna at src.gnome.org>
  Date:   2014-03-19 (Wed, 19 Mar 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/Platform/IPC/unix/ConnectionUnix.cpp

  Log Message:
  -----------
  Merge r165745 - [GTK] Don't busy loop when the socket is full
https://bugs.webkit.org/show_bug.cgi?id=129802

Patch by Giovanni Campagna <gcampagna at src.gnome.org> on 2014-03-17
Reviewed by Carlos Garcia Campos.

When the socket is full and we see EAGAIN or EWOULDBLOCK
(because the socket is non blocking), don't busy loop by
tring to write again, instead poll() until the socket
becomes writable.

* Platform/IPC/unix/ConnectionUnix.cpp:
(IPC::Connection::sendOutgoingMessage):


  Commit: 5f32abd2cbebfb552d757db046198fbb03417ed2
      https://github.com/WebKit/WebKit/commit/5f32abd2cbebfb552d757db046198fbb03417ed2
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-03-19 (Wed, 19 Mar 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/Platform/gtk/WorkQueueGtk.cpp

  Log Message:
  -----------
  Merge r165812 - [GTK] Race condition when the socket event source is cancelled
https://bugs.webkit.org/show_bug.cgi?id=130395

Reviewed by Martin Robinson.

In some cases when the socket event source is cancelled the socket
event source callback is called with the condition of the previous
poll instead of 0. This can happen sometimes when the source is
cancelled from the socket event source callback. Once the socket
event source is cancelled, it's dispatched by glib without
polling, so the condition is never reset again and the callback is
called again and again with the previous condition. When the
condition is G_IO_IN, the source is re-scheduled entering into an
infinite loop. We should always check if the source has been
cancelled at the beginning of the callback to destroy the source
instead of relying on the condition being 0.

* Platform/gtk/WorkQueueGtk.cpp:
(WorkQueue::SocketEventSource::isCancelled):
(WorkQueue::SocketEventSource::eventCallback):


  Commit: 6d176955becbdd6137ae1184f95eb37f1fa8c57f
      https://github.com/WebKit/WebKit/commit/6d176955becbdd6137ae1184f95eb37f1fa8c57f
  Author: Claudio Saavedra <csaavedra at igalia.com>
  Date:   2014-03-20 (Thu, 20 Mar 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/graphics/gstreamer/WebKitMediaSourceGStreamer.cpp

  Log Message:
  -----------
  Merge r165891 - [GStreamer] Clean timeout source ids
https://bugs.webkit.org/show_bug.cgi?id=130450

Reviewed by Philippe Normand.

Sources IDs need to be cleaned up if the callback removes the
source, otherwise we'll be attempting to remove an empty source at
some point.

* platform/graphics/gstreamer/WebKitMediaSourceGStreamer.cpp:
(webKitMediaVideoSrcStart): Clean the source id.
(webKitMediaAudioSrcStart): Ditto.
(webKitMediaVideoSrcSeekMainCb): Ditto.
(webKitMediaAudioSrcSeekMainCb): Ditto.


  Commit: b176cc9435c6ccde4e72c66bc3506ce42894c0bd
      https://github.com/WebKit/WebKit/commit/b176cc9435c6ccde4e72c66bc3506ce42894c0bd
  Author: Žan Doberšek <zdobersek at igalia.com>
  Date:   2014-03-24 (Mon, 24 Mar 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/Plugins/gtk/PluginInfoCache.cpp

  Log Message:
  -----------
  Merge r166158 - [GTK][WK2] Guard NetscapePluginModule methods used in PluginInfoCache that are specific to X11 architecture
https://bugs.webkit.org/show_bug.cgi?id=130663

Reviewed by Carlos Garcia Campos.

The two used methods are specific to the X11 plugin architecture and are not declared when building for a
Wayland-only configuration. Guarding them prevents build failures, but does not ensure proper functionality
which isn't a problem anyway since there's no support yet for Netscape plugins on Wayland.

* UIProcess/Plugins/gtk/PluginInfoCache.cpp:
(WebKit::PluginInfoCache::getPluginInfo): Guard NetscapePluginModule::parseMIMEDescription with PLUGIN_ARCHITECTURE(X11).
(WebKit::PluginInfoCache::updatePluginInfo): Ditto for NetscapePluginModule::buildMIMEDescription.


  Commit: b41ac2ed5575f4187833998b24dec27ffdb44c21
      https://github.com/WebKit/WebKit/commit/b41ac2ed5575f4187833998b24dec27ffdb44c21
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-03-24 (Mon, 24 Mar 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/WebProcess/WebProcess.cpp
    M Tools/ChangeLog
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestMultiprocess.cpp

  Log Message:
  -----------
  Unreviewed. Race condition when closing pages with network process enabled
https://bugs.webkit.org/show_bug.cgi?id=129684

Source/WebKit2:

When the last page of a web process is closed with the network
process enabled, the UI process checks if the web process can be
terminated and closes the connection with that web process. But
right before that the Close message has been sent which also
enables the process termination in the web process. Sometimes
there's a race condition in the web process between the process
termination triggered by the Close message and the one triggered
by the socket being closed by the UI process.

* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::shouldTerminate): Use a 1 second timeout so
that if the message is sent right the before the connection is
closed, we don't wait indefinitely for the sync reply keeping the
web process alive.

Tools:

Enable the test to check that web processes finish when the web
view is destroyed.

* TestWebKitAPI/Tests/WebKit2Gtk/TestMultiprocess.cpp:


  Commit: 3661ce298a754cef30fa40c027a5f189f0d88722
      https://github.com/WebKit/WebKit/commit/3661ce298a754cef30fa40c027a5f189f0d88722
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-03-24 (Mon, 24 Mar 2014)

  Changed paths:
    M ChangeLog
    M Source/WebKit/gtk/ChangeLog
    M Source/WebKit/gtk/NEWS
    M Source/autotools/Versions.m4

  Log Message:
  -----------
  Unreviewed. Update NEWS and Versions.m4 for 2.4.0 release.

.:

* Source/autotools/Versions.m4: Bump version numbers.

Source/WebKit/gtk:

* NEWS: Added release notes for 2.4.0.


  Commit: 6bb146d2cb55a73126dc25ca479b9f856445e918
      https://github.com/WebKit/WebKit/commit/6bb146d2cb55a73126dc25ca479b9f856445e918
  Author: Michael Saboff <msaboff at apple.com>
  Date:   2014-03-31 (Mon, 31 Mar 2014)

  Changed paths:
    M Source/JavaScriptCore/ChangeLog
    M Source/JavaScriptCore/bytecode/CodeBlock.cpp
    M Source/JavaScriptCore/bytecompiler/BytecodeGenerator.cpp

  Log Message:
  -----------
  Merge r163241 - REGRESSION (r163027?): CrashTracer: [USER] com.apple.WebKit.WebContent.Development at com.apple.JavaScriptCore: JSC::ArrayProfile::computeUpdatedPrediction + 4
https://bugs.webkit.org/show_bug.cgi?id=128037

Reviewed by Mark Lam.

op_call_varargs ops now needs an ArrayProfile since DFG inlines these since
change set r162739.

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::CodeBlock):
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::emitCallVarargs):


  Commit: 197a7773e22530e23779089e6635d4172013643d
      https://github.com/WebKit/WebKit/commit/197a7773e22530e23779089e6635d4172013643d
  Author: Diego Pino Garcia <dpino at igalia.com>
  Date:   2014-03-31 (Mon, 31 Mar 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/gtk/UserAgentGtk.cpp
    M Source/WebKit/gtk/ChangeLog
    M Source/WebKit/gtk/webkit/webkitwebsettings.cpp

  Log Message:
  -----------
  Merge r166405 - [GTK] Too many redirects visiting www.globalforestwatch.org
https://bugs.webkit.org/show_bug.cgi?id=129681

Patch by Diego Pino Garcia <dpino at igalia.com> on 2014-03-28
Reviewed by Martin Robinson.

Source/WebCore:

* platform/gtk/UserAgentGtk.cpp:
(WebCore::standardUserAgent): Append Safari version to UserAgent
string.

Source/WebKit/gtk:

* webkit/webkitwebsettings.cpp:
(userAgentForURL): Change outdated comment.


  Commit: d9594536ee0d7d7f2d5f8a5e7682a21b40d0a449
      https://github.com/WebKit/WebKit/commit/d9594536ee0d7d7f2d5f8a5e7682a21b40d0a449
  Author: Mario Sanchez Prada <mario at webkit.org>
  Date:   2014-03-31 (Mon, 31 Mar 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/geoclue/GeolocationProviderGeoclue2.cpp

  Log Message:
  -----------
  Merge r166406 - [GTK] Geoclue2 providers won't work after reloading
https://bugs.webkit.org/show_bug.cgi?id=130898

Reviewed by Martin Robinson.

Don't reuse the Geoclue2 client proxy between different calls to
startPosition(), and create a new client proxy each time instead.

* platform/geoclue/GeolocationProviderGeoclue2.cpp:
(GeolocationProviderGeoclue::startUpdating): Don't reuse the
client proxy, by always calling geoclue_manager_call_get_client().
(GeolocationProviderGeoclue::stopUpdating): Disconnect from the
'location-updated' signal and dispose the client proxy.


  Commit: ab183ed873e03d016b86cd6fb69bcc353b0f159f
      https://github.com/WebKit/WebKit/commit/ab183ed873e03d016b86cd6fb69bcc353b0f159f
  Author: Xabier Rodriguez-Calvar <calvaris at igalia.com>
  Date:   2014-03-31 (Mon, 31 Mar 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp
    M Source/WebCore/platform/graphics/texmap/TextureMapper.cpp
    M Source/WebCore/platform/graphics/texmap/TextureMapper.h

  Log Message:
  -----------
  Merge r166480 - [GTK] [TextureMapper] Weird brightness with some videos with acceletared compositing
https://bugs.webkit.org/show_bug.cgi?id=130665

Reviewed by Martin Robinson.

When we uploaded a video texture to the mapper we were not
considering that some videos could be decoded into a format
without alpha component. Now we check if the video has alpha and
if it does not, we remove the alpha flag when retrieving the
texture from the pool. For this, the method to get the texture
from the pool was modified to receive the flags, that is mapped to
have alpha by default in order not to break any other existing
code.

Though we have a problem with AC in WTR and that makes it
currently not testable, no new tests are needed because once this
is fixed the current test set suffices to detect a possible
regression in this.

* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::updateTexture): Check
the video format and decide if the texture shall be pulled with
alpha support or not.
* platform/graphics/texmap/TextureMapper.cpp:
(WebCore::TextureMapper::acquireTextureFromPool): Use the flags
when resetting the texture.
* platform/graphics/texmap/TextureMapper.h:
(WebCore::BitmapTexture::Flag::None): Added with 0x00.
(WebCore::TextureMapper::acquireTextureFromPool): Added flag
parameter to set up the texture with the default for including
alpha channel.


  Commit: e89c87d08b158ab329e6910cf03cb1a7c4dccf5e
      https://github.com/WebKit/WebKit/commit/e89c87d08b158ab329e6910cf03cb1a7c4dccf5e
  Author: Mario Sanchez Prada <mario at webkit.org>
  Date:   2014-04-01 (Tue, 01 Apr 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp
    M Tools/ChangeLog
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebContext.cpp

  Log Message:
  -----------
  Merge r166410 - [GTK] Running minibrowser with url crashes in debug build
https://bugs.webkit.org/show_bug.cgi?id=130492

Reviewed by Martin Robinson.

Use the ResourceRequest(const URL& url) constructor, instead of the
one taking a String, to call WebPageProxy::loadRequest(), so we
ensure that the passed URI is correctly constructed.

* UIProcess/API/gtk/WebKitWebView.cpp:
(webkit_web_view_load_uri): Create an URL out of a SoupURI and
use that to create a ResourceRequest to pass to loadRequest().


  Commit: 0dc122af8099ff29b880f18801dee8a3322a4291
      https://github.com/WebKit/WebKit/commit/0dc122af8099ff29b880f18801dee8a3322a4291
  Author: Martin Robinson <mrobinson at webkit.org>
  Date:   2014-04-01 (Tue, 01 Apr 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/bindings/scripts/CodeGeneratorGObject.pm
    M Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp
    M Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestObj.cpp
    M Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp
    M Source/WebCore/bindings/scripts/test/GObject/WebKitDOMTestTypedefs.cpp

  Log Message:
  -----------
  Merge r166568 - [GTK] Readonly attributes installed as readwrite in GObject DOM bindings
https://bugs.webkit.org/show_bug.cgi?id=130978

Reviewed by Carlos Garcia Campos.

Unify how we decide if an attribute is readable or writeable and improve the code.
This results in some attributes now being marked as read-only which didn't have
corresponding case statements in the set_property switch statements and also correctly
installs set_property support for some more POD types.

* bindings/scripts/CodeGeneratorGObject.pm:
(IsPropertyReadable): Added this helper to simplify deciding if an attribute is readable.
(IsPropertyWriteable): Added this helper to simplify deciding if an attribute is writeable. Also
update the list of types to reflect the full list of types we can generate setters for.
(GenerateProperty): Use the IsPropertyWriteable helper instead of checking whether the attribute is read-only.
Also fix generation of the blurb by using $mutableString instead of $mutableStringconst which isn't used.
(GenerateProperties): Use grep and the new helpers to simplify the code.
(GetReadableProperties): Deleted.
(GetWriteableProperties): Deleted.
* bindings/scripts/test/GObject: Update results


  Commit: 7402bcfd19fd07da7e3af9a70693c4fd0e8ddd3d
      https://github.com/WebKit/WebKit/commit/7402bcfd19fd07da7e3af9a70693c4fd0e8ddd3d
  Author: Žan Doberšek <zdobersek at igalia.com>
  Date:   2014-04-01 (Tue, 01 Apr 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp

  Log Message:
  -----------
  Merge r166574 - [GTK] Don't copy the ResourceResponse object in webkitWebViewDecidePolicy
https://bugs.webkit.org/show_bug.cgi?id=131015

Reviewed by Carlos Garcia Campos.

* UIProcess/API/gtk/WebKitWebView.cpp:
(webkitWebViewDecidePolicy): Avoid copying the ResourceResponce object returned by webkitURIResponseGetResourceResponse.
That function already returns a reference, so the return value should be stored accordingly.


  Commit: b59ae97111e0f819f2f41e9e49d3710ff007fa18
      https://github.com/WebKit/WebKit/commit/b59ae97111e0f819f2f41e9e49d3710ff007fa18
  Author: Žan Doberšek <zdobersek at igalia.com>
  Date:   2014-04-01 (Tue, 01 Apr 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBase.cpp

  Log Message:
  -----------
  Merge r166575 - Don't copy the children map in webkitWebViewBaseContainerForall
https://bugs.webkit.org/show_bug.cgi?id=131016

Reviewed by Carlos Garcia Campos.

* UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseContainerForall): Avoid copying the GtkWidget-to-IntRect HashMap object
by transforming the iteration to a range-based for-loop over that HashMap's keys.


  Commit: ff346f7cb8b1931334cca652d92651859ac9e48f
      https://github.com/WebKit/WebKit/commit/ff346f7cb8b1931334cca652d92651859ac9e48f
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-04-11 (Fri, 11 Apr 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/GNUmakefile.list.am
    M Source/WebCore/plugins/PluginPackage.cpp
    M Source/WebCore/plugins/PluginPackage.h
    M Source/WebCore/plugins/PluginView.cpp

  Log Message:
  -----------
  Unreviewed. [GTK] Plugin process crashes when loading totem plugin
https://bugs.webkit.org/show_bug.cgi?id=131357

Make Netscape browser functions static to avoid conflicts with
plugins defining those functions as well.

* GNUmakefile.list.am: Do not build npapi.cpp.
* plugins/PluginPackage.cpp:
(WebCore::pluginViewForInstance):
(WebCore::NPN_MemAlloc):
(WebCore::NPN_MemFree):
(WebCore::NPN_MemFlush):
(WebCore::NPN_ReloadPlugins):
(WebCore::NPN_RequestRead):
(WebCore::NPN_GetURLNotify):
(WebCore::NPN_GetURL):
(WebCore::NPN_PostURLNotify):
(WebCore::NPN_PostURL):
(WebCore::NPN_NewStream):
(WebCore::NPN_Write):
(WebCore::NPN_DestroyStream):
(WebCore::NPN_UserAgent):
(WebCore::NPN_Status):
(WebCore::NPN_InvalidateRect):
(WebCore::NPN_InvalidateRegion):
(WebCore::NPN_ForceRedraw):
(WebCore::NPN_GetValue):
(WebCore::NPN_SetValue):
(WebCore::NPN_GetJavaEnv):
(WebCore::NPN_GetJavaPeer):
(WebCore::NPN_PushPopupsEnabledState):
(WebCore::NPN_PopPopupsEnabledState):
(WebCore::NPN_PluginThreadAsyncCall):
(WebCore::NPN_GetValueForURL):
(WebCore::NPN_SetValueForURL):
(WebCore::NPN_GetAuthenticationInfo):
(WebCore::NPN_PopUpContextMenu):
* plugins/PluginPackage.h:
(WebCore::PluginPackage::browserFuncs): Add accessor to browser
function pointers.
* plugins/PluginView.cpp:
(WebCore::PluginView::stop): Use browser function pointers instead
of NPN wrappers that are now private.
(WebCore::PluginView::getValueForURL): Ditto.


  Commit: 03132500548f38ff29c5af0af337b7b4d3fcef3d
      https://github.com/WebKit/WebKit/commit/03132500548f38ff29c5af0af337b7b4d3fcef3d
  Author: Youenn Fablet <youennf at gmail.com>
  Date:   2014-04-11 (Fri, 11 Apr 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    M LayoutTests/platform/efl/TestExpectations
    M LayoutTests/platform/gtk/TestExpectations
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/network/soup/ResourceRequestSoup.cpp
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/WebProcess/Cookies/soup/WebCookieManagerSoup.cpp
    M Source/WebKit2/WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp
    M Source/WebKit2/WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h

  Log Message:
  -----------
  Merge r166924 - [SOUP] Control cookie management according ResourceRequest.allowCookies()
https://bugs.webkit.org/show_bug.cgi?id=131026

Patch by Youenn Fablet <youenn.fablet at crf.canon.fr> on 2014-04-08
Reviewed by Sergio Villar Senin.

Source/WebCore:

Added per soup-message disabling of cookie jar manager when related ResourceRequest does not allow cookies (e.g. some cross-origin requests).

Patch is covered by unskipped test http/tests/xmlhttprequest/cross-origin-cookie-storage.html.

* platform/network/soup/ResourceRequestSoup.cpp:
(WebCore::ResourceRequest::updateSoupMessageMembers): Added disabling of cookie jar manager if cookies are not allowed.

Source/WebKit2:

Added setting of accept cookies policy for the current soup network session cookie jar and all tracked sessions.
Moved the implementation of cookie policy setting from WebCookieManager to WebFrameNetworkingContext.

* WebProcess/Cookies/soup/WebCookieManagerSoup.cpp:
(WebKit::WebCookieManager::platformSetHTTPCookieAcceptPolicy): Moved implementation to WebCookieManager::platformSetHTTPCookieAcceptPolicy.
* WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:
(WebKit::WebFrameNetworkingContext::setCookieAcceptPolicyForAllContexts): Moved implementation from WebCookieManager::platformSetHTTPCookieAcceptPolicy and set the cookie jar accept policy to the cookie jars of all sessions in addition to the default cookie jar.
* WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h: Added method prototype.

LayoutTests:

* platform/efl/TestExpectations: Unskipped test http/tests/xmlhttprequest/cross-origin-cookie-storage.html.
* platform/gtk/TestExpectations: Ditto.


  Commit: c6c9606f39055fdce894cd472b9c1e41fe2569b7
      https://github.com/WebKit/WebKit/commit/c6c9606f39055fdce894cd472b9c1e41fe2569b7
  Author: Žan Doberšek <zdobersek at igalia.com>
  Date:   2014-04-11 (Fri, 11 Apr 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/WebProcess/WebCoreSupport/WebEditorClient.h
    M Source/WebKit2/WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp

  Log Message:
  -----------
  Merge r167116 - [GTK][WK2] Move Vector objects into WebEditorClient::executePendingEditorCommands() invocations
https://bugs.webkit.org/show_bug.cgi?id=131454

Reviewed by Carlos Garcia Campos.

* WebProcess/WebCoreSupport/WebEditorClient.h:
* WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:
(WebKit::WebEditorClient::executePendingEditorCommands): Take a const reference of the Vector
object to avoid unnecessary copies. Also deploy two range-based for loops and efficiently move
the Editor::Command objects into the other Vector.


  Commit: a9fd1ac5a906caa5f2b68acd37646c2529b17f2b
      https://github.com/WebKit/WebKit/commit/a9fd1ac5a906caa5f2b68acd37646c2529b17f2b
  Author: Youenn Fablet <youennf at gmail.com>
  Date:   2014-04-14 (Mon, 14 Apr 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    M LayoutTests/platform/efl/TestExpectations
    M LayoutTests/platform/gtk/TestExpectations
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/network/ResourceHandleInternal.h
    M Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp
    M Source/WebKit/efl/ChangeLog
    M Source/WebKit/efl/WebCoreSupport/FrameLoaderClientEfl.cpp

  Log Message:
  -----------
  Merge r167185 - [SOUP] Libsoup internal credential setting should be controlled by loader decision
https://bugs.webkit.org/show_bug.cgi?id=130963

Patch by Youenn Fablet <youenn.fablet at crf.canon.fr> on 2014-04-12
Reviewed by Darin Adler.

Source/WebCore:

Disabled libsoup internal authentication manager for messages for which no credential is available and no stored credentials should be used.
Updated synchronous loader to return whether using credentials or not according StoredCredential loader option parameter.
Unskipped test http/tests/xmlhttprequest/cross-origin-no-authorization.html covers the patch.

* platform/network/ResourceHandleInternal.h:
(WebCore::ResourceHandleInternal::ResourceHandleInternal): Added m_useAuthenticationManager boolean to control whether disable authentication manager or not.
* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader): Added m_storedCredentials member.
(WebCore::WebCoreSynchronousLoader::shouldUseCredentialStorage): Return true if stored credentials are allowed.
(WebCore::applyAuthenticationToRequest): Set m_useAuthenticationManager value to disable authentication manager if cannot use stored credentials and ResourceHandleInternal has no username and password.
(WebCore::createSoupMessageForHandleAndRequest): Disable authentication mananger according m_useAuthenticationManager value.
(WebCore::ResourceHandle::platformLoadResourceSynchronously): Added StoredCredentials loader option to the sync loader constructor.

Source/WebKit/efl:

* WebCoreSupport/FrameLoaderClientEfl.cpp:
(WebCore::FrameLoaderClientEfl::shouldUseCredentialStorage): Similarly to GTK, let soup/loader layer handle when to use credential storage. Return always true

LayoutTests:

* platform/efl/TestExpectations: Unskipped http/tests/xmlhttprequest/cross-origin-no-authorization.html.
* platform/gtk/TestExpectations: Ditto.


  Commit: 60d74656f99a7a764d79b515fb8d02092c59ceda
      https://github.com/WebKit/WebKit/commit/60d74656f99a7a764d79b515fb8d02092c59ceda
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-04-14 (Mon, 14 Apr 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/Platform/unix/SharedMemoryUnix.cpp

  Log Message:
  -----------
  Merge r167128 - wk2-gtk does not display anything
https://bugs.webkit.org/show_bug.cgi?id=125558

Reviewed by Martin Robinson.

Remove fcntl call to set access mode flags on the duplicated files
descriptor. Those flags are ignored in Linux and make fcntl to
fail in FreeBSD. We should handle the case where the passed
protection is ReadOnly.
Thanks to Raphael Kubo da Costa who proposed the solution.

* Platform/unix/SharedMemoryUnix.cpp:
(WebKit::SharedMemory::createHandle):
(WebKit::accessModeFile): Deleted.


  Commit: 7fd44b904aaf2f71df77365d633167e54d38c3a7
      https://github.com/WebKit/WebKit/commit/7fd44b904aaf2f71df77365d633167e54d38c3a7
  Author: Myles C. Maxfield <mmaxfield at apple.com>
  Date:   2014-04-14 (Mon, 14 Apr 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/text/character-at-crash-expected.txt
    A LayoutTests/fast/text/character-at-crash.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/rendering/InlineIterator.h
    M Source/WebCore/rendering/RenderText.cpp
    M Source/WebCore/rendering/RenderText.h

  Log Message:
  -----------
  Merge r163465 - Move characterAt index checks from InlineIterator to RenderText
https://bugs.webkit.org/show_bug.cgi?id=128224

Source/WebCore:

Reviewed by Simon Fraser.

Move characterAt index checks from InlineIterator to RenderText
so that all RenderText calls are covered. Few safe instances are
now covered with uncheckedCharacterAt.

Merged from Blink:
http://src.chromium.org/viewvc/blink?view=revision&revision=150830

Test: fast/text/character-at-crash.html

* rendering/InlineIterator.h:
(WebCore::InlineIterator::characterAt):
* rendering/RenderText.cpp:
(WebCore::RenderText::computePreferredLogicalWidths):
* rendering/RenderText.h:
(WebCore::RenderText::operator[]):
(WebCore::RenderText::uncheckedCharacterAt):
(WebCore::RenderText::characterAt):

LayoutTests:

Move characterAt index checks from InlineIterator to RenderText
so that all RenderText calls are covered. Few safe instances are
now covered with uncheckedCharacterAt.

Merged from Blink:
http://src.chromium.org/viewvc/blink?view=revision&revision=150830

Reviewed by Simon Fraser.

* fast/text/character-at-crash-expected.txt: Added.
* fast/text/character-at-crash.html: Added.


  Commit: a6079ab9e7ab10c33c26b7d986bf6e0513b91e6b
      https://github.com/WebKit/WebKit/commit/a6079ab9e7ab10c33c26b7d986bf6e0513b91e6b
  Author: Jeffrey Pfau <jeffrey+webkit at endrift.com>
  Date:   2014-04-14 (Mon, 14 Apr 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    M LayoutTests/TestExpectations
    A LayoutTests/fast/parser/adoption-agency-crash-01-expected.txt
    A LayoutTests/fast/parser/adoption-agency-crash-01.html
    A LayoutTests/fast/parser/adoption-agency-crash-02-expected.txt
    A LayoutTests/fast/parser/adoption-agency-crash-02.html
    A LayoutTests/fast/parser/adoption-agency-crash-03-expected.txt
    A LayoutTests/fast/parser/adoption-agency-crash-03.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/html/parser/HTMLConstructionSite.cpp
    M Source/WebCore/html/parser/HTMLConstructionSite.h
    M Source/WebCore/html/parser/HTMLTreeBuilder.cpp

  Log Message:
  -----------
  Merge r163579 - Make adoption agency use the task queue
https://bugs.webkit.org/show_bug.cgi?id=109445

Reviewed by Ryosuke Niwa.

Source/WebCore:

Tests: fast/parser/adoption-agency-crash-01.html
       fast/parser/adoption-agency-crash-02.html
       fast/parser/adoption-agency-crash-03.html

* html/parser/HTMLConstructionSite.cpp:
(WebCore::insert):
(WebCore::executeInsertTask):
(WebCore::executeReparentTask):
(WebCore::executeInsertAlreadyParsedChildTask):
(WebCore::executeTakeAllChildrenTask):
(WebCore::executeTask):
(WebCore::HTMLConstructionSite::attachLater):
(WebCore::HTMLConstructionSite::executeQueuedTasks):
(WebCore::HTMLConstructionSite::insertTextNode):
(WebCore::HTMLConstructionSite::reparent):
(WebCore::HTMLConstructionSite::insertAlreadyParsedChild):
(WebCore::HTMLConstructionSite::takeAllChildren):
(WebCore::HTMLConstructionSite::fosterParent):
* html/parser/HTMLConstructionSite.h:
(WebCore::HTMLConstructionSiteTask::HTMLConstructionSiteTask):
(WebCore::HTMLConstructionSiteTask::oldParent):
* html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::callTheAdoptionAgency):

LayoutTests:

* TestExpectations:
* fast/parser/adoption-agency-crash-01-expected.txt: Added.
* fast/parser/adoption-agency-crash-01.html: Added.
* fast/parser/adoption-agency-crash-02-expected.txt: Added.
* fast/parser/adoption-agency-crash-02.html: Added.
* fast/parser/adoption-agency-crash-03-expected.txt: Added.
* fast/parser/adoption-agency-crash-03.html: Added.


  Commit: a66ab4f720b159cc5c6b0bfe3248ef447ef5af6f
      https://github.com/WebKit/WebKit/commit/a66ab4f720b159cc5c6b0bfe3248ef447ef5af6f
  Author: Jeffrey Pfau <jeffrey+webkit at endrift.com>
  Date:   2014-04-14 (Mon, 14 Apr 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    M LayoutTests/TestExpectations
    M Source/WebCore/ChangeLog
    M Source/WebCore/loader/SubframeLoader.cpp

  Log Message:
  -----------
  Merge r163599 - loadSubframe can return null in SubframeLoader::loadOrRedirectSubframe
https://bugs.webkit.org/show_bug.cgi?id=128344

Reviewed by Ryosuke Niwa.

Source/WebCore:

* loader/SubframeLoader.cpp:
(WebCore::SubframeLoader::loadOrRedirectSubframe):

LayoutTests:

* TestExpectations: Unskipped tests that were previously crashing


  Commit: e6a4b6e418ddd89bd6d2d7a8a62c1af09686c430
      https://github.com/WebKit/WebKit/commit/e6a4b6e418ddd89bd6d2d7a8a62c1af09686c430
  Author: Renata Hodovan <rhodovan.u-szeged at partner.samsung.com>
  Date:   2014-04-14 (Mon, 14 Apr 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/editing/execCommand/indent-with-uneditable-crash-expected.txt
    A LayoutTests/editing/execCommand/indent-with-uneditable-crash.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/editing/CompositeEditCommand.cpp

  Log Message:
  -----------
  Merge r164170 - ASSERT_WITH_SECURITY_IMPLICATION in WebCore::toElement
https://bugs.webkit.org/show_bug.cgi?id=128810

Patch by Renata Hodovan <rhodovan.u-szeged at partner.samsung.com> on 2014-02-15
Reviewed by Ryosuke Niwa.

Source/WebCore:

Make CompositeEditCommand::cloneParagraphUnderNewElement() to work when |outerNode|
doesn't contain |start|.

Before this patch, CompositeEditCommand::cloneParagraphUnderNewElement() tried to copy
ancestry nodes from |start| to Document node when |start| position isn't in |outerNode|. This
patch changes CompositeEditCommand::cloneParagraphUnderNewElement() to copy |start| to
|outerNode| only if |outerNode| contains |start| position.

Merged from Blink https://src.chromium.org/viewvc/blink?revision=161762&view=revision by yosin at chromium.org.

Test: editing/execCommand/indent-with-uneditable-crash.html

* editing/CompositeEditCommand.cpp:
(WebCore::CompositeEditCommand::cloneParagraphUnderNewElement):

LayoutTests:

* editing/execCommand/indent-with-uneditable-crash-expected.txt: Added.
* editing/execCommand/indent-with-uneditable-crash.html: Added.


  Commit: b49f54b9473b40564c0340ea100662a3a56746fb
      https://github.com/WebKit/WebKit/commit/b49f54b9473b40564c0340ea100662a3a56746fb
  Author: Andreas Kling <akling at apple.com>
  Date:   2014-04-14 (Mon, 14 Apr 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/frames/reattach-in-unload-expected.txt
    A LayoutTests/fast/frames/reattach-in-unload.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/html/HTMLFrameOwnerElement.h

  Log Message:
  -----------
  Merge r164204 - Ensure that removing an iframe from the DOM tree disconnects its Frame.
<https://webkit.org/b/128889>
<rdar://problem/15671221>

Merged from Blink (patch by Adam Klein):
https://src.chromium.org/viewvc/blink?revision=156174&view=revision

Source/WebCore:

SubframeLoadingDisabler wasn't catching the case when an <iframe> was,
in its unload handler, removed and re-added to the same parent.
Fix this by using a count of SubframeLoadingDisablers that are on the
stack for a given root, rather than a simple boolean.

Test: fast/frames/reattach-in-unload.html

* html/HTMLFrameOwnerElement.h:
(WebCore::SubframeLoadingDisabler::disabledSubtreeRoots):

LayoutTests:

* fast/frames/reattach-in-unload-expected.txt: Added.
* fast/frames/reattach-in-unload.html: Added.


  Commit: 5618fdbef8ec4812825524ff9941a84e1931a633
      https://github.com/WebKit/WebKit/commit/5618fdbef8ec4812825524ff9941a84e1931a633
  Author: Chris Fleizach <cfleizach at apple.com>
  Date:   2014-04-14 (Mon, 14 Apr 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/accessibility/display-table-cell-causes-crash-expected.txt
    A LayoutTests/accessibility/display-table-cell-causes-crash.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/accessibility/AccessibilityTable.cpp

  Log Message:
  -----------
  Merge r164249 - AX: Invalid cast in WebCore::AccessibilityTable::isDataTable (CRBug 280352)
<https://webkit.org/b/128925>
<rdar://problem/16087351>

Merged from Blink (patch by Dominic Mazzoni):
https://src.chromium.org/viewvc/blink?revision=159711&view=revision

Reviewed by Oliver Hunt.

Source/WebCore:

Don't cast to a table cell element unless we are sure it is one.

Test: accessibility/display-table-cell-causes-crash.html

* accessibility/AccessibilityTable.cpp:
(WebCore::AccessibilityTable::isDataTable):

LayoutTests:

* accessibility/display-table-cell-causes-crash-expected.txt: Added.
* accessibility/display-table-cell-causes-crash.html: Added.


  Commit: 08d744a0b8b9c00fe24be189584693d48afc8654
      https://github.com/WebKit/WebKit/commit/08d744a0b8b9c00fe24be189584693d48afc8654
  Author: Daniel Bates <dbates at webkit.org>
  Date:   2014-04-14 (Mon, 14 Apr 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/forms/number/number-type-update-by-change-event-expected.txt
    A LayoutTests/fast/forms/number/number-type-update-by-change-event.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/html/InputType.cpp

  Log Message:
  -----------
  Merge r164367 - Do not dispatch change event twice in single step action
https://bugs.webkit.org/show_bug.cgi?id=116936
<rdar://problem/16086828>

Reviewed by Ryosuke Niwa.

Merged from Blink (patch by Kent Tamura):
https://src.chromium.org/viewvc/blink?view=rev&revision=151175

Source/WebCore:

Test: fast/forms/number/number-type-update-by-change-event.html

* html/InputType.cpp:
(WebCore::InputType::stepUpFromRenderer):

LayoutTests:

* fast/forms/number/number-type-update-by-change-event-expected.txt: Added.
* fast/forms/number/number-type-update-by-change-event.html: Added.


  Commit: ed91dcec54bbb79a75b1c918db3cb270017797dc
      https://github.com/WebKit/WebKit/commit/ed91dcec54bbb79a75b1c918db3cb270017797dc
  Author: Jon Honeycutt <jhoneycutt at apple.com>
  Date:   2014-04-14 (Mon, 14 Apr 2014)

  Changed paths:
    M Source/WTF/ChangeLog
    M Source/WTF/wtf/text/StringBuilder.cpp

  Log Message:
  -----------
  Merge r164408 - Crash in WTF::StringBuilder::append()

https://bugs.webkit.org/show_bug.cgi?id=125817
<rdar://problem/15671883>

Reviewed by Oliver Hunt.

* wtf/text/StringBuilder.cpp:
(WTF::expandedCapacity):
Ensure that we return a new capacity of at least 'requiredLength' in
the case where requiredLength is large. Also, use unsigned rather than
size_t for the parameters and the return value, as callers pass
unsigned arguments and treat the result as an unsigned int.


  Commit: a95aa0cb2431ed3feb33c1563cf314f15357ba69
      https://github.com/WebKit/WebKit/commit/a95aa0cb2431ed3feb33c1563cf314f15357ba69
  Author: Bem Jones-Bey <bjonesbe at adobe.com>
  Date:   2014-04-14 (Mon, 14 Apr 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/text/BidiRunList.h

  Log Message:
  -----------
  Merge r164876 - Properly clear m_logicallyLastRun to remove use-after-free possibility
https://bugs.webkit.org/show_bug.cgi?id=129489

Reviewed by David Hyatt.

A use-after-free issue was caught in Blink because m_logicallyLastRun
is not cleared when the item it points to is deleted. Clearing it
turns the use-after-free into a segfault, and prevents any future
use-after-frees from happening.

* platform/text/BidiRunList.h:
(WebCore::BidiRunList<Run>::deleteRuns):


  Commit: e1b99c00a4bcbeddcaba0862e4d840bf3c7404b5
      https://github.com/WebKit/WebKit/commit/e1b99c00a4bcbeddcaba0862e4d840bf3c7404b5
  Author: David Kilzer <ddkilzer at webkit.org>
  Date:   2014-04-14 (Mon, 14 Apr 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/svg/animations/animate-keysplines-crash-expected.txt
    A LayoutTests/svg/animations/animate-keysplines-crash.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/svg/SVGAnimationElement.cpp

  Log Message:
  -----------
  Merge r164933 - Ensure keySplines is valid in SMIL animations
<http://webkit.org/b/129547>
<rdar://problem/15676128>

Reviewed by Darin Adler.

Merged from Blink (patch by Philip Rogers):
https://src.chromium.org/viewvc/blink?revision=156452&view=revision
http://crbug.com/276111

    This patch fixes a crash in SMIL animations when keySplines are not
    specified. The SMIL spec is clear on this:
    http://www.w3.org/TR/2001/REC-smil-animation-20010904/#AnimFuncCalcMode
    "If there are any errors in the keyTimes specification (bad values,
    too many or too few values), the animation will have no effect."

    This patch simply checks that keyTimes is not empty. Previously,
    splinesCount was set to be m_keySplines.size() + 1 in
    SVGAnimationElement.cpp; this patch changes splinesCount to be equal
    to m_keySplines.size() to make the logic easier to follow and to
    match other checks in SVGAnimationElement::startedActiveInterval.

Source/WebCore:

Test: svg/animations/animate-keysplines-crash.html

* svg/SVGAnimationElement.cpp:
(WebCore::SVGAnimationElement::startedActiveInterval):

LayoutTests:

* svg/animations/animate-keysplines-crash-expected.txt: Added.
* svg/animations/animate-keysplines-crash.html: Added.


  Commit: 39138c25015d63a6c322e3e8902369247ae289db
      https://github.com/WebKit/WebKit/commit/39138c25015d63a6c322e3e8902369247ae289db
  Author: David Kilzer <ddkilzer at webkit.org>
  Date:   2014-04-14 (Mon, 14 Apr 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/editing/execCommand/format-block-crash-expected.txt
    A LayoutTests/editing/execCommand/format-block-crash.html
    A LayoutTests/editing/execCommand/resources/format-block-crash-iframe.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/editing/CompositeEditCommand.cpp
    M Source/WebCore/editing/CompositeEditCommand.h

  Log Message:
  -----------
  Merge r165138 - Fix crash in CompositeEditCommand::cloneParagraphUnderNewElement()
<http://webkit.org/b/129751>
<rdar://problem/16237965>

Reviewed by Jon Honeycutt.

Merged from Blink (patch by Yuta Kitamura):
https://src.chromium.org/viewvc/blink?revision=168160&view=revision
http://crbug.com/345005

    The root cause is CompositeEditCommand::moveParagraphWithClones() passing
    two positions |start| and |end| which do not follow the document order,
    i.e. in some situations |start| is located after |end| because of
    the difference in affinity.

    This patch fixes this crash by normalizing |end| to |start| in such situations.
    It also adds an ASSERT that checks the relationship between |start| and |end|.

Source/WebCore:

Test: editing/execCommand/format-block-crash.html

* editing/CompositeEditCommand.cpp:
(WebCore::CompositeEditCommand::cloneParagraphUnderNewElement):
(WebCore::CompositeEditCommand::moveParagraphWithClones):
* editing/CompositeEditCommand.h:

LayoutTests:

* editing/execCommand/format-block-crash-expected.txt: Added.
* editing/execCommand/format-block-crash.html: Added.
* editing/execCommand/resources/format-block-crash-iframe.html: Added.


  Commit: cac3f389826f2577103ce14781dfec0640685491
      https://github.com/WebKit/WebKit/commit/cac3f389826f2577103ce14781dfec0640685491
  Author: Daniel Bates <dbates at webkit.org>
  Date:   2014-04-14 (Mon, 14 Apr 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/loader/appcache/ApplicationCacheGroup.cpp
    M Source/WebCore/loader/appcache/ApplicationCacheStorage.cpp
    M Source/WebCore/loader/appcache/ApplicationCacheStorage.h

  Log Message:
  -----------
  Merge r165145 - ASSERT(newestManifest) fails in WebCore::ApplicationCacheGroup::didFinishLoadingManifest()
https://bugs.webkit.org/show_bug.cgi?id=129753
<rdar://problem/12069835>

Reviewed by Alexey Proskuryakov.

Fixes an issue where an assertion failure would occur when visiting a web site whose on-disk
app cache doesn't contain a manifest resource.

For some reason an app cache for a web site may be partially written to disk. In particular, the
app cache may only contain a CacheGroups entry. That is, the manifest resource and origin records
may not be persisted to disk. From looking over the code, we're unclear how such a situation can occur
and hence have been unable to create such an app cache. We were able to reproduce this issue using
an app cache database file that was provided by a person that was affected by this issue.

No test included because it's not straightforward to write a test for this change.

* loader/appcache/ApplicationCacheGroup.cpp:
(WebCore::ApplicationCacheGroup::checkIfLoadIsComplete): Assert that m_cacheBeingUpdated->manifestResource()
is non-null. Currently we only document this assumption in a code comment. Also separated a single assertion
expression into two assertion expressions to make it straightforward to identify the failing sub-expression
on failure.
* loader/appcache/ApplicationCacheStorage.cpp:
(WebCore::ApplicationCacheStorage::store): Modified to call ApplicationCacheStorage::deleteCacheGroupRecord()
to remove a cache group and associated cache records (if applicable) before inserting a cache group entry.
This replacement approach will ultimately repair incomplete app cache data for people affected by this bug.
(WebCore::ApplicationCacheStorage::loadCache): Log an error and return nullptr if the cache we loaded doesn't
have a manifest resource.
(WebCore::ApplicationCacheStorage::deleteCacheGroupRecord): Added.
(WebCore::ApplicationCacheStorage::deleteCacheGroup): Extracted deletion logic for cache group record into
ApplicationCacheStorage::deleteCacheGroupRecord().
* loader/appcache/ApplicationCacheStorage.h:


  Commit: 338f8285cf9984398683c83f2f82fae1ff3f2f15
      https://github.com/WebKit/WebKit/commit/338f8285cf9984398683c83f2f82fae1ff3f2f15
  Author: Oliver Hunt <oliver at apple.com>
  Date:   2014-04-14 (Mon, 14 Apr 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/workers/resources/worker-copy-shared-blob-url-worker.js
    A LayoutTests/fast/workers/worker-copy-shared-blob-url-expected.txt
    A LayoutTests/fast/workers/worker-copy-shared-blob-url.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/Modules/indexeddb/IDBObjectStore.cpp
    M Source/WebCore/bindings/js/SerializedScriptValue.cpp
    M Source/WebCore/bindings/js/SerializedScriptValue.h

  Log Message:
  -----------
  Merge r165339 - SerializedScriptValue may move Identifiers between worlds
https://bugs.webkit.org/show_bug.cgi?id=129979

Reviewed by Andreas Kling.

Source/WebCore:

Test: fast/workers/worker-copy-shared-blob-url.html

Don't use Strings to store blob URLs as String's may be Identifiers
and they can only exist in one world/thread at a time.

* Modules/indexeddb/IDBObjectStore.cpp:
(WebCore::IDBObjectStore::put):
* bindings/js/SerializedScriptValue.cpp:
(WebCore::CloneDeserializer::deserializeString):
(WebCore::SerializedScriptValue::addBlobURL):
(WebCore::SerializedScriptValue::SerializedScriptValue):
* bindings/js/SerializedScriptValue.h:

LayoutTests:

Add test cases

* fast/workers/resources/worker-copy-shared-blob-url-worker.js: Added.
(count.0.onmessage):
* fast/workers/worker-copy-shared-blob-url-expected.txt: Added.
* fast/workers/worker-copy-shared-blob-url.html: Added.


  Commit: 104d51fb1c891f5588057598cbfe5c1aeb22bf70
      https://github.com/WebKit/WebKit/commit/104d51fb1c891f5588057598cbfe5c1aeb22bf70
  Author: Jer Noble <jer.noble at apple.com>
  Date:   2014-04-14 (Mon, 14 Apr 2014)

  Changed paths:
    M Source/WTF/ChangeLog
    M Source/WTF/wtf/WeakPtr.h

  Log Message:
  -----------
  Merge r165425 - Improve WeakPtr operators.
https://bugs.webkit.org/show_bug.cgi?id=130053

Reviewed by Andreas Kling.

Replace the "operator!()" with an explicit bool operator.  Add an "operator->()".

* wtf/WeakPtr.h:
(WTF::WeakPtr::operator bool):
(WTF::WeakPtr::operator->):


  Commit: 8025856d27e46598465fa401910947eb800e5083
      https://github.com/WebKit/WebKit/commit/8025856d27e46598465fa401910947eb800e5083
  Author: Andreas Kling <akling at apple.com>
  Date:   2014-04-14 (Mon, 14 Apr 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/page/FrameView.cpp

  Log Message:
  -----------
  Merge r165548 - Don't send synchronous resize events when FrameView has auto-sizing enabled.
<https://webkit.org/b/130198>
<rdar://problem/15991333>

Reviewed by Dan Bernstein.

* page/FrameView.cpp:
(WebCore::FrameView::sendResizeEventIfNeeded):


  Commit: d96035dbbcab751cd68b54f4b2fdd9847c5a37b3
      https://github.com/WebKit/WebKit/commit/d96035dbbcab751cd68b54f4b2fdd9847c5a37b3
  Author: Antti Koivisto <koivisto at iki.fi>
  Date:   2014-04-14 (Mon, 14 Apr 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/css/getMatchedCSSProperties-rule-mutation-expected.txt
    A LayoutTests/fast/css/getMatchedCSSProperties-rule-mutation.html
    A LayoutTests/fast/css/getMatchedCSSRules-crash-expected.txt
    A LayoutTests/fast/css/getMatchedCSSRules-crash.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/css/CSSStyleRule.cpp
    M Source/WebCore/css/PropertySetCSSStyleDeclaration.cpp
    M Source/WebCore/css/PropertySetCSSStyleDeclaration.h

  Log Message:
  -----------
  Merge r165821 - Mutating rules returned by getMatchedCSSRules can result in crash
https://bugs.webkit.org/show_bug.cgi?id=130209

Source/WebCore:

Reviewed by Andreas Kling.

The non-standard getMatchedCSSRules API returns CSSStyleRule objects that don't
have parent stylesheet pointer (as we don't know which sheet the rule originated from).
Mutating the rule via such wrapper can lead to crashes later as we fail to invalidate
the underlying stylesheet.

Fix by disallowing mutation of style rules that don't have parent sheet pointer. CSSStyleRule
has two mutable properties selectorText and style. The latter gives back CSSStyleDeclaration.
This patch disallows mutations in both cases for CSSStyleRules that don't have parent stylesheet
pointer.

While it is technically possible to have CSSRules that are legitimately disconnected
from stylesheet (by removing rule from sheet while holding a reference to it) it never
makes sense to mutate such rule as there is no way to do anything with it afterwards.

Tests: fast/css/getMatchedCSSProperties-rule-mutation.html
       fast/css/getMatchedCSSRules-crash.html

* css/CSSStyleRule.cpp:
(WebCore::CSSStyleRule::setSelectorText):

    Bail out if parent stylesheet is null.

* css/PropertySetCSSStyleDeclaration.cpp:
(WebCore::PropertySetCSSStyleDeclaration::setCssText):
(WebCore::PropertySetCSSStyleDeclaration::setProperty):
(WebCore::PropertySetCSSStyleDeclaration::removeProperty):
(WebCore::PropertySetCSSStyleDeclaration::setPropertyInternal):

    Allow StyleRuleCSSStyleDeclaration subclass cancel the mutation via
    boolean return value from willMutate.

(WebCore::StyleRuleCSSStyleDeclaration::willMutate):

    Disallow mutation if the owning CSSStyleRule is null or has null stylesheet.

(WebCore::StyleRuleCSSStyleDeclaration::didMutate):

    We never get here with null rule or stylesheet anymore.

* css/PropertySetCSSStyleDeclaration.h:
(WebCore::PropertySetCSSStyleDeclaration::willMutate):

LayoutTests:

Reviewed by Andreas Kling.

* fast/css/getMatchedCSSProperties-rule-mutation-expected.txt: Added.
* fast/css/getMatchedCSSProperties-rule-mutation.html: Added.
* fast/css/getMatchedCSSRules-crash-expected.txt: Added.
* fast/css/getMatchedCSSRules-crash.html: Added.


  Commit: 85a9ea8f62d0e5d8dc75d9c04ff84cd67799a517
      https://github.com/WebKit/WebKit/commit/85a9ea8f62d0e5d8dc75d9c04ff84cd67799a517
  Author: Mark Lam <mark.lam at apple.com>
  Date:   2014-04-14 (Mon, 14 Apr 2014)

  Changed paths:
    M Source/JavaScriptCore/ChangeLog
    M Source/JavaScriptCore/runtime/JSStringJoiner.cpp

  Log Message:
  -----------
  Merge r165902 - Update type of local vars to match the type of String length.
<https://webkit.org/b/130077>

Reviewed by Geoffrey Garen.

* runtime/JSStringJoiner.cpp:
(JSC::JSStringJoiner::join):


  Commit: 2e645423e2d9b636f4a19679889e36b185772ebf
      https://github.com/WebKit/WebKit/commit/2e645423e2d9b636f4a19679889e36b185772ebf
  Author: Antti Koivisto <koivisto at iki.fi>
  Date:   2014-04-14 (Mon, 14 Apr 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/css/long-selector-list-crash-expected.txt
    A LayoutTests/fast/css/long-selector-list-crash.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/css/CSSSelectorList.cpp
    M Source/WebCore/css/StyleRule.cpp

  Log Message:
  -----------
  Merge r165921 - Crash with long selector list
https://bugs.webkit.org/show_bug.cgi?id=123006

Reviewed by Andreas Kling.

Source/WebCore:

Test: fast/css/long-selector-list-crash.html

* css/CSSSelectorList.cpp:
(WebCore::CSSSelectorList::CSSSelectorList):
(WebCore::CSSSelectorList::adoptSelectorVector):
(WebCore::CSSSelectorList::operator=):
* css/StyleRule.cpp:
(WebCore::StyleRule::create):

    Add a bunch of asserts.

(WebCore::StyleRule::splitIntoMultipleRulesWithMaximumSelectorComponentCount):

    This could produce a zero-length selector list.

LayoutTests:

* fast/css/long-selector-list-crash-expected.txt: Added.
* fast/css/long-selector-list-crash.html: Added.


  Commit: 62a7e73147c5c68e4ca80830acd3d6f80e69a386
      https://github.com/WebKit/WebKit/commit/62a7e73147c5c68e4ca80830acd3d6f80e69a386
  Author: Alexey Proskuryakov <ap at webkit.org>
  Date:   2014-04-14 (Mon, 14 Apr 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/WebPageProxy.cpp
    M Source/WebKit2/UIProcess/WebProcessProxy.cpp
    M Source/WebKit2/UIProcess/WebProcessProxy.h

  Log Message:
  -----------
  Merge r166026 - Generalize WebInspector check in maybeInitializeSandboxExtensionHandle().
https://bugs.webkit.org/show_bug.cgi?id=130079
<rdar://problem/16286683>

Reviewed by Anders Carlsson.

* UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::maybeInitializeSandboxExtensionHandle):
Perform an early return for all paths that don't need a sandbox extension due to
access being assumed, not only for WebInspector pages.

* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::hasAssumedReadAccessToURL):
(WebKit::WebProcessProxy::checkURLReceivedFromWebProcess):
* UIProcess/WebProcessProxy.h:
Factored out m_localPathsWithAssumedReadAccess iteration to a public function.


  Commit: 8c8eae451175182c183ada5f0cdceeb9cf6471f4
      https://github.com/WebKit/WebKit/commit/8c8eae451175182c183ada5f0cdceeb9cf6471f4
  Author: Oliver Hunt <oliver at apple.com>
  Date:   2014-04-14 (Mon, 14 Apr 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/dom/navigation-with-sideeffects-expected.txt
    A LayoutTests/fast/dom/navigation-with-sideeffects.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/bindings/js/JSDocumentCustom.cpp

  Log Message:
  -----------
  Merge r166090 - Source/WebCore: Fix a crash when assigning an object to document.location
https://bugs.webkit.org/show_bug.cgi?id=130213

Reviewed by Geoffrey Garen.

Convert location to string before we make use the document.
This prevents us from attempting to navigate a frame that
has already been removed.

Test: fast/dom/navigation-with-sideeffects-crash.html

* bindings/js/JSDocumentCustom.cpp:
(WebCore::JSDocument::location):
(WebCore::JSDocument::setLocation):

LayoutTests: Fix semantics of JS execution when assigning an object to document.location
https://bugs.webkit.org/show_bug.cgi?id=130213

Reviewed by Geoffrey Garen.

* fast/dom/navigation-with-sideeffects-expected.txt: Added.
* fast/dom/navigation-with-sideeffects.html: Added.


  Commit: 0d8c4c23d525369f1d43e778882ca53b5e2311d2
      https://github.com/WebKit/WebKit/commit/0d8c4c23d525369f1d43e778882ca53b5e2311d2
  Author: Jer Noble <jer.noble at apple.com>
  Date:   2014-04-14 (Mon, 14 Apr 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/rendering/RenderLayerBacking.cpp

  Log Message:
  -----------
  Merge r166304 - REGRESSION(r162679): Poster image visible under the video
https://bugs.webkit.org/show_bug.cgi?id=130783

Reviewed by Simon Fraser.

In the listed revision, we started checking for isRenderImage()
instead of isImage(). RenderMedias return 'true' for the first
but 'false' for the second. Change the if() statement to check
for isRenderMedia() in addition to !isRenderImage().

* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::isDirectlyCompositedImage):


  Commit: 46ccccad3ef09ffa67aa8455e70724925b0984e1
      https://github.com/WebKit/WebKit/commit/46ccccad3ef09ffa67aa8455e70724925b0984e1
  Author: Youenn Fablet <youennf at gmail.com>
  Date:   2014-04-14 (Mon, 14 Apr 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/http/tests/security/video-cross-origin-accessfailure-expected.txt
    A LayoutTests/http/tests/security/video-cross-origin-accessfailure.html
    A LayoutTests/http/tests/security/video-cross-origin-accesssameorigin-expected.txt
    A LayoutTests/http/tests/security/video-cross-origin-accesssameorigin.html
    M LayoutTests/platform/efl/TestExpectations
    M LayoutTests/platform/gtk/TestExpectations
    M LayoutTests/platform/mac/TestExpectations
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp
    M Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h
    M Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp
    M Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.h

  Log Message:
  -----------
  Merge r167193 - [GStreamer] No CORS support for media elements
https://bugs.webkit.org/show_bug.cgi?id=99037

Patch by Youenn Fablet <youenn.fablet at crf.canon.fr> on 2014-04-13
Reviewed by Philippe Normand.

Source/WebCore:

Added CORS access control check to media sources when crossorigin attribute is set.

Added getter to CORS access control check status (used to compute whether the stream is tainted or not).
Related test is http/tests/security/video-cross-origin-readback.html.

Disabled access to cross-origin streams that fail CORS check when crossorigin attribute is set.
Related test is http/tests/security/video-cross-origin-accessfailure.html.

Tests: http/tests/security/video-cross-origin-accessfailure.html
       http/tests/security/video-cross-origin-accesssameorigin.html

* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::didPassCORSAccessCheck): Return whether media is cross-origin (tainted) or not by querying the gstreamer source layer.
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h: Added MediaPlayerPrivateGStreamer::didPassCORSAccessCheck declaration.
* platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
(webKitWebSrcStart): Passed CORS mode parameter to the streaming client. In case of CORS check failure, stop the resource loading.
(webKitSrcPassedCORSAccessCheck): Return whether CORS access control check was done and successful.
(StreamingClient::handleResponseReceived): Take a parameter to assign the CORS access control check result.
(CachedResourceStreamingClient::CachedResourceStreamingClient): Updated setting of the ResourceLoaderOptions according CORS mode.
(CachedResourceStreamingClient::responseReceived): Check CORS and pass result to handleResponseReceived.
(ResourceHandleStreamingClient::didReceiveResponse): No CORS check.
* platform/graphics/gstreamer/WebKitWebSourceGStreamer.h: Added webKitSrcPassedCORSAccessCheck declaration.

LayoutTests:

http/tests/security/video-cross-origin-accessfailure.html verifies that cross-origin streams that fail CORS check
are not played when crossorigin attribute is set.
 http/tests/security/video-cross-origin-accesssameorigin.html verifies that access to same-origin streams
are played when crossorigin attribute is set.

* http/tests/security/video-cross-origin-accessfailure-expected.txt: Added.
* http/tests/security/video-cross-origin-accessfailure.html: Added.
* http/tests/security/video-cross-origin-accesssameorigin-expected.txt: Added.
* http/tests/security/video-cross-origin-accesssameorigin.html: Added.
* platform/efl/TestExpectations: Enabled http/tests/security/video-cross-origin-readback.html.
* platform/gtk/TestExpectations: Ditto.
* platform/mac/TestExpectations: Disabled http/tests/security/video-cross-origin-accessfailure.html.


  Commit: 31892e22c16c9c01b80b0e954ff76ed5c2295c7d
      https://github.com/WebKit/WebKit/commit/31892e22c16c9c01b80b0e954ff76ed5c2295c7d
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-04-14 (Mon, 14 Apr 2014)

  Changed paths:
    M ChangeLog
    M Source/WebKit/gtk/ChangeLog
    M Source/WebKit/gtk/NEWS
    M Source/autotools/Versions.m4

  Log Message:
  -----------
  Unreviewed. Update NEWS and Versions.m4 for 2.4.1 release.

.:

* Source/autotools/Versions.m4: Bump version numbers.

Source/WebKit/gtk:

* NEWS: Added release notes for 2.4.1.


  Commit: c59b54725a6b39542d604802c8cdca4cdfad44e2
      https://github.com/WebKit/WebKit/commit/c59b54725a6b39542d604802c8cdca4cdfad44e2
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-04-22 (Tue, 22 Apr 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp

  Log Message:
  -----------
  Merge r167656 - [GTK] Crash after getting web view context property with g_object_get
https://bugs.webkit.org/show_bug.cgi?id=131983

Reviewed by Philippe Normand.

The problem is that the getter is using g_value_take_object() and
the default context is destroyed when the caller releases its ref.

* UIProcess/API/gtk/WebKitWebView.cpp:
(webkitWebViewGetProperty): Use g_value_set_object() instead of
g_value_take_object().


  Commit: b5d96d995a98254b27e10a6796251d370b719fe3
      https://github.com/WebKit/WebKit/commit/b5d96d995a98254b27e10a6796251d370b719fe3
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBase.cpp

  Log Message:
  -----------
  Merge r167883 - [GTK] Crash in debug build with removing windowed plugin child widgets from the view
https://bugs.webkit.org/show_bug.cgi?id=132252

Reviewed by Philippe Normand.

It crashes due to an assert in HashTable that checks the iterators
validity. The problem is that we are iterating the children map
and the callback called on every iteration might modify the map,
making the iterators invalid. This happens when the WebView is
destroyed, GtkContainer calls gtk_container_foreach() with
gtk_widget_destroy as callback. When a widget inside a container
is destroyed, it's removed from the container, and in our case,
the child widget is removed from the map. This fixes several
crashes when running layout tests in debug bot.

* UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseContainerForall): Use copyKeysToVector() instead
of using a range iterator for the map keys and check in every
iteration that the child widget from the keys vector is still
present in the map before calling the callback.


  Commit: 0f1c8e43505ef30daac8b90c3245d1c57b40ed5a
      https://github.com/WebKit/WebKit/commit/0f1c8e43505ef30daac8b90c3245d1c57b40ed5a
  Author: Žan Doberšek <zdobersek at igalia.com>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/API/gtk/WebKitPlugin.cpp

  Log Message:
  -----------
  Merge r167884 - [GTK][WK2] Missing return statement in webkit_plugin_get_description()
https://bugs.webkit.org/show_bug.cgi?id=132263

Reviewed by Carlos Garcia Campos.

* UIProcess/API/gtk/WebKitPlugin.cpp:
(webkit_plugin_get_description): Actually return the data of the cached
plugin description CString.


  Commit: 11418860f46dd64a5a42b4ceb42084932b436537
      https://github.com/WebKit/WebKit/commit/11418860f46dd64a5a42b4ceb42084932b436537
  Author: Žan Doberšek <zdobersek at igalia.com>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp
    M Source/WebKit2/UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp

  Log Message:
  -----------
  Merge r167885 - [WK2][X11] NetscapePluginModule::scanPlugin() should write UTF-8 strings to stdout
https://bugs.webkit.org/show_bug.cgi?id=132245

Reviewed by Carlos Garcia Campos.

NetscapePluginModule::scanPlugin(), in the helper writeLine function, takes each character
of the given string and writes it out as a UChar, doing two fputc calls for each byte of the
16-bit type.

This fails badly with characters with integer value less than 256 as the most significant byte
of the UChar is written out as a null character. This effectively chops the output that's gathered
in the UIProcess and is parsed in PluginProcessProxy::scanPlugin().

To avoid all this, the UTF-8 encoding of the string is written out in the PluginProcess, and
String::fromUTF8() is called in the UIProcess to properly decode the received string.

* Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:
(WebKit::writeCharacter):
(WebKit::writeLine):
(WebKit::writeByte): Deleted.
* UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:
(WebKit::PluginProcessProxy::scanPlugin):


  Commit: 2137ae0d067d4f38b34b7a24aa41452f4b59b287
      https://github.com/WebKit/WebKit/commit/2137ae0d067d4f38b34b7a24aa41452f4b59b287
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M Source/JavaScriptCore/ChangeLog
    M Source/JavaScriptCore/dfg/DFGJITCompiler.h
    M Source/JavaScriptCore/dfg/DFGOSREntry.cpp
    M Source/JavaScriptCore/dfg/DFGOSREntry.h
    M Source/JavaScriptCore/heap/Heap.cpp
    M Source/JavaScriptCore/interpreter/JSStack.cpp
    M Source/JavaScriptCore/interpreter/JSStack.h

  Log Message:
  -----------
  Unreviewed. Revert r159826 - "Finally fix some obvious Bartlett bugs"

This reverts r159826.


  Commit: 13c12ac671467ac50521f86ef4f6ebe5770b95be
      https://github.com/WebKit/WebKit/commit/13c12ac671467ac50521f86ef4f6ebe5770b95be
  Author: Andreas Kling <akling at apple.com>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/frames/set-iframe-src-in-pagehide-crash-expected.txt
    A LayoutTests/fast/frames/set-iframe-src-in-pagehide-crash.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/loader/SubframeLoader.cpp

  Log Message:
  -----------
  Merge r166049 - HTMLFrameOwnerElement should obey the SubframeLoadingDisabler when creating subframes
<rdar://problem/15675780>

Merge Blink r156744 by Adam Klein.

Source/WebCore:

Test: fast/frames/set-iframe-src-in-pagehide-crash.html

* loader/SubframeLoader.cpp:
(WebCore::SubframeLoader::loadSubframe):

LayoutTests:

* fast/frames/set-iframe-src-in-pagehide-crash-expected.txt: Added.
* fast/frames/set-iframe-src-in-pagehide-crash.html: Added.


  Commit: 049b3066929007ee9a40df39f00517624b31d722
      https://github.com/WebKit/WebKit/commit/049b3066929007ee9a40df39f00517624b31d722
  Author: David Kilzer <ddkilzer at webkit.org>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/forms/form-submission-crash-successful-submit-button-expected.txt
    A LayoutTests/fast/forms/form-submission-crash-successful-submit-button.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/html/HTMLFormElement.cpp

  Log Message:
  -----------
  Merge r166236 - Hold a reference to firstSuccessfulSubmitButton in HTMLFormElement::submit
<http://webkit.org/b/130713>
<rdar://problem/15661876>

Reviewed by Darin Adler.

Merged from Blink (patch by Ian Beer):
http://crbug.com/303657
https://src.chromium.org/viewvc/blink?view=rev&revision=158938

Source/WebCore:

Test: fast/forms/form-submission-crash-successful-submit-button.html

* html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::submit):

LayoutTests:

* fast/forms/form-submission-crash-successful-submit-button-expected.txt: Added.
* fast/forms/form-submission-crash-successful-submit-button.html: Added.


  Commit: 82b8a59d2780295a3718b7b6d89999a9b449d5c9
      https://github.com/WebKit/WebKit/commit/82b8a59d2780295a3718b7b6d89999a9b449d5c9
  Author: David Kilzer <ddkilzer at webkit.org>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/svg/transforms/svg-matrix-tearoff-crash-expected.txt
    A LayoutTests/svg/transforms/svg-matrix-tearoff-crash.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/GNUmakefile.list.am
    M Source/WebCore/WebCore.vcxproj/WebCore.vcxproj
    M Source/WebCore/WebCore.vcxproj/WebCore.vcxproj.filters
    M Source/WebCore/WebCore.xcodeproj/project.pbxproj
    M Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
    A Source/WebCore/svg/properties/SVGMatrixTearOff.h
    M Source/WebCore/svg/properties/SVGPropertyTearOff.h
    R Source/WebCore/svg/properties/SVGStaticPropertyWithParentTearOff.h

  Log Message:
  -----------
  Merge r164917 - Fix lifetime handling of SVGPropertyTearOffs
<http://webkit.org/b/129211>
<rdar://problem/15696025>

Reviewed by Maciej Stachowiak.

Merged from Blink (patch by Ojan Vafai):
https://src.chromium.org/viewvc/blink?revision=157801&view=revision
http://crbug.com/288771

    -Replace SVGStaticPropertyWithParentTearOff with SVGMatrixTearOff
    since it's only used in that one place. This means we can get rid
    of the templatizing and the method pointer.
    -Change SVGPropertyTearOff to keep track of it's child tearoffs
    and call detachWrapper on its child tearoffs when it's destroyed
    or when it's wrapper is detached.
    -Have SVGPropertyTearOff hold WeakPtrs to the child tearoffs
    to avoid having a cycle.

Source/WebCore:

Test: svg/transforms/svg-matrix-tearoff-crash.html

* GNUmakefile.list.am:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* bindings/scripts/CodeGeneratorJS.pm:
(NativeToJSValue):
* svg/properties/SVGMatrixTearOff.h: Renamed from Source/WebCore/svg/properties/SVGStaticPropertyWithParentTearOff.h.
(WebCore::SVGMatrixTearOff::create):
(WebCore::SVGMatrixTearOff::commitChange):
(WebCore::SVGMatrixTearOff::SVGMatrixTearOff):
* svg/properties/SVGPropertyTearOff.h:
(WebCore::SVGPropertyTearOff::addChild):
(WebCore::SVGPropertyTearOff::detachChildren):

LayoutTests:

* svg/transforms/svg-matrix-tearoff-crash-expected.txt: Added.
* svg/transforms/svg-matrix-tearoff-crash.html: Added.


  Commit: eaca3caf5ea2b84a053537edffd3b078da5ccaf2
      https://github.com/WebKit/WebKit/commit/eaca3caf5ea2b84a053537edffd3b078da5ccaf2
  Author: David Kilzer <ddkilzer at webkit.org>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/svg/properties/SVGPropertyTearOff.h

  Log Message:
  -----------
  Merge r165053 - SVGPropertyTearOffs should detachChildren before deleting its value.
<http://webkit.org/b/129618>
<rdar://problem/15661617>

Reviewed by Maciej Stachowiak.

Merged from Blink (patch by kouhei at chromium.org):
https://src.chromium.org/viewvc/blink?revision=158563&view=revision
http://crbug.com/296276

Test: svg/transforms/svg-matrix-tearoff-crash.html

NOTE: The test does not reproduce a crash on WebKit using
JavaScriptCore.

* svg/properties/SVGPropertyTearOff.h:
(WebCore::SVGPropertyTearOff::setValue):
(WebCore::SVGPropertyTearOff::~SVGPropertyTearOff):
- Call detachChildren() if m_value is a copy.  The original
  Blink patch did not modify the destructor code path, although
  that seems obvious via code inspection.


  Commit: 9d2f04c1edde6a3decd6c89924baeec83e700cb5
      https://github.com/WebKit/WebKit/commit/9d2f04c1edde6a3decd6c89924baeec83e700cb5
  Author: Andreas Kling <akling at apple.com>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/rendering/svg/SVGRootInlineBox.h

  Log Message:
  -----------
  Merge r163282 - Minor SVGRootInlineBox cleanup.
<https://webkit.org/b/128094>

Remove two virtual functions and sprinkle some missing overrides.

Reviewed by Anders Carlsson.

* rendering/svg/SVGRootInlineBox.h:


  Commit: 1dbfdb333d1ea188c78cfa54d03aad9b43947a88
      https://github.com/WebKit/WebKit/commit/1dbfdb333d1ea188c78cfa54d03aad9b43947a88
  Author: Myles C. Maxfield <mmaxfield at apple.com>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/svg/custom/unicode-in-tspan-multi-svg-crash-expected.txt
    A LayoutTests/svg/custom/unicode-in-tspan-multi-svg-crash.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/rendering/InlineTextBox.h
    M Source/WebCore/rendering/svg/SVGInlineTextBox.cpp
    M Source/WebCore/rendering/svg/SVGInlineTextBox.h
    M Source/WebCore/rendering/svg/SVGRootInlineBox.h

  Log Message:
  -----------
  Merge r166420 - Clear SVGInlineTextBox fragments when the text changes.
https://bugs.webkit.org/show_bug.cgi?id=130879

Reviewed by Darin Adler.

Ported from Blink: https://src.chromium.org/viewvc/blink?revision=150456&view=revision

Source/WebCore:

This patch modifies SVGInlineTextBox::dirtyLineBoxes to clear all
following text boxes when invoked. Typically this method is called
when the underlying text string changes, and that change needs to
be propagated to all the boxes that use the text beyond the point
where the text is first modified.

Also cleans up final function keywords for SVGRootInlineBox.

Test: svg/custom/unicode-in-tspan-multi-svg-crash.html

* rendering/InlineTextBox.h: Added (non-recursive) dirtyOwnLineBoxes() function
(WebCore::InlineTextBox::dirtyOwnLineBoxes): Calls dirtyLineBoxes()
* rendering/svg/SVGInlineTextBox.h: Added (non-recursive) dirtyOwnLineBoxes() function
(WebCore::SVGInlineTextBox::dirtyOwnLineBoxes):
* rendering/svg/SVGInlineTextBox.cpp:
(WebCore::SVGInlineTextBox::dirtyOwnLineBoxes): Non-recursive part of dirtyLineBoxes()
(WebCore::SVGInlineTextBox::dirtyLineBoxes): Calls dirtyOwnLineBoxes() in a loop
* rendering/svg/SVGRootInlineBox.h:

LayoutTests:

When failing, this test will render garbage characters or crash.

* svg/custom/unicode-in-tspan-multi-svg-crash-expected.txt: Added.
* svg/custom/unicode-in-tspan-multi-svg-crash.html: Added.


  Commit: 41d51b979dc1433bc8a3b03f9833cbaa6f223de8
      https://github.com/WebKit/WebKit/commit/41d51b979dc1433bc8a3b03f9833cbaa6f223de8
  Author: Radu Stavila <stavila at adobe.com>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/block/float/floats-in-clean-line-crash-expected.txt
    A LayoutTests/fast/block/float/floats-in-clean-line-crash.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/rendering/RenderBlockLineLayout.cpp

  Log Message:
  -----------
  Merge r166428 - In some situations, partial layouts of floating elements produce incorrect results.
https://bugs.webkit.org/show_bug.cgi?id=122668

Reviewed by David Hyatt.

Source/WebCore:

When performing partial layout of float elements and checking if other float
elements are encountered, incorrect results were obtained by not checking
the size of the existing floats vector.

Test: fast/block/float/floats-in-clean-line-crash.html

* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlockFlow::checkFloatsInCleanLine):

LayoutTests:

Added test to ensure an assertion is not reached when performing a partial
layout of float elements in certain situations.

* fast/block/float/floats-in-clean-line-crash-expected.txt: Added.
* fast/block/float/floats-in-clean-line-crash.html: Added.


  Commit: 3b8d1736ddfe009eb61c24b787158e134079214c
      https://github.com/WebKit/WebKit/commit/3b8d1736ddfe009eb61c24b787158e134079214c
  Author: David Kilzer <ddkilzer at webkit.org>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/editing/selection/layout-during-move-selection-crash-expected.txt
    A LayoutTests/editing/selection/layout-during-move-selection-crash.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/editing/FrameSelection.cpp

  Log Message:
  -----------
  Merge r166457 - Preserve selection end positions in directionOfSelection
<http://webkit.org/b/104813>
<rdar://problem/13666417>

Reviewed by Brent Fulgham.

Merged from Blink (patch by kenrb at chromium.org):
https://src.chromium.org/viewvc/blink?revision=150621&view=revision
http://crbug.com/164263

    VisibleSelection::visibleStart() and VisibleSelection::visibleEnd()
    can both cause layouts, which has the potential to invalidate any
    rendertree-based objects. This was causing a problem in
    FrameSelection::directionOfSelection(), where a reference to a
    lineBox was being held across a call to visibleEnd().

    This patch ensures that the any layout is completed before linebox
    references are retrieved.

Source/WebCore:

Test: editing/selection/layout-during-move-selection-crash.html

* editing/FrameSelection.cpp:
(WebCore::FrameSelection::directionOfSelection):

LayoutTests:

* editing/selection/layout-during-move-selection-crash-expected.txt: Added.
* editing/selection/layout-during-move-selection-crash.html: Added.


  Commit: dc0f7ebc1d0d677433e4968ddfd0d8e4ebdbe6f0
      https://github.com/WebKit/WebKit/commit/dc0f7ebc1d0d677433e4968ddfd0d8e4ebdbe6f0
  Author: David Kilzer <ddkilzer at webkit.org>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/http/tests/security/no-javascript-location-expected.txt
    A LayoutTests/http/tests/security/no-javascript-location-percent-escaped-expected.txt
    A LayoutTests/http/tests/security/no-javascript-location-percent-escaped.html
    A LayoutTests/http/tests/security/no-javascript-location.html
    A LayoutTests/http/tests/security/no-javascript-refresh-expected.txt
    A LayoutTests/http/tests/security/no-javascript-refresh-percent-escaped-expected.txt
    A LayoutTests/http/tests/security/no-javascript-refresh-percent-escaped.php
    A LayoutTests/http/tests/security/no-javascript-refresh-spaces-expected.txt
    A LayoutTests/http/tests/security/no-javascript-refresh-spaces.php
    A LayoutTests/http/tests/security/no-javascript-refresh-static-expected.txt
    A LayoutTests/http/tests/security/no-javascript-refresh-static-percent-escaped-expected.txt
    A LayoutTests/http/tests/security/no-javascript-refresh-static-percent-escaped.html
    A LayoutTests/http/tests/security/no-javascript-refresh-static-spaces-expected.txt
    A LayoutTests/http/tests/security/no-javascript-refresh-static-spaces.html
    A LayoutTests/http/tests/security/no-javascript-refresh-static.html
    A LayoutTests/http/tests/security/no-javascript-refresh.php
    A LayoutTests/http/tests/security/resources/no-javascript-location-percent-escaped.php
    A LayoutTests/http/tests/security/resources/no-javascript-location.php
    M Source/WebCore/ChangeLog
    M Source/WebCore/dom/Document.cpp
    M Source/WebCore/loader/FrameLoader.cpp

  Log Message:
  -----------
  Merge r166600 - Do not allow HTTP refresh headers to refresh to javascript: URLs
<http://webkit.org/b/119051>
<rdar://problem/14536453>

Reviewed by Alexey Proskuryakov.

Merged from Blink (patch by tsepez at chromium.org):
https://src.chromium.org/viewvc/blink?revision=153912&view=revision
http://crbug.com/258151

    This behaviour has been standard in IE since IE7.  This makes us both
    more compatible and less vulnerable to XSS.

Source/WebCore:

Tests: http/tests/security/no-javascript-location-percent-escaped.html
       http/tests/security/no-javascript-location.html
       http/tests/security/no-javascript-refresh-percent-escaped.php
       http/tests/security/no-javascript-refresh-spaces.php
       http/tests/security/no-javascript-refresh-static-percent-escaped.html
       http/tests/security/no-javascript-refresh-static-spaces.html
       http/tests/security/no-javascript-refresh-static.html
       http/tests/security/no-javascript-refresh.php

* dom/Document.cpp:
(WebCore::Document::processHttpEquiv):
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::receivedFirstData):
- Do not fire meta http refresh for a javascript: URL protocol.

LayoutTests:

* http/tests/security/no-javascript-refresh-expected.txt: Added.
* http/tests/security/no-javascript-refresh-static-expected.txt: Added.
* http/tests/security/no-javascript-refresh-static.html: Added.
* http/tests/security/no-javascript-refresh.php: Added.
- Original Blink layout tests with typos fixed and 'PASS:' text
  added.

* http/tests/security/no-javascript-location.html: Added.
* http/tests/security/no-javascript-location-expected.txt: Added.
* http/tests/security/resources/no-javascript-location.php: Copied from LayoutTests/http/tests/security/no-javascript-refresh.php.
* http/tests/security/no-javascript-location-percent-escaped.html: Added.
* http/tests/security/no-javascript-location-percent-escaped-expected.txt: Added.
* http/tests/security/resources/no-javascript-location-percent-escaped.php: Added.
- Add tests using a javascript: URL in a Location: header.

* http/tests/security/no-javascript-refresh-percent-escaped.php: Copied from LayoutTests/http/tests/security/no-javascript-refresh.php.
* http/tests/security/no-javascript-refresh-percent-escaped-expected.txt: Added.
* http/tests/security/no-javascript-refresh-spaces.php: Copied from LayoutTests/http/tests/security/no-javascript-refresh.php.
* http/tests/security/no-javascript-refresh-spaces-expected.txt: Added.
- Add tests using a percent-escaped javascript: URL and a
  javascript: URL with leading spaces in a Refresh: header from
  a web server.

* http/tests/security/no-javascript-refresh-static-percent-escaped.html: Added.
* http/tests/security/no-javascript-refresh-static-percent-escaped-expected.txt: Added.
* http/tests/security/no-javascript-refresh-static-spaces.html: Added.
* http/tests/security/no-javascript-refresh-static-spaces-expected.txt: Added.
- Add tests using a percent-escaped javascript: URL and a
  javascript: URL with leading spaces in a meta http-equiv tag.


  Commit: e3a8233a4a5fd1067a0f8613d59462d929552bc9
      https://github.com/WebKit/WebKit/commit/e3a8233a4a5fd1067a0f8613d59462d929552bc9
  Author: Daniel Bates <dbates at webkit.org>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/css-generated-content/quote-first-letter-crash-expected.txt
    A LayoutTests/fast/css-generated-content/quote-first-letter-crash.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/rendering/RenderQuote.cpp

  Log Message:
  -----------
  Merge r166601 - RenderQuote must destroy remaining text renderer before first letter renderer
https://bugs.webkit.org/show_bug.cgi?id=78023
<rdar://problem/10830009>

Reviewed by Brent Fulgham.

Merged from Blink (patch by Abhishek Arya):
https://src.chromium.org/viewvc/blink?view=rev&revision=151270

Source/WebCore:

Following the fix for <https://bugs.webkit.org/show_bug.cgi?id=114586>, a
RenderQuote may have child render objects for the first letter of its text
and everything following the first letter so as to support the CSS first-
letter property. The latter renderer is responsible for destroying the former
on destruction. It's sufficient to reverse the destruction of the children of
RenderQuote to ensure that we destroy the remaining text renderer before we
destroy the first letter renderer.

Test: fast/css-generated-content/quote-first-letter-crash.html

* rendering/RenderQuote.cpp:
(WebCore::RenderQuote::updateText):

LayoutTests:

* fast/css-generated-content/quote-first-letter-crash-expected.txt: Added.
* fast/css-generated-content/quote-first-letter-crash.html: Added.


  Commit: 66c0d46dba2085f9ab726fda89030e1463a16b22
      https://github.com/WebKit/WebKit/commit/66c0d46dba2085f9ab726fda89030e1463a16b22
  Author: David Kilzer <ddkilzer at webkit.org>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/text/international/unicode-bidi-isolate-nested-with-removes-expected.txt
    A LayoutTests/fast/text/international/unicode-bidi-isolate-nested-with-removes.html

  Log Message:
  -----------
  Merge r166645 - Add LayoutTest for crash with bidi isolates

Merged from Blink (patch by jww at chromium.org):
https://src.chromium.org/viewvc/blink?revision=156580&view=revision
http://crbug.com/265838

See Bug 120504: Fix nested unicode-bidi: isolate
<https://bugs.webkit.org/show_bug.cgi?id=120504>
<http://trac.webkit.org/changeset/155554>

* fast/text/international/unicode-bidi-isolate-nested-with-removes-expected.txt: Added.
* fast/text/international/unicode-bidi-isolate-nested-with-removes.html: Added.


  Commit: 12de424b8f1558d1fc7162db54f28c8010e9a696
      https://github.com/WebKit/WebKit/commit/12de424b8f1558d1fc7162db54f28c8010e9a696
  Author: David Kilzer <ddkilzer at webkit.org>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    M LayoutTests/fast/text/international/unicode-bidi-isolate-nested-with-removes-expected.txt
    A LayoutTests/fast/text/international/unicode-bidi-isolate-nested-with-removes-not-adjacent-expected.txt
    A LayoutTests/fast/text/international/unicode-bidi-isolate-nested-with-removes-not-adjacent.html
    M LayoutTests/fast/text/international/unicode-bidi-isolate-nested-with-removes.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/rendering/InlineIterator.h
    M Source/WebCore/rendering/RenderBlockLineLayout.cpp

  Log Message:
  -----------
  Merge r166650 - Use outermost containing isolate when constructing bidi runs
<http://webkit.org/b/131107>
<rdar://problem/15690021>

Reviewed by Darin Adler.

Merged from Blink (patch by jww at chromium.org):
https://src.chromium.org/viewvc/blink?revision=157268&view=revision
http://crbug.com/279277

    Update containingIsolate to go back all the way to top
    isolate from current root, rather than stopping at the first
    isolate it finds. This works because the current root is
    always updated with each isolate run.

Source/WebCore:

Tests: fast/text/international/unicode-bidi-isolate-nested-with-removes-not-adjacent.html
       fast/text/international/unicode-bidi-isolate-nested-with-removes.html

* rendering/InlineIterator.h:
(WebCore::highestContainingIsolateWithinRoot):
* rendering/RenderBlockLineLayout.cpp:
(WebCore::constructBidiRunsForSegment):

LayoutTests:

* fast/text/international/unicode-bidi-isolate-nested-with-removes-expected.txt: Updated.
* fast/text/international/unicode-bidi-isolate-nested-with-removes-not-adjacent-expected.txt: Added.
* fast/text/international/unicode-bidi-isolate-nested-with-removes-not-adjacent.html: Added.
* fast/text/international/unicode-bidi-isolate-nested-with-removes.html: Updated.


  Commit: 53b37a97ed2b207b9f68bc6f79319fa055ec76f5
      https://github.com/WebKit/WebKit/commit/53b37a97ed2b207b9f68bc6f79319fa055ec76f5
  Author: David Kilzer <ddkilzer at webkit.org>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/rendering/InlineIterator.h
    M Source/WebCore/rendering/RenderBlockLineLayout.cpp

  Log Message:
  -----------
  Merge r167447 - Tidy up isIsolatedInline() and highestContainingIsolateWithinRoot()
<http://webkit.org/b/131117>

Reviewed by Daniel Bates.

Based on review feedback for r166650.

* rendering/InlineIterator.h:
(WebCore::isIsolatedInline):
- Switch argument to a reference since it is never called with a
  nullptr.
(WebCore::highestContainingIsolateWithinRoot):
- Switch first argument to a reference since it's never a
  nullptr.
- Use nullptr for pointer initialization.
- Switch while() loop to for() loop. Pass reference to
  isIsolatedInline().
(WebCore::numberOfIsolateAncestors):
- Switch while() loop to for() loop. Pass reference to
  isIsolatedInline().
* rendering/RenderBlockLineLayout.cpp:
(WebCore::constructBidiRunsForSegment):
- Rename startObj to startObject.
- No longer need to pass the address of startObject here.


  Commit: 8e1b90988cede61b91a4a3589399e26d37c5260a
      https://github.com/WebKit/WebKit/commit/8e1b90988cede61b91a4a3589399e26d37c5260a
  Author: Jon Honeycutt <jhoneycutt at apple.com>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/multicol/fuzzed-test-case-expected.txt
    A LayoutTests/fast/multicol/fuzzed-test-case.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/rendering/RenderBlock.cpp

  Log Message:
  -----------
  Merge r167092 - Assertion failure, !node || node->isElementNode(), in
WebCore::RenderBlock::clone()
<https://bugs.webkit.org/show_bug.cgi?id=110489>
<rdar://problem/13666425>

Reviewed by Antti Koivisto.

Source/WebCore:

We're ending up in RenderBlock::splitBlocks() with |this| ==
|fromBlock|.  We then try to climb the ancestor block chain from
this->parent() to |fromBlock|, but this->parent() is already above
|fromBlock|, so we end up climbing up to the RenderView and trying to
clone it, causing the assertion failure.

Adopt Chromium's mitigation for this from
<https://codereview.chromium.org/13852041>. This is not intended as a
fix for the underlying issue.

Also, fix another issue that occurs with this fuzzed test case that's
not handled by the Chromium fix.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::splitBlocks):
Ensure while we're in the loop that |curr| is a descendant of
|fromBlock|. From the Chromium patch:

    We need to check in every iteration of the loop because
    moveChildrenTo could have moved |curr|. This is a mitigation and
    not really a fix against a class of tree craziness.

Finally, before moving children from |fromBlock| to |toBlock|, ensure
that the children are children of |fromBlock|. If we never entered the
loop, they will be siblings of |fromBlock|, not children.

LayoutTests:

* fast/multicol/fuzzed-test-case-expected.txt: Added.
* fast/multicol/fuzzed-test-case.html: Added.


  Commit: ec8a47442957ed89eb7039944c6d388dadbf0bcf
      https://github.com/WebKit/WebKit/commit/ec8a47442957ed89eb7039944c6d388dadbf0bcf
  Author: Jon Honeycutt <jhoneycutt at apple.com>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/flexbox/collapse-anonymous-wrappers-assertion-expected.txt
    A LayoutTests/fast/flexbox/collapse-anonymous-wrappers-assertion.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/rendering/RenderBlock.h
    M Source/WebCore/rendering/RenderObject.cpp

  Log Message:
  -----------
  Merge r167093 - Assertion failure in WebCore::FlexBoxIterator::next()
<https://bugs.webkit.org/show_bug.cgi?id=117176>
<rdar://problem/14054549>

Source/WebCore:

Code added in r115687 began removing anonymous wrappers when children
become inline. However, there are some objects, like
RenderDeprecatedFlexBox, whose children should always be blocks.

Reviewed by Tim Horton.

* rendering/RenderBlock.h:
(WebCore::RenderBlock::canCollapseAnonymousBlockChild):
Made public.

* rendering/RenderObject.cpp:
(WebCore::RenderObject::removeAnonymousWrappersForInlinesIfNecessary):
Return early if we can't collapse anonymous block children.

LayoutTests:

Reviewed by Tim Horton.

* fast/flexbox/collapse-anonymous-wrappers-assertion-expected.txt: Added.
* fast/flexbox/collapse-anonymous-wrappers-assertion.html: Added.


  Commit: 4044f4f47383594ad7fb6d60811da04b351ff90a
      https://github.com/WebKit/WebKit/commit/4044f4f47383594ad7fb6d60811da04b351ff90a
  Author: Jon Honeycutt <jhoneycutt at apple.com>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/forms/select-change-size-during-focus-expected.txt
    A LayoutTests/fast/forms/select-change-size-during-focus.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/html/HTMLSelectElement.cpp

  Log Message:
  -----------
  Merge r167167 - Assertion failure changing select element size during focus event
dispatch
<https://bugs.webkit.org/show_bug.cgi?id=131566>
<rdar://problem/16400735>

Reviewed by Andy Estes.

Source/WebCore:

Test: fast/forms/select-change-size-during-focus.html

* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
Adopt the fix from Chromium r171216; check that the renderer is still
of the expected type, and return early if it is not.

LayoutTests:

* fast/forms/select-change-size-during-focus-expected.txt: Added.
* fast/forms/select-change-size-during-focus.html: Added.


  Commit: a20ed9c1a59d0c31774db89d94bddc99de2aa1a7
      https://github.com/WebKit/WebKit/commit/a20ed9c1a59d0c31774db89d94bddc99de2aa1a7
  Author: Jon Honeycutt <jhoneycutt at apple.com>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/rendering/RenderBlock.cpp
    M Source/WebCore/rendering/RenderInline.cpp

  Log Message:
  -----------
  Merge r167278 - Assertion failure !node || node->isElementNode() in
WebCore::RenderBlock::inlineElementContinuation

https://bugs.webkit.org/show_bug.cgi?id=108829
<rdar://problem/13666405>

I can't reproduce this assertion failure, but there seems to be an
invalid assumption in RenderBlock::inlineElementContinuation() that
anything with the "isInline()" bit set is a RenderInline.

No new test because the test case in the bug does not repro for me.

Reviewed by Brent Fulgham.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::inlineElementContinuation):
Dave Hyatt says that this function should only return RenderInline
objects (not non-RenderInline inline objects), so update the checks
from isInline() to isRenderInline() before casting with
toRenderInline().

* rendering/RenderInline.cpp:
(WebCore::RenderInline::inlineElementContinuation):
Ditto.


  Commit: 68c86f36e631f73acaa36c0c8d39810396cc028b
      https://github.com/WebKit/WebKit/commit/68c86f36e631f73acaa36c0c8d39810396cc028b
  Author: Jon Honeycutt <jhoneycutt at apple.com>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/svg/filters/feImage-filter-assertion-expected.txt
    A LayoutTests/svg/filters/feImage-filter-assertion.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/graphics/filters/Filter.h
    M Source/WebCore/rendering/FilterEffectRenderer.cpp
    M Source/WebCore/svg/graphics/filters/SVGFEImage.cpp
    M Source/WebCore/svg/graphics/filters/SVGFilter.cpp
    M Source/WebCore/svg/graphics/filters/SVGFilter.h

  Log Message:
  -----------
  Merge r167295 - Assertion failure under FEImage::determineAbsolutePaintRect()

<https://bugs.webkit.org/show_bug.cgi?id=131660>
<rdar://problem/15669294>

Source/WebCore:
This patch merges Chromium r149536 (see
<https://chromiumcodereview.appspot.com/14701012>), which moves
m_absoluteTransform out of SVGFilter and into the base Filter class, so
that it isn't necessary to cast a Filter to SVGFilter to get the
absolute transform.

Reviewed by Geoffrey Garen.

Test: svg/filters/feImage-filter-assertion.html

* platform/graphics/filters/Filter.h:
(WebCore::Filter::Filter):
Changed to take the absolute transform.
(WebCore::Filter::absoluteTransform):
Moved from SVGFilter.
(WebCore::Filter::mapAbsolutePointToLocalPoint):
Ditto.

* rendering/FilterEffectRenderer.cpp:
(WebCore::FilterEffectRenderer::FilterEffectRenderer):
Pass a default AffineTransform() to the Filter base class.

* svg/graphics/filters/SVGFEImage.cpp:
(WebCore::FEImage::determineAbsolutePaintRect):
Use the Filter without casting it to SVGFilter.
(WebCore::FEImage::platformApplySoftware):
Ditto.

* svg/graphics/filters/SVGFilter.cpp:
(WebCore::SVGFilter::SVGFilter):
Pass the transform to the base class, and remove initialization of a
removed member var.

* svg/graphics/filters/SVGFilter.h:
Member var moved to Filter.h.

LayoutTests:
Reviewed by Geoffrey Garen.

* svg/filters/feImage-filter-assertion-expected.txt: Added.
* svg/filters/feImage-filter-assertion.html: Added.


  Commit: a67401199a6a8990cff37e3e39b73df7f9a9b86f
      https://github.com/WebKit/WebKit/commit/a67401199a6a8990cff37e3e39b73df7f9a9b86f
  Author: David Hyatt <hyatt at apple.com>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/block/continuation-crash-expected.txt
    A LayoutTests/fast/block/continuation-crash.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/rendering/RenderInline.cpp

  Log Message:
  -----------
  Merge r166736 - Continuations casting issue.
https://bugs.webkit.org/show_bug.cgi?id=130057
<rdar://problem/16283406>

Reviewed by Simon Fraser.

Source/WebCore:

The code to update relative positioned anonymous block continuations should not
have assumed that all siblings were RenderBlocks. Make the code smarter and
make it bail when it hits something that isn't part of the block continuation
chain.

Added fast/block/continuation-crash.html

* rendering/RenderInline.cpp:
(WebCore::updateStyleOfAnonymousBlockContinuations):

LayoutTests:

* fast/block/continuation-crash-expected.txt: Added.
* fast/block/continuation-crash.html: Added.


  Commit: 92b7c738228d86c59994e1611bef9c350c7d1a31
      https://github.com/WebKit/WebKit/commit/92b7c738228d86c59994e1611bef9c350c7d1a31
  Author: Filip Pizlo <fpizlo at apple.com>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M Source/JavaScriptCore/ChangeLog
    M Source/JavaScriptCore/assembler/MacroAssemblerARM.h
    M Source/JavaScriptCore/assembler/MacroAssemblerARM64.h
    M Source/JavaScriptCore/assembler/MacroAssemblerARMv7.h
    M Source/JavaScriptCore/dfg/DFGOperations.cpp
    M Source/JavaScriptCore/dfg/DFGSpeculativeJIT.cpp
    M Source/JavaScriptCore/runtime/JSString.cpp
    M Source/JavaScriptCore/runtime/JSString.h
    M Source/JavaScriptCore/runtime/Operations.h
    M Source/JavaScriptCore/runtime/StringPrototype.cpp
    A Source/JavaScriptCore/tests/stress/make-large-string-jit-strcat.js
    A Source/JavaScriptCore/tests/stress/make-large-string-jit.js
    A Source/JavaScriptCore/tests/stress/make-large-string-strcat.js
    A Source/JavaScriptCore/tests/stress/make-large-string.js

  Log Message:
  -----------
  Merge r167336 - compileMakeRope does not emit necessary bounds checks
https://bugs.webkit.org/show_bug.cgi?id=130684
<rdar://problem/16398388>

Reviewed by Oliver Hunt.

Add string length bounds checks in a bunch of places. We should never allow a string
to have a length greater than 2^31-1 because it's not clear that the language has
semantics for it and because there is code that assumes that this cannot happen.

Also add a bunch of tests to that effect to cover the various ways in which this was
previously allowed to happen.

* dfg/DFGOperations.cpp:
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileMakeRope):
* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileMakeRope):
* runtime/JSString.cpp:
(JSC::JSRopeString::RopeBuilder::expand):
* runtime/JSString.h:
(JSC::JSString::create):
(JSC::JSRopeString::RopeBuilder::append):
(JSC::JSRopeString::RopeBuilder::release):
(JSC::JSRopeString::append):
* runtime/Operations.h:
(JSC::jsString):
(JSC::jsStringFromRegisterArray):
(JSC::jsStringFromArguments):
* runtime/StringPrototype.cpp:
(JSC::stringProtoFuncIndexOf):
(JSC::stringProtoFuncSlice):
(JSC::stringProtoFuncSubstring):
(JSC::stringProtoFuncToLowerCase):
* tests/stress/make-large-string-jit-strcat.js: Added.
(foo):
* tests/stress/make-large-string-jit.js: Added.
(foo):
* tests/stress/make-large-string-strcat.js: Added.
* tests/stress/make-large-string.js: Added.


  Commit: 2dbb538af69fba3e0059cac42ce975fce75ab8ae
      https://github.com/WebKit/WebKit/commit/2dbb538af69fba3e0059cac42ce975fce75ab8ae
  Author: Darin Adler <darin at apple.com>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/dom/DOMURL/parsing-expected.txt
    A LayoutTests/fast/dom/DOMURL/parsing.html
    A LayoutTests/fast/dom/HTMLAnchorElement/anchor-element-href-parsing-expected.txt
    A LayoutTests/fast/dom/HTMLAnchorElement/anchor-element-href-parsing.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/URL.cpp

  Log Message:
  -----------
  Merge r167480 - Source/WebCore: origin spoofing possible (HTTP Origin, postMessage event.origin) due to inappropriate URL escape sequence decoding
https://bugs.webkit.org/show_bug.cgi?id=131837
rdar://problem/15211936

Reviewed by Anders Carlsson and Dave Hyatt.

Tests: fast/dom/DOMURL/parsing.html
       fast/dom/HTMLAnchorElement/anchor-element-href-parsing.html

* platform/URL.cpp:
(WebCore::URL::host): Removed unnecessary call to decodeURLEscapeSequences, which caused
problems and was not needed.

LayoutTests: hostname extraction from a URL should not decode percent-escape sequences
https://bugs.webkit.org/show_bug.cgi?id=131837
rdar://problem/15211936

Reviewed by Anders Carlsson and Dave Hyatt.

* fast/dom/DOMURL/parsing-expected.txt: Added.
* fast/dom/DOMURL/parsing.html: Added.
* fast/dom/HTMLAnchorElement/anchor-element-href-parsing-expected.txt: Added.
* fast/dom/HTMLAnchorElement/anchor-element-href-parsing.html: Added.


  Commit: 465a4153eceb475180bdbd2f12d54c9159255a40
      https://github.com/WebKit/WebKit/commit/465a4153eceb475180bdbd2f12d54c9159255a40
  Author: Jon Honeycutt <jhoneycutt at apple.com>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/rendering/RenderInline.cpp

  Log Message:
  -----------
  Merge r167524 - Harden RenderInline::inlineElementContinuation()

<https://bugs.webkit.org/show_bug.cgi?id=131858>

Reviewed by Sam Weinig.

No new tests, as there are no known cases of this happening.

* rendering/RenderInline.cpp:
(WebCore::RenderInline::inlineElementContinuation):
Return nullptr if the continuation is neither a RenderInline nor a
RenderBlock.


  Commit: dd367b1147e9a41df415ec63a9ffa4e9aa6490bf
      https://github.com/WebKit/WebKit/commit/dd367b1147e9a41df415ec63a9ffa4e9aa6490bf
  Author: Filip Pizlo <fpizlo at apple.com>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M Source/JavaScriptCore/ChangeLog
    M Source/JavaScriptCore/dfg/DFGOperations.cpp
    M Source/JavaScriptCore/runtime/JSString.h

  Log Message:
  -----------
  Merge r167544 - Address some feedback on https://bugs.webkit.org/show_bug.cgi?id=130684.

* dfg/DFGOperations.cpp:
* runtime/JSString.h:
(JSC::JSRopeString::RopeBuilder::append):


  Commit: 6f5696cebce42060e3891626d36e97e87002b916
      https://github.com/WebKit/WebKit/commit/6f5696cebce42060e3891626d36e97e87002b916
  Author: Filip Pizlo <fpizlo at apple.com>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M Source/JavaScriptCore/ChangeLog
    M Source/JavaScriptCore/dfg/DFGOperations.cpp
    M Source/JavaScriptCore/runtime/Operations.h
    M Source/WTF/ChangeLog
    M Source/WTF/wtf/CheckedArithmetic.h

  Log Message:
  -----------
  Merge r167548 - Make it easier to check if an integer sum would overflow
https://bugs.webkit.org/show_bug.cgi?id=131900

Reviewed by Darin Adler.

Source/JavaScriptCore:
* dfg/DFGOperations.cpp:
* runtime/Operations.h:
(JSC::jsString):

Source/WTF:
* wtf/CheckedArithmetic.h:
(WTF::checkedSum):
(WTF::sumOverflows):


  Commit: 9e5db6125948846a17698f4adac60ad3a1133124
      https://github.com/WebKit/WebKit/commit/9e5db6125948846a17698f4adac60ad3a1133124
  Author: Alexey Proskuryakov <ap at webkit.org>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/forms/form-submission-crash-2-expected.txt
    A LayoutTests/fast/forms/form-submission-crash-2.html
    A LayoutTests/fast/forms/form-submission-crash-expected.txt
    A LayoutTests/fast/forms/form-submission-crash.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/html/HTMLFormElement.cpp
    M Source/WebCore/loader/FrameLoader.cpp

  Log Message:
  -----------
  Merge r167569 - Crashes in HTMLFormElement::submit.
https://bugs.webkit.org/show_bug.cgi?id=131910
<rdar://problem/15661790>

Source/WebCore:
Based on a patch by Kent Tamura.

Reviewed by Anders Carlsson.

Tests: fast/forms/form-submission-crash-2.html
       fast/forms/form-submission-crash.html

Code that executes arbitrary JS needs to protect objects that it uses afterwards.

* html/HTMLFormElement.cpp:
(WebCore::HTMLFormElement::prepareForSubmission):
(WebCore::HTMLFormElement::submit):
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::submitForm):

LayoutTests:
Reviewed by Anders Carlsson.

* fast/forms/form-submission-crash-2-expected.txt: Added.
* fast/forms/form-submission-crash-2.html: Added.
* fast/forms/form-submission-crash-expected.txt: Added.
* fast/forms/form-submission-crash.html: Added.


  Commit: bb290c1a0b5774d7fef0c24c19d16bf1a54ed222
      https://github.com/WebKit/WebKit/commit/bb290c1a0b5774d7fef0c24c19d16bf1a54ed222
  Author: Brent Fulgham <bfulgham at webkit.org>
  Date:   2014-05-05 (Mon, 05 May 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/table/table-insert-object-before-td-crash-expected.txt
    A LayoutTests/fast/table/table-insert-object-before-td-crash.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/rendering/RenderTable.cpp

  Log Message:
  -----------
  Merge r167672 - Check (rather than assume) element is a RenderTableSection before using it
https://bugs.webkit.org/show_bug.cgi?id=121858

Reviewed by David Kilzer.

Source/WebCore:
Test: fast/table/table-insert-object-before-td-crash.html

* rendering/RenderTable.cpp:
(WebCore::RenderTable::addChild): Check that lastBox is a table section before
using the node as if it was one.

LayoutTests:
* fast/table/table-insert-object-before-td-crash-expected.txt: Added.
* fast/table/table-insert-object-before-td-crash.html: Added.


  Commit: f3339f8be848ca07dea84ef4a34d6b93f7df64fb
      https://github.com/WebKit/WebKit/commit/f3339f8be848ca07dea84ef4a34d6b93f7df64fb
  Author: Žan Doberšek <zdobersek at igalia.com>
  Date:   2014-05-07 (Wed, 07 May 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/network/soup/SocketStreamHandle.h
    M Source/WebCore/platform/network/soup/SocketStreamHandleSoup.cpp

  Log Message:
  -----------
  Merge r168351 - [Soup] Use std::unique_ptr<char[]> for the read buffer in SocketStreamHandle
https://bugs.webkit.org/show_bug.cgi?id=132559

Reviewed by Carlos Garcia Campos.

Manage the read buffer array through a std::unique_ptr<char[]> object.
This avoids handling with the raw pointer and also ensures that the memory
allocated with the new[] operator is deleted with the delete[] operator,
a problem exposed by the AddressSanitizer in WebSocket tests.

* platform/network/soup/SocketStreamHandle.h:
* platform/network/soup/SocketStreamHandleSoup.cpp:
(WebCore::SocketStreamHandle::SocketStreamHandle):
(WebCore::SocketStreamHandle::connected):
(WebCore::SocketStreamHandle::readBytes):
(WebCore::SocketStreamHandle::platformClose):


  Commit: 73e5b369b3563a0c5b78c62d7be03760cbd607aa
      https://github.com/WebKit/WebKit/commit/73e5b369b3563a0c5b78c62d7be03760cbd607aa
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-05-07 (Wed, 07 May 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp
    M Tools/ChangeLog
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestSSL.cpp

  Log Message:
  -----------
  Merge r168417 - [SOUP] TLSErrors do not cause page load to fail when not ignored
https://bugs.webkit.org/show_bug.cgi?id=121548

Reviewed by Sergio Villar Senin.

Source/WebCore:
This only happens in case of redirection, when the initial URL is
an HTTPS site with an invalid certificate, that redirects to
another location. We are starting the redirection without checking
the TLS errors.

* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::sendRequestCallback): Check TLS errors before starting a
possible redirection.

Tools:
Add unit tests to check that the load fails with TLS errors in
case of a redirection.

* TestWebKitAPI/Tests/WebKit2Gtk/TestSSL.cpp:
(testTLSErrorsRedirect):
(httpsServerCallback):
(beforeAll):


  Commit: a7614191efd080de0e23b2ddb8c8b84c7be07285
      https://github.com/WebKit/WebKit/commit/a7614191efd080de0e23b2ddb8c8b84c7be07285
  Author: Alberto Garcia <berto at igalia.com>
  Date:   2014-05-11 (Sun, 11 May 2014)

  Changed paths:
    M Source/JavaScriptCore/ChangeLog
    M Source/JavaScriptCore/inspector/scripts/jsmin.py
    M Source/WebInspectorUI/ChangeLog
    M Source/WebInspectorUI/Scripts/jsmin.py

  Log Message:
  -----------
  Merge r168523 - jsmin.py license header confusing, mentions non-free license
https://bugs.webkit.org/show_bug.cgi?id=123665

Reviewed by Darin Adler.

Pull the most recent version from upstream, which has a clear
license.

Source/JavaScriptCore:
* inspector/scripts/jsmin.py:

Source/WebInspectorUI:
* Scripts/jsmin.py:


  Commit: 25eb6f588830336cb9f73378b473f34627a30bea
      https://github.com/WebKit/WebKit/commit/25eb6f588830336cb9f73378b473f34627a30bea
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-05-12 (Mon, 12 May 2014)

  Changed paths:
    M ChangeLog
    M Source/WebKit/gtk/ChangeLog
    M Source/WebKit/gtk/NEWS
    M Source/autotools/Versions.m4

  Log Message:
  -----------
  Unreviewed. Update NEWS and Versions.m4 for 2.4.2 release.

.:

* Source/autotools/Versions.m4: Bump version numbers.

Source/WebKit/gtk:

* NEWS: Added release notes for 2.4.2.


  Commit: 879cf0141e38a58eec24d02403898a27e392ef6c
      https://github.com/WebKit/WebKit/commit/879cf0141e38a58eec24d02403898a27e392ef6c
  Author: Gustavo Noronha Silva <gns at gnome.org>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Source/WebKit2/CMakeLists.txt
    M Source/WebKit2/PlatformGTK.cmake
    M Source/WebKit2/WebKit2Prefix.h

  Log Message:
  -----------
  Merge 163032 - [GTK] [CMake] Fix the build after r162835
https://bugs.webkit.org/show_bug.cgi?id=127753

Reviewed by Gustavo Noronha Silva.

* CMakeLists.txt: Add support for using the prefix header (GCC / clang only for now)
when WebKit2_USE_PREFIX_HEADER is set to true.
* PlatformGTK.cmake: Set WebKit2_USE_PREFIX_HEADER support and no longer process some message.in files.
* WebKit2Prefix.h: Add support for the CMake GTK+ build.


Conflicts:
	Source/WebKit2/ChangeLog


  Commit: 0e93cc63206aad5b686f97fa2d117237a3f775d1
      https://github.com/WebKit/WebKit/commit/0e93cc63206aad5b686f97fa2d117237a3f775d1
  Author: Gustavo Noronha Silva <gns at gnome.org>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Source/PlatformGTK.cmake
    M Source/WebCore/CMakeLists.txt
    A Tools/gtk/make-dist.py
    A Tools/gtk/manifest.txt

  Log Message:
  -----------
  Merge 163114 - [GTK] [CMake] Add a "make dist" target
https://bugs.webkit.org/show_bug.cgi?id=116378

Reviewed by Gustavo Noronha Silva.

.:

* Source/PlatformGTK.cmake: A CMake support for executing the make-dist
script and then turning the tarfile into a LZMA compressed file.

Source/WebCore:

* CMakeLists.txt: Don't build WebKitVersion.h for WebKitGTK+. We don't use it
and we don't want to distribute the dependency.

Tools:

Added a script that reads a manifest file an produces a tarball. Also add
the manifest.

* gtk/make-dist.py: Added.
* gtk/manifest.txt: Added.


Conflicts:
	ChangeLog
	Source/WebCore/ChangeLog
	Tools/ChangeLog


  Commit: 4d4daf464b7f95b0663faa33ef145687c8e7a380
      https://github.com/WebKit/WebKit/commit/4d4daf464b7f95b0663faa33ef145687c8e7a380
  Author: Gustavo Noronha Silva <gns at gnome.org>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Source/JavaScriptCore/PlatformGTK.cmake
    M Source/WebCore/PlatformGTK.cmake
    M Source/WebKit/PlatformGTK.cmake
    M Source/WebKit2/PlatformGTK.cmake
    M Source/cmake/OptionsGTK.cmake
    M Tools/DumpRenderTree/PlatformGTK.cmake
    M Tools/GtkLauncher/CMakeLists.txt
    M Tools/ImageDiff/PlatformGTK.cmake
    M Tools/TestWebKitAPI/Tests/WebKitGtk/CMakeLists.txt

  Log Message:
  -----------
  Merge 163155 - [GTK] [CMake] Add support for building against GTK+ 2
https://bugs.webkit.org/show_bug.cgi?id=127959

Reviewed by Anders Carlsson.

.:

* Source/cmake/OptionsGTK.cmake: Add a new option to use GTK 2 and make a variable holding the
library API version. When using GTK 2 do not build WebKit 2.

Source/JavaScriptCore:

* PlatformGTK.cmake: Use the new API version variable and don't use GTK3 directly.

Source/WebCore:

* PlatformGTK.cmake: Use the new API version variable and don't use GTK3 directly.

Source/WebKit:

* PlatformGTK.cmake: Use the new API version variable and don't use GTK3 directly.

Source/WebKit2:

* PlatformGTK.cmake: Use the new API version variable and don't use GTK3 directly.

Tools:

* DumpRenderTree/PlatformGTK.cmake: Use the new API version variable and don't use GTK3 directly.
* GtkLauncher/CMakeLists.txt: Ditto.
* ImageDiff/PlatformGTK.cmake: Ditto.
* TestWebKitAPI/Tests/WebKitGtk/CMakeLists.txt: Ditto.


Conflicts:
	ChangeLog
	Source/JavaScriptCore/ChangeLog
	Source/WebCore/ChangeLog
	Source/WebKit/ChangeLog
	Source/WebKit2/ChangeLog
	Tools/ChangeLog


  Commit: abc1ebc69225b46917df6f4e9c934d83d257e070
      https://github.com/WebKit/WebKit/commit/abc1ebc69225b46917df6f4e9c934d83d257e070
  Author: Gustavo Noronha Silva <gns at gnome.org>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Source/WebCore/PlatformGTK.cmake

  Log Message:
  -----------
  Merge 163240 - Unreviewed. Fixed GTK+ CMake build after r162922.

* PlatformGTK.cmake: Removed SoupURIUtils.cpp from the
compilation.


Conflicts:
	Source/WebCore/ChangeLog


  Commit: b385c2dad5276f399b193477c6c18d6d2b44fa2f
      https://github.com/WebKit/WebKit/commit/b385c2dad5276f399b193477c6c18d6d2b44fa2f
  Author: Gustavo Noronha Silva <gns at gnome.org>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Source/WTF/wtf/FeatureDefines.h

  Log Message:
  -----------
  Merge 163339 - [GTK][CMake] Enable SUBPIXEL_LAYOUT in FeatureDefines.h like EFL does
https://bugs.webkit.org/show_bug.cgi?id=128136

Reviewed by Martin Robinson.

* wtf/FeatureDefines.h: enable SUBPIXEL_LAYOUT if it's not set, for GTK+.


Conflicts:
	Source/WTF/ChangeLog


  Commit: 209dbfa415684943d2d65afd879665aa7dd22723
      https://github.com/WebKit/WebKit/commit/209dbfa415684943d2d65afd879665aa7dd22723
  Author: Gustavo Noronha Silva <gns at gnome.org>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Source/WebCore/CMakeLists.txt

  Log Message:
  -----------
  Merge 163379 - [CMAKE] Remove workaround for GCC 4.6
https://bugs.webkit.org/show_bug.cgi?id=128176

Reviewed by Csaba Osztrogonác.

Since r162126, WebKit requires at least 4.7.

* CMakeLists.txt:


Conflicts:
	Source/WebCore/ChangeLog


  Commit: 9a15fc87f09a50e78354416524627ee501be6e54
      https://github.com/WebKit/WebKit/commit/9a15fc87f09a50e78354416524627ee501be6e54
  Author: Gustavo Noronha Silva <gns at gnome.org>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Source/PlatformGTK.cmake
    M Source/WebCore/CMakeLists.txt
    M Source/WebCore/PlatformGTK.cmake
    M Source/WebCore/bindings/gobject/GNUmakefile.am
    A Tools/gtk/check-gdom-symbols

  Log Message:
  -----------
  Merge 164076 - [GTK][CMake] Generate GObject DOM bindings .symbols files
https://bugs.webkit.org/show_bug.cgi?id=126210

Reviewed by Martin Robinson.

.:

* Source/PlatformGTK.cmake: add checking DOM bindings API as a dependency
for documentation generation.

Source/WebCore:

No new tests. Build change only.

* CMakeLists.txt: list Quota module files and IDLs even if the feature
is disabled, for GTK, since we rely on that for our DOM bindings.
* PlatformGTK.cmake: add a new target to check for DOM symbols API by
running the new python script.
* bindings/gobject/GNUmakefile.am: call the new python script instead
of using a custom rule.

Tools:

* gtk/check-gdom-symbols: Added. Checks symbols compatibility.
(should_update_symbols_file):


Conflicts:
	ChangeLog
	Source/WebCore/ChangeLog
	Tools/ChangeLog


  Commit: b2fe53ded69d428886a00439ab445e2fec776759
      https://github.com/WebKit/WebKit/commit/b2fe53ded69d428886a00439ab445e2fec776759
  Author: Gustavo Noronha Silva <gns at gnome.org>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Source/cmake/OptionsCommon.cmake

  Log Message:
  -----------
  Merge 164090 - [GTK] [CMake] JavaScriptCore crashes in JSC::eval
https://bugs.webkit.org/show_bug.cgi?id=128434

Extend a fix for EFL to all ports that use GCC. Also include further fixes
that were applied only to the autotools build.

Reviewed by Gyuyoung Kim.

* Source/cmake/OptionsCommon.cmake: Add -fno-omit-frame-pointer to all ports as well
as -fno-tree-dce, which is necessary for GTK+.
* Source/cmake/OptionsEfl.cmake: The GCC flag additions are now in the common options file.


Conflicts:
	ChangeLog


  Commit: aeef7fda12aeaac06dd3eb756480a208cf15ad44
      https://github.com/WebKit/WebKit/commit/aeef7fda12aeaac06dd3eb756480a208cf15ad44
  Author: Gustavo Noronha Silva <gns at gnome.org>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Source/cmake/OptionsGTK.cmake

  Log Message:
  -----------
  Merge 164257 - [GTK] [CMake] JavaScriptCore crashes in JSC::eval
https://bugs.webkit.org/show_bug.cgi?id=128434

Reviewed by Anders Carlsson.

* Source/cmake/OptionsGTK.cmake: Add -fno-omit-frame-pointer to the GTK+ CMake
port as well as -fno-tree-dce, like it is used in the autotools build.


Conflicts:
	ChangeLog


  Commit: 790ce0db8dc8a35d7b7f30108ab53678e69a9db8
      https://github.com/WebKit/WebKit/commit/790ce0db8dc8a35d7b7f30108ab53678e69a9db8
  Author: Gustavo Noronha Silva <gns at gnome.org>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Tools/DumpRenderTree/PlatformGTK.cmake

  Log Message:
  -----------
  Merge 164559 - [GTK][CMake] Many plugin tests fail when running WebKit1 layout tests
https://bugs.webkit.org/show_bug.cgi?id=129191

Reviewed by Anders Carlsson.

* DumpRenderTree/PlatformGTK.cmake: Properly specify the library build directory
for the GTK+ DumpRenderTree build. We could manually construct this path, but the
name of the directory is "lib" and not "libs". Instead we should use the CMake
variable specifically assigned to this task.


Conflicts:
	Tools/ChangeLog


  Commit: 413ff4341364852438c9d2ac44ac54605925704e
      https://github.com/WebKit/WebKit/commit/413ff4341364852438c9d2ac44ac54605925704e
  Author: Tibor Meszaros <tmeszaros.u-szeged at partner.samsung.com>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Source/WebCore/CMakeLists.txt

  Log Message:
  -----------
  Merge 164586 - [CMake] Get rid of "FIXME: The Blackberry port ..." from WebCore/CmakeLists.txt
https://bugs.webkit.org/show_bug.cgi?id=129152

Patch by Tibor Meszaros <tmeszaros.u-szeged at partner.samsung.com> on 2014-02-24
Reviewed by Gyuyoung Kim.

* CMakeLists.txt:


Conflicts:
	Source/WebCore/ChangeLog


  Commit: 0ad054caff689526e3225351f2ac5f002c6e2106
      https://github.com/WebKit/WebKit/commit/0ad054caff689526e3225351f2ac5f002c6e2106
  Author: Jozsef Berta <jberta.u-szeged at partner.samsung.com>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Source/WebCore/CMakeLists.txt
    M Source/cmake/WebKitMacros.cmake

  Log Message:
  -----------
  Merge 164979 - [cmake] *Names.cpp file should be regenerated after touching StaticString.pm
https://bugs.webkit.org/show_bug.cgi?id=129031

Patch by Jozsef Berta <jberta.u-szeged at partner.samsung.com> on 2014-03-03
Reviewed by Csaba Osztrogonác.

.:

* Source/cmake/WebKitMacros.cmake: Added a call for make_names.pm dependencies in GENERATE_FONT_NAMES and GENERATE_DOM_NAMES macros.

Source/WebCore:

* CMakeLists.txt: Added make_names.pl dependencies: bindings/scripts/Hasher.pm and bindings/scripts/StaticString.pm


Conflicts:
	ChangeLog
	Source/WebCore/ChangeLog


  Commit: 90be851b9776b0843467105ddca7364123d8d4bd
      https://github.com/WebKit/WebKit/commit/90be851b9776b0843467105ddca7364123d8d4bd
  Author: Gustavo Noronha Silva <gns at gnome.org>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Source/cmake/OptionsGTK.cmake

  Log Message:
  -----------
  Merge 165058 - [GTK][CMake] ENABLE_NAVIGATOR_CONTENT_UTILS is mistakenly enabled for the CMake build
https://bugs.webkit.org/show_bug.cgi?id=129502

Reviewed by Carlos Garcia Campos.

* Source/cmake/OptionsGTK.cmake: Disable the option for GTK+.


Conflicts:
	ChangeLog


  Commit: 67d2abf1305348916822084170cbe09e9857aa1e
      https://github.com/WebKit/WebKit/commit/67d2abf1305348916822084170cbe09e9857aa1e
  Author: Gustavo Noronha Silva <gns at gnome.org>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Tools/Scripts/webkitdirs.pm

  Log Message:
  -----------
  Merge 165111 - [GTK][CMake] build-webkit should rerun cmake if the Makefile is missing
https://bugs.webkit.org/show_bug.cgi?id=129380

Reviewed by Philippe Normand.

* Scripts/webkitdirs.pm:
(generateBuildSystemFromCMakeProject): Check for the existence of the Makefile before
skipping CMake execution.


Conflicts:
	Tools/ChangeLog


  Commit: 92a2f3f6ed1a13a7456cceb8bb7500e90d1fa406
      https://github.com/WebKit/WebKit/commit/92a2f3f6ed1a13a7456cceb8bb7500e90d1fa406
  Author: Gustavo Noronha Silva <gns at gnome.org>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Tools/gtk/generate-gtkdoc

  Log Message:
  -----------
  Merge 164560 - [GTK] generate-gtkdoc should use argparse
https://bugs.webkit.org/show_bug.cgi?id=128418

Reviewed by Carlos Garcia Campos.

* gtk/generate-gtkdoc: Get all arguments from argparse, pass then as parameters
to all functions, and guard the main routine with a __name__ == __main__ check.


Conflicts:
	Tools/ChangeLog
	Tools/Scripts/webkitdirs.pm


  Commit: f280155351795b037d61ac594913908fce4c9549
      https://github.com/WebKit/WebKit/commit/f280155351795b037d61ac594913908fce4c9549
  Author: Tibor Meszaros <tmeszaros.u-szeged at partner.samsung.com>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Tools/Scripts/run-gtk-tests
    R Tools/efl/common.py
    M Tools/efl/jhbuildrc
    M Tools/gtk/check-gdom-symbols
    M Tools/gtk/common.py
    M Tools/gtk/find-make-dist-errors
    M Tools/gtk/generate-gtkdoc
    M Tools/gtk/generate-inspector-gresource-manifest.py
    M Tools/gtk/jhbuildrc
    A Tools/jhbuild/jhbuildrc_common.py

  Log Message:
  -----------
  Merge 164585 - Extract common parts from jhbuildrc files.
https://bugs.webkit.org/show_bug.cgi?id=125986

Patch by Tibor Meszaros <tmeszaros.u-szeged at partner.samsung.com> on 2014-02-24
Reviewed by Csaba Osztrogonác.

Co-authored with Peter Szanka <h868064 at stud.u-szeged.hu>.

* Scripts/run-gtk-tests:
(TestRunner._setup_testing_environment):
* efl/common.py: Removed.
* efl/jhbuildrc:
* gtk/check-gdom-symbols:
* gtk/common.py:
(binary_build_path):
(get_build_path):
* gtk/find-make-dist-errors:
(get_missing_headers):
* gtk/generate-gtkdoc:
(get_webkit2_options):
(get_webkit1_options.src_path):
(get_webkit1_options):
(get_webkitdom_options.src_path):
(get_webkitdom_options):
* gtk/generate-inspector-gresource-manifest.py:
* gtk/jhbuildrc:
* jhbuild/jhbuildrc_common.py: Added.
(script_path):
(top_level_path):
(init):


Conflicts:
	Tools/ChangeLog


  Commit: be93cf9a3d05793c8ff51b36d571388c5c62bf73
      https://github.com/WebKit/WebKit/commit/be93cf9a3d05793c8ff51b36d571388c5c62bf73
  Author: Gustavo Noronha Silva <gns at gnome.org>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M GNUmakefile.am
    M Source/WebCore/bindings/gobject/GNUmakefile.am
    M Source/WebKit/PlatformGTK.cmake
    M Source/WebKit/gtk/GNUmakefile.am
    M Source/WebKit2/GNUmakefile.am
    M Source/WebKit2/PlatformGTK.cmake
    M Source/cmake/OptionsGTK.cmake
    M Tools/gtk/GNUmakefile.am
    M Tools/gtk/generate-gtkdoc
    M Tools/gtk/gtkdoc.py

  Log Message:
  -----------
  Merge 164632 - [GTK] generate-gtkdoc should not generate documentation for source files for unbuilt source files
https://bugs.webkit.org/show_bug.cgi?id=128417

Reviewed by Carlos Garcia Campos.

.:

* Source/cmake/OptionsGTK.cmake: Define the paths to the pkgconfig files here, so that they
may one day be used in the webkitdom config file generation.

Source/WebCore:

* bindings/gobject/GNUmakefile.am: Generate a config file for webkitdom documentation generation.

Source/WebKit:

* PlatformGTK.cmake: Correct the definition of WebKitGTK_ENUM_GENERATION_HEADERS and generate
a gtkdoc-webkitgtk.cfg file to be used by generate-gtkdoc.

Source/WebKit/gtk:

* GNUmakefile.am: Generate a config file for generate-gtkdoc.

Source/WebKit2:

* GNUmakefile.am: Generate a config file for generate-gtkdoc.
* PlatformGTK.cmake: Ditto.

Tools:

* gtk/GNUmakefile.am: Make the documentation process depend on the configuration files.
* gtk/generate-gtkdoc: Switch from using hard-coded configurations to reading them from
a makefile. This allows accepting a header list from the build system, which can be used
to dynamically build a list of ignored files. We can ignore any source file that doesn't
have a corresponding header file on the header list.
* gtk/gtkdoc.py: Now accept a headers parameter, which can be used instead of passing just
source directories to gtkdoc-scan.


Conflicts:
	ChangeLog
	Source/WebCore/ChangeLog
	Source/WebKit/ChangeLog
	Source/WebKit/gtk/ChangeLog
	Source/WebKit2/ChangeLog
	Tools/ChangeLog


  Commit: 70d2af0098b3d49355dcdfef76542eff427995a5
      https://github.com/WebKit/WebKit/commit/70d2af0098b3d49355dcdfef76542eff427995a5
  Author: Martin Robinson <mrobinson at igalia.com>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Source/WebKit/gtk/GNUmakefile.am
    M Source/WebKit2/GNUmakefile.am
    M Tools/gtk/generate-gtkdoc

  Log Message:
  -----------
  Merge 164704 - [GTK] generate-gtkdoc can fail with WebKit1 or WebKit2 only builds
https://bugs.webkit.org/show_bug.cgi?id=129319

Patch by Martin Robinson <mrobinson at igalia.com> on 2014-02-26
Reviewed by Carlos Garcia Campos.

Source/WebKit/gtk:

* GNUmakefile.am: Do not generate the documentation configuration file if the port
is disabled.

Source/WebKit2:

* GNUmakefile.am: Do not generate the documentation configuration file if the port
is disabled.

Tools:

* gtk/generate-gtkdoc:
(get_generator_for_config): Properly handle the situation where the pkgconfig file is missing.


Conflicts:
	Source/WebKit/gtk/ChangeLog
	Source/WebKit2/ChangeLog
	Tools/ChangeLog


  Commit: 9e5bac76db22228c2065971da2d4ad0d60b179ab
      https://github.com/WebKit/WebKit/commit/9e5bac76db22228c2065971da2d4ad0d60b179ab
  Author: Gustavo Noronha Silva <gns at gnome.org>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Tools/Scripts/run-gtk-tests
    M Tools/gtk/check-gdom-symbols
    M Tools/gtk/common.py
    M Tools/gtk/find-make-dist-errors
    M Tools/gtk/generate-inspector-gresource-manifest.py

  Log Message:
  -----------
  Merge 164739 - [GTK] Reduplicate common.top_level_path in scripts
https://bugs.webkit.org/show_bug.cgi?id=129291

Reviewed by Philippe Normand.

Duplicate common.top_level_path and avoid polluting many scripts with awkward system
path manipulation and weird dependencies on the jhbuild infrastructure.

* Scripts/run-gtk-tests: Use common again.
(TestRunner._setup_testing_environment): Ditto.
* gtk/check-gdom-symbols: Ditto.
* gtk/common.py:
(top_level_path): Re-add top_level_path..
(get_build_path): Use the builtin top_level_path again.
* gtk/find-make-dist-errors: Use common again.
(get_missing_headers): Ditto.
* gtk/generate-inspector-gresource-manifest.py: Ditto.


Conflicts:
	Tools/ChangeLog


  Commit: 671ed9c0ed86acbc1e3a329efd429d3626508857
      https://github.com/WebKit/WebKit/commit/671ed9c0ed86acbc1e3a329efd429d3626508857
  Author: Gustavo Noronha Silva <gns at gnome.org>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Source/PlatformGTK.cmake
    M Source/WebCore/GNUmakefile.am
    M Source/WebCore/PlatformGTK.cmake
    M Source/WebCore/bindings/gobject/GNUmakefile.am
    R Source/WebCore/bindings/scripts/gobject-run-api-break-test
    M Tools/GNUmakefile.am
    M Tools/gtk/GNUmakefile.am
    A Tools/gtk/check-for-webkitdom-api-breaks
    R Tools/gtk/check-gdom-symbols
    A Tools/gtk/webkitdom.py

  Log Message:
  -----------
  Merge 165060 - [GTK] Simplify the GObject DOM bindings API break check into one step
https://bugs.webkit.org/show_bug.cgi?id=129571

Reviewed by Carlos Garcia Campos.

.:

* Source/PlatformGTK.cmake: We don't need to run the API break check before gtkdoc generation.
Add the check to 'make check.'

Source/WebCore:

* bindings/gobject/GNUmakefile.am: We no longer generate the webkitdom.symbols file in the
DerivedSources directory. All the logic is handled internally in the script now.
* bindings/scripts/gobject-run-api-break-test: Removed.

Tools:

* GNUmakefile.am: Add the API break check to 'make check.'
* gtk/check-for-webkitdom-api-breaks: Added. A combination of the two removed scripts.
* gtk/check-gdom-symbols: Removed.
* gtk/webkitdom.py: Added.
(header_name_list_from_gtkdoc_config_file): Gets the names of all headers from the gtkdoc config file.
(get_all_webkitdom_symbol_files): Find the symbol files from the names.


Conflicts:
	ChangeLog
	Source/WebCore/ChangeLog
	Tools/ChangeLog


  Commit: 1f57095f76d2e817fa694f85271bd65ec604e1f6
      https://github.com/WebKit/WebKit/commit/1f57095f76d2e817fa694f85271bd65ec604e1f6
  Author: Gustavo Noronha Silva <gns at gnome.org>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Source/WebCore/PlatformGTK.cmake
    M Source/WebKit/PlatformGTK.cmake
    M Source/WebKit2/PlatformGTK.cmake
    M Tools/gtk/GNUmakefile.am
    M Tools/gtk/generate-gtkdoc
    R Tools/gtk/generate-webkitdom-doc-files
    M Tools/gtk/webkitdom.py

  Log Message:
  -----------
  Merge 165114 - [GTK][CMake] Generate documentation for the DOM bindings
https://bugs.webkit.org/show_bug.cgi?id=126211

Reviewed by Carlos Garcia Campos.

Source/WebCore:

* PlatformGTK.cmake: Add some files to the GObjectDOMBindings build, so that the
doc generation succeeds. Have the GObjectDOMBindings_INSTALLED_HEADERS variable contain
all installed headers and use another variable for GIR generation. Create the configuration
file for the gtkdoc generation.

Source/WebKit:

* PlatformGTK.cmake: The list of headers for GIR generation has a better name
now.

Source/WebKit2:

* PlatformGTK.cmake: The list of headers for GIR generation has a better name now.

Tools:

* gtk/GNUmakefile.am: No longer generation sections and SGML files in the makefile.
* gtk/generate-gtkdoc: Call the code from webkitdom.py to generate sections and SGML files.
* gtk/generate-webkitdom-doc-files: Removed.
* gtk/webkitdom.py: Moved WebKit GObject DOM bindings doc generation code here, so
that it can be called by generate-gtkdoc.


Conflicts:
	Source/WebCore/ChangeLog
	Source/WebKit/ChangeLog
	Source/WebKit2/ChangeLog
	Tools/ChangeLog


  Commit: 385ad0d84adc3ed97040e36b585cdf6fcb7846cb
      https://github.com/WebKit/WebKit/commit/385ad0d84adc3ed97040e36b585cdf6fcb7846cb
  Author: Gustavo Noronha Silva <gns at gnome.org>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Source/cmake/OptionsCommon.cmake
    M Source/cmake/OptionsEfl.cmake
    M Source/cmake/OptionsGTK.cmake

  Log Message:
  -----------
  Merge 165149 - [CMake] Use thin archives if building on Linux for non-shared-core debug builds
https://bugs.webkit.org/show_bug.cgi?id=108330

Reviewed by Martin Robinson.

In order to get non-shared debug builds, this patch applied T option for
thin archives to the flags passed to ar when cmake based ports build on linux.
In addition, applied u option which avoids adding a file twice.

* Source/cmake/OptionsCommon.cmake: Moved archive options from OptionsGTK.cmake.
* Source/cmake/OptionsEfl.cmake:
Removed error messages for non-shared-core debug builds.
* Source/cmake/OptionsGTK.cmake: Moved archive options to OptionsCommon.cmake.


Conflicts:
	ChangeLog
	Source/cmake/OptionsCommon.cmake


  Commit: d3dd6de8d789688a825489d234ca82e04bfb5f60
      https://github.com/WebKit/WebKit/commit/d3dd6de8d789688a825489d234ca82e04bfb5f60
  Author: Gustavo Noronha Silva <gns at gnome.org>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Source/WebCore/PlatformGTK.cmake

  Log Message:
  -----------
  Merge 165166 - [GTK][CMake] The GObject DOM bindings should always be built
https://bugs.webkit.org/show_bug.cgi?id=127963

Reviewed by Ryosuke Niwa.

* PlatformGTK.cmake: Make compilation of the WebKitGTK+ GObject DOM bindings
unconditional, instead of conditional on the WebKit2 build.


Conflicts:
	Source/WebCore/ChangeLog
	Source/WebCore/PlatformGTK.cmake


  Commit: a08ff5f7f06a9ef99ba711f41a279be6763104ff
      https://github.com/WebKit/WebKit/commit/a08ff5f7f06a9ef99ba711f41a279be6763104ff
  Author: Gustavo Noronha Silva <gns at gnome.org>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Source/cmake/OptionsCommon.cmake

  Log Message:
  -----------
  Merge 165173 - [CMake] Ninja generator builds fail with "Argument list too long"
https://bugs.webkit.org/show_bug.cgi?id=129771

Reviewed by Daniel Bates.

* Source/cmake/OptionsCommon.cmake: Work around a bug in the Ninja CMake generator,
by forcing the use of response files.


Conflicts:
	ChangeLog


  Commit: 573b03ceba7d1b4894a13a694051e019b4c28f95
      https://github.com/WebKit/WebKit/commit/573b03ceba7d1b4894a13a694051e019b4c28f95
  Author: Gustavo Noronha Silva <gns at gnome.org>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Tools/gtk/make-dist.py

  Log Message:
  -----------
  Merge 165174 - [GTK][CMake] Tarball is created with wrong tarball paths
https://bugs.webkit.org/show_bug.cgi?id=129496

Reviewed by Daniel Bates.

* gtk/make-dist.py:
(Manifest.__init__): I inadvertently inverted the logic of these checks when
landing the original patch with some suggestions from the reviewer. With the
checks corrected, the tarball path is constructed properly.


Conflicts:
	Tools/ChangeLog


  Commit: bef758841cabde42900eddb3224552d36cc2143d
      https://github.com/WebKit/WebKit/commit/bef758841cabde42900eddb3224552d36cc2143d
  Author: Lorenzo Tilve <ltilve at igalia.com>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Source/WebCore/CMakeLists.txt

  Log Message:
  -----------
  Merge 165192 - [GTK][CMake] Fix the GTK+ CMake build
https://bugs.webkit.org/show_bug.cgi?id=129801

Patch by Lorenzo Tilve <ltilve at igalia.com> on 2014-03-06
Reviewed by Martin Robinson.

Include missing files for CMake build

* CMakeLists.txt: Add a missing references to DOMURLMediaStream


Conflicts:
	Source/WebCore/ChangeLog


  Commit: 344370e4459d761405088e52b96287aa38c3bab9
      https://github.com/WebKit/WebKit/commit/344370e4459d761405088e52b96287aa38c3bab9
  Author: Gustavo Noronha Silva <gns at gnome.org>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Tools/Scripts/webkitdirs.pm

  Log Message:
  -----------
  Merge 165263 - [CMake] [GTK] Build with ninja when it is available
https://bugs.webkit.org/show_bug.cgi?id=129805

Reviewed by Philippe Normand.

* Scripts/webkitdirs.pm:
(canUseNinja): Added this helper which tries to execute Ninja, in an effort to determine
if it's available on the system.
(cmakeGeneratedBuildfile): Return the path to the generated build file. Only Unix support ATM.
(generateBuildSystemFromCMakeProject): For GTK+ compile with Ninja when possible.


Conflicts:
	Tools/ChangeLog


  Commit: 19a07a68f87707f819761503d02f24f7d2dfc811
      https://github.com/WebKit/WebKit/commit/19a07a68f87707f819761503d02f24f7d2dfc811
  Author: Gustavo Noronha Silva <gns at gnome.org>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Source/WebCore/PlatformGTK.cmake
    M Source/WebKit/PlatformGTK.cmake
    M Source/WebKit2/PlatformGTK.cmake
    M Source/cmake/OptionsGTK.cmake

  Log Message:
  -----------
  Merge 165378 - [GTK] [CMake] Clean up library linking
https://bugs.webkit.org/show_bug.cgi?id=129782

Reviewed by Philippe Normand.

.:

* Source/cmake/OptionsGTK.cmake: Add a macro to wrap all libraries in a list with --whole-archive
so that unused symbols are not dropped. This is useful when building up shared libraries
from convenience libraries.

Source/WebCore:

* PlatformGTK.cmake: Some files are duplicated on the source list of two convenience
libraries. Ensure that they are all compiled into WebCore instead of WebCorePlatformGTK.
Some simply need to be moved to WebCore from WebCorePlatformGTK. Don't try to link
WebCorePlatformGTK against WebCore -- convenience libraries should be able to save
their symbol resolution for the final linking step.

Source/WebKit:

* PlatformGTK.cmake: Use the new macro.

Source/WebKit2:

* PlatformGTK.cmake: Use the new macro.


Conflicts:
	ChangeLog
	Source/WebCore/ChangeLog
	Source/WebKit/ChangeLog
	Source/WebKit2/ChangeLog


  Commit: b4bf116f2cd8b7ba030f949cacaff69cec5d2b38
      https://github.com/WebKit/WebKit/commit/b4bf116f2cd8b7ba030f949cacaff69cec5d2b38
  Author: Gustavo Noronha Silva <gns at gnome.org>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Source/PlatformGTK.cmake

  Log Message:
  -----------
  Merge 165386 - [GTK][CMAKE] gtk-doc HTML documentation is generated by default when building with CMake
https://bugs.webkit.org/show_bug.cgi?id=130016

Reviewed by Carlos Garcia Campos.

* Source/PlatformGTK.cmake: Add two gtkdoc targets, one which builds HTML and one which
doesn't. Add the non-HTML version to the default target, but not the HTML version. The
HTML version will still run when building the distribution tarball.


Conflicts:
	ChangeLog


  Commit: 31e38c222e66fc0f0d7d4d282cc60e9992e7baf7
      https://github.com/WebKit/WebKit/commit/31e38c222e66fc0f0d7d4d282cc60e9992e7baf7
  Author: Gustavo Noronha Silva <gns at gnome.org>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Source/WebKit/PlatformGTK.cmake
    M Source/WebKit2/PlatformGTK.cmake

  Log Message:
  -----------
  Merge 165437 - [GTK][CMake] Add HARFBUZZ_INCLUDE_DIRS to WebKit and WebKit2
https://bugs.webkit.org/show_bug.cgi?id=130070

Reviewed by Martin Robinson.

Source/WebKit:

* PlatformGTK.cmake:

Source/WebKit2:

* PlatformGTK.cmake:


Conflicts:
	Source/WebKit/ChangeLog
	Source/WebKit2/ChangeLog


  Commit: 33274b2f8a7378f4e70923802f3088090a1c70d8
      https://github.com/WebKit/WebKit/commit/33274b2f8a7378f4e70923802f3088090a1c70d8
  Author: Gustavo Noronha Silva <gns at gnome.org>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Tools/efl/jhbuildrc
    M Tools/gtk/jhbuildrc
    M Tools/jhbuild/jhbuildrc_common.py

  Log Message:
  -----------
  Merge 165452 - [GTK] The jhbuild environment should set CMAKE_PREFIX_PATH and CMAKE_LIBRARY_PATH
https://bugs.webkit.org/show_bug.cgi?id=130064

Reviewed by Philippe Normand.

* efl/jhbuildrc: Remove duplicated code.
* gtk/jhbuildrc: Remove duplicated code.
* jhbuild/jhbuildrc_common.py:
(init): Move duplicated code from jhbuildrc's and extend setting CMake environment variables to
GTK+. We always set the CMAKE_LIBRARY_PATH, which should be harmless for EFL 32-bit systems.
and is apparently necessary for GTK+.


Conflicts:
	Tools/ChangeLog


  Commit: fbf02815ddba75baaf87adf2aab297053268bcc6
      https://github.com/WebKit/WebKit/commit/fbf02815ddba75baaf87adf2aab297053268bcc6
  Author: Gustavo Noronha Silva <gustavo.noronha at collabora.com>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Tools/Scripts/webkitdirs.pm

  Log Message:
  -----------
  Merge 165457 - [GTK][CMake] --update-gtk has no effect
https://bugs.webkit.org/show_bug.cgi?id=130088

Patch by Gustavo Noronha Silva <gustavo.noronha at collabora.com> on 2014-03-11
Reviewed by Philippe Normand.

* Scripts/webkitdirs.pm:
(buildCMakeProjectOrExit): call update-webkitgtk-libs if --update-gtk has been passed
as an argument.


Conflicts:
	Tools/ChangeLog


  Commit: 24e3a94519fac07a192eb903882967b4f5499ae5
      https://github.com/WebKit/WebKit/commit/24e3a94519fac07a192eb903882967b4f5499ae5
  Author: Gustavo Noronha Silva <gns at gnome.org>
  Date:   2014-05-13 (Tue, 13 May 2014)

  Changed paths:
    M Source/cmake/OptionsGTK.cmake
    M Tools/Scripts/webkitdirs.pm

  Log Message:
  -----------
  Merge 165473 - [GTK][CMAKE] Too verbose build output
https://bugs.webkit.org/show_bug.cgi?id=130076

Reviewed by Carlos Garcia Campos.

.:

* Source/cmake/OptionsGTK.cmake: Generate a script which does the actual build. This
works around an issue where cmake --build doesn't support ninja's pretty printing.

Tools:

Instead of building with cmake --build which isn't smart about pretty printing and
colors, we build with a script which calls the proper build command.

* Scripts/webkitdirs.pm:
(buildCMakeGeneratedProject): For GTK+ call the script that we generate during
the CMake configuration pass.


Conflicts:
	ChangeLog
	Tools/ChangeLog


  Commit: 9048f58b2a23483eb06593c8772d87a67d23bb7c
      https://github.com/WebKit/WebKit/commit/9048f58b2a23483eb06593c8772d87a67d23bb7c
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-05-22 (Thu, 22 May 2014)

  Changed paths:
    M Tools/ChangeLog
    M Tools/Scripts/webkitdirs.pm

  Log Message:
  -----------
  Unreviewed. Fix the build after r168707.

* Scripts/webkitdirs.pm:
(buildAutotoolsProject): Fix merge conflicts not handled in r168707.


  Commit: 9b889e776fb28d1d5fb279697a7cc5c7149a2fed
      https://github.com/WebKit/WebKit/commit/9b889e776fb28d1d5fb279697a7cc5c7149a2fed
  Author: Myles C. Maxfield <mmaxfield at apple.com>
  Date:   2014-05-22 (Thu, 22 May 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/editing/pasteboard/drag-drop-paragraph-crasher-expected.txt
    A LayoutTests/editing/pasteboard/drag-drop-paragraph-crasher.html
    M LayoutTests/platform/mac-wk2/TestExpectations
    M Source/WebCore/ChangeLog
    M Source/WebCore/editing/ReplaceSelectionCommand.cpp

  Log Message:
  -----------
  Merge r168460 - Dragging text from one paragraph to another does not render as expected
https://bugs.webkit.org/show_bug.cgi?id=132633

Reviewed by Darin Adler and Ryosuke Niwa.

Source/WebCore:
When we are dragging and dropping into a content editable field, we detect
if we are trying to put a <p> into an existing <p>, and if so, split the
outer <p> and insert the new <p> as its sibling. However, the outer <p>
might not be editable, so we don't want to do any splitting and inserting
at that location.

Test: editing/pasteboard/drag-drop-paragraph-crasher.html

* editing/ReplaceSelectionCommand.cpp:
(WebCore::ReplaceSelectionCommand::makeInsertedContentRoundTrippableWithHTMLTreeBuilder):

LayoutTests:
The problem occurs when dragging text that includes a <p> into an editable
area that has a <p> as a parent.

* editing/pasteboard/drag-drop-paragraph-crasher-expected.txt: Added.
* editing/pasteboard/drag-drop-paragraph-crasher.html: Added.


  Commit: 2d3509479de61ed3fd0390da595d563de77258c8
      https://github.com/WebKit/WebKit/commit/2d3509479de61ed3fd0390da595d563de77258c8
  Author: Mark Lam <mark.lam at apple.com>
  Date:   2014-05-22 (Thu, 22 May 2014)

  Changed paths:
    M Source/JavaScriptCore/ChangeLog
    M Source/JavaScriptCore/jit/JITOperations.cpp

  Log Message:
  -----------
  Merge r169094 - operationOptimize() should defer the GC for a while.
<https://webkit.org/b/133103>

Reviewed by Filip Pizlo.

Currently, operationOptimize() only defers the GC until its end.  As a result,
a GC may be triggered just before we return from operationOptimize(), and it may
jettison the optimize codeBlock that we're planning to OSR enter into when we
return from this function.  This is because the OSR entry on-ramp code hasn't
been executed yet, and hence, there is not yet a reference to this new codeBlock
from the stack, and there won't be until we've had a chance to return out of
operationOptimize() to run the OSR entry on-ramp code.

This issue is now fixed by using DeferGCForAWhile instead of DeferGC.  This
ensures that the GC will be deferred until after the OSR entry on-ramp can be
executed.

* jit/JITOperations.cpp:


  Commit: ff81d821fae5fe065b8e0a9e2469218dbcccb894
      https://github.com/WebKit/WebKit/commit/ff81d821fae5fe065b8e0a9e2469218dbcccb894
  Author: Milan Crha <mcrha at redhat.com>
  Date:   2014-05-22 (Thu, 22 May 2014)

  Changed paths:
    M ChangeLog
    M Source/autotools/ReadCommandLineArguments.m4

  Log Message:
  -----------
  [Stable] Typo in ReadCommandLineArguments.m4
https://bugs.webkit.org/show_bug.cgi?id=132816

Patch by Milan Crha <mcrha at redhat.com> on 2014-05-22
Reviewed by Carlos Garcia Campos.

* Source/autotools/ReadCommandLineArguments.m4:


  Commit: de63573447e63a940143bfc1a57a1c360d8c688b
      https://github.com/WebKit/WebKit/commit/de63573447e63a940143bfc1a57a1c360d8c688b
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-05-22 (Thu, 22 May 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp
    M Tools/ChangeLog
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestResources.cpp
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp

  Log Message:
  -----------
  Merge r169112 - [GTK] WebKitWebPage::send-request always pass a valid pointer for redirected response
https://bugs.webkit.org/show_bug.cgi?id=133119

Reviewed by Sergio Villar Senin.

Source/WebKit2:
The problem is that we were checking whether the passed in
WKURLResponseRef is NULL or not, but it's always a valid object
that can contain a NULL WebCore::ResourceResponse.

* WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
(willSendRequestForFrame): Pass NULL as redirect-response
parameter of WebKitWebPage::send-request signal when the
WebCore::ResourceResponse of the passed in WKURLResponseRef is NULL.

Tools:
Check that redirect response parameter of
WebKitWebPage::send-request signal is NULL when not redirecting
and a valid WebKitURIResponse object when redirecting.

* TestWebKitAPI/Tests/WebKit2Gtk/TestResources.cpp:
(testWebResourceSendRequest):
(serverCallback):
* TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp:
(sendRequestCallback):


  Commit: 1772a19657e07bb264c97cca1bbfb836c2e94bf3
      https://github.com/WebKit/WebKit/commit/1772a19657e07bb264c97cca1bbfb836c2e94bf3
  Author: Victor Jaquez <vjaquez at igalia.com>
  Date:   2014-05-22 (Thu, 22 May 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/graphics/gstreamer/GStreamerUtilities.cpp
    M Source/WebCore/platform/graphics/gstreamer/ImageGStreamer.h
    M Source/WebCore/platform/graphics/gstreamer/ImageGStreamerCairo.cpp
    M Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp
    M Source/WebCore/platform/graphics/gstreamer/VideoSinkGStreamer.cpp

  Log Message:
  -----------
  Merge r168060 - [GStreamer] Use GstMetaVideo
https://bugs.webkit.org/show_bug.cgi?id=132247

Reviewed by Philippe Normand.

In WebKitVideoSink we announce the usage of GstMetaVideo, but we do
not use it when handling the video frames. This might break
some decoders and filters that rely on buffer's meta, rather
that in the caps structures.

This patch enables the use of GstMetaVideo through the GstVideoFrame
API. And it is used everywhere the buffer mapping is required.

Also this patch changes to nullptr where zeros were used.

Also, compile conditionally the video buffer conversion when it is
ARGB/BGRA, since it is only required for the Cairo backend.

No new tests, already covered by current tests.

* platform/graphics/gstreamer/GStreamerUtilities.cpp:
(WebCore::getVideoSizeAndFormatFromCaps): init the GstVideoInfo before
used and remove caps fixate check since it is done by
gst_video_info_from_caps().
* platform/graphics/gstreamer/ImageGStreamer.h:
* platform/graphics/gstreamer/ImageGStreamerCairo.cpp:
(ImageGStreamer::ImageGStreamer): use GstVideoFrame for buffer mapping
and unmapping.
(ImageGStreamer::~ImageGStreamer): ditto.
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::updateTexture): ditto.
(WebCore::MediaPlayerPrivateGStreamerBase::currentVideoSinkCaps):
return nullptr if failed.
* platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
(webkitVideoSinkRender): rely on GstVideoInfo rather than on the
caps. Use GstVideoFrame for buffer mapping and unmapping. Add guards
for buffer transformation, since it's only used by Cairo.
(webkitVideoSinkDispose): remove glib version guards.
(webkitVideoSinkSetCaps): update the value of the private
GstVideoInfo.


  Commit: 913401cbbf4ed481c5ff8736c2bba55309024f5d
      https://github.com/WebKit/WebKit/commit/913401cbbf4ed481c5ff8736c2bba55309024f5d
  Author: Piotr Grad <p.grad at samsung.com>
  Date:   2014-05-26 (Mon, 26 May 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/media/video-paused-0-rate-expected.txt
    A LayoutTests/media/video-paused-0-rate.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp
    M Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h

  Log Message:
  -----------
  Merge r169200 - Video is resumed with old playback rate.
https://bugs.webkit.org/show_bug.cgi?id=132905

Patch by Piotr Grad <p.grad at samsung.com> on 2014-05-22
Reviewed by Philippe Normand.

Source/WebCore:
Setting '0' playback rate is causing pipeline to pause.
GStreamer player impl. exposed this information to upper layers but it should not.
Solution is to hidden such situation behind m_playbackRatePause flag.

Test: media/video-paused-0-rate.html

* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
(WebCore::MediaPlayerPrivateGStreamer::play):
(WebCore::MediaPlayerPrivateGStreamer::pause):
(WebCore::MediaPlayerPrivateGStreamer::doSeek):
(WebCore::MediaPlayerPrivateGStreamer::updatePlaybackRate):
(WebCore::MediaPlayerPrivateGStreamer::paused):
(WebCore::MediaPlayerPrivateGStreamer::setRate):
(WebCore::MediaPlayerPrivateGStreamer::updateStates):
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:

LayoutTests:
* media/video-paused-0-rate-expected.txt: Added.
* media/video-paused-0-rate.html: Added.


  Commit: 3c154f85b135c40b08215fd52a030455e1bd23a0
      https://github.com/WebKit/WebKit/commit/3c154f85b135c40b08215fd52a030455e1bd23a0
  Author: Milan Crha <mcrha at redhat.com>
  Date:   2014-05-26 (Mon, 26 May 2014)

  Changed paths:
    M Source/WTF/ChangeLog
    M Source/WTF/GNUmakefile.list.am
    M Source/WebCore/ChangeLog
    M Source/WebCore/GNUmakefile.list.am
    M Source/WebCore/platform/graphics/win/GraphicsContextCairoWin.cpp

  Log Message:
  -----------
  [Stable] [GTK] GdiObject.h missing in WebKitGTK 2.4.1 tarball
https://bugs.webkit.org/show_bug.cgi?id=132814

Patch by Milan Crha <mcrha at redhat.com> on 2014-05-25
Reviewed by Carlos Garcia Campos.

Source/WebCore:

Add missing files and includes to fix the mingw32 build.

* GNUmakefile.list.am:
* platform/graphics/win/GraphicsContextCairoWin.cpp:

Source/WTF:

Add missing files to fix the mingw32 build.

* GNUmakefile.list.am:


  Commit: f208d101cb8bfa379445188fee57675593075feb
      https://github.com/WebKit/WebKit/commit/f208d101cb8bfa379445188fee57675593075feb
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-05-26 (Mon, 26 May 2014)

  Changed paths:
    M Tools/ChangeLog
    M Tools/gtk/GNUmakefile.am
    M Tools/gtk/generate-gtkdoc

  Log Message:
  -----------
  Unreviewed. Fix make distcheck.

* gtk/GNUmakefile.am: Remove generate-webkitdom-doc-files from
EXTRA_DIST and add webkitdom.py.
* gtk/generate-gtkdoc:
(generate_documentation_for_config): Do not try to use
generator.saw_warnings when rebasing, it's only set when
generating the docs.


  Commit: 9338908f7537c5d33ee60833acbc1cedc0729156
      https://github.com/WebKit/WebKit/commit/9338908f7537c5d33ee60833acbc1cedc0729156
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-05-26 (Mon, 26 May 2014)

  Changed paths:
    M ChangeLog
    M Source/WebKit/gtk/ChangeLog
    M Source/WebKit/gtk/NEWS
    M Source/autotools/Versions.m4

  Log Message:
  -----------
  Unreviewed. Update NEWS and Versions.m4 for 2.4.3 release.

.:

* Source/autotools/Versions.m4: Bump version numbers.

Source/WebKit/gtk:

* NEWS: Added release notes for 2.4.3.


  Commit: c01c3201e2a6e833b4225416d72f63d7d68c7f8b
      https://github.com/WebKit/WebKit/commit/c01c3201e2a6e833b4225416d72f63d7d68c7f8b
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-05-27 (Tue, 27 May 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/WebProcess/WebProcess.cpp
    M Tools/ChangeLog
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestMultiprocess.cpp

  Log Message:
  -----------
  Rollout r166161 - Unreviewed. Race condition when closing pages with network process enabled


  Commit: 217fea75f142869d31bff9f89ae51fe47dfb7fe2
      https://github.com/WebKit/WebKit/commit/217fea75f142869d31bff9f89ae51fe47dfb7fe2
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-05-27 (Tue, 27 May 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/Platform/IPC/Connection.h
    M Source/WebKit2/Platform/IPC/unix/ConnectionUnix.cpp
    M Source/WebKit2/UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp
    M Tools/ChangeLog
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestMultiprocess.cpp

  Log Message:
  -----------
  Merge r169352 - [GTK] WebProcess leaked when closing pages with network process enabled
https://bugs.webkit.org/show_bug.cgi?id=129684

Reviewed by Anders Carlsson.

Source/WebKit2:
The problem is that the web process is not notified when the UI
process closes the connection, because when close() is called on
the socket by the UI process, the socket is shared by another web
process launched later, preventing the connection from being
shut down. We need to set the CLOEXEC flag on the sockets file
descriptor to make sure they are not exposed to other processes.

* Platform/IPC/Connection.h: Add ConnectionOptions parameter to
createPlatformConnection() with a default value compatible with
existing callers.
* Platform/IPC/unix/ConnectionUnix.cpp:
(IPC::Connection::createPlatformConnection): Set the CLOEXEC flag
on the client and server socket file descriptors depending on the
options passed.
* UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:
(WebKit::ProcessLauncher::launchProcess): Use
IPC::Connection::createPlatformConnection() instead of
socketpair() directly, setting the CLOEXEC flag on the server
before spawning the new process and on the client right after
spawning the new process.

Tools:
Enable the test to check that web processes finish when the web
view is destroyed.

* TestWebKitAPI/Tests/WebKit2Gtk/TestMultiprocess.cpp:


  Commit: 211a5a958937ce7cb0e19e5536459ba4e9947fd7
      https://github.com/WebKit/WebKit/commit/211a5a958937ce7cb0e19e5536459ba4e9947fd7
  Author: Sergio Villar Senin <svillar at igalia.com>
  Date:   2014-06-16 (Mon, 16 Jun 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/gtk/UserAgentGtk.cpp
    M Tools/ChangeLog
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitSettings.cpp
    M Tools/TestWebKitAPI/Tests/WebKitGtk/testwebsettings.c

  Log Message:
  -----------
  [Gtk] [Stable] Fix the "Safari" part of the UA
https://bugs.webkit.org/show_bug.cgi?id=133855

Reviewed by Martin Robinson.

Source/WebCore:

We claim to be Safari (among others) to ensure maximum
compatibility with existing web sites. Since Safari 3.0 valid
Safari UA strings look like this "Version/X Safari/Y" while in our
UA it's "Safari/Y Version/6.0".

This is wrong and is causing "unsupported browser" issues in
many important sites as live.com our icloud.com.

Apart from that I'm bumping the Safari Version in the UA to 8.0 as
we're already claiming to be "Safari/538.15" which should be
pretty equivalent to Safari 8 in terms of features.

* platform/gtk/UserAgentGtk.cpp:
(WebCore::standardUserAgent):

Tools:

Added a couple of tests to verify that the Safari part of our UA
looks like "Version/X Safari/Y" instead of "Safari/Y Version/X"
which is causing "unsupported browser" issues.

* TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitSettings.cpp:
(testWebKitSettingsUserAgent):
* TestWebKitAPI/Tests/WebKitGtk/testwebsettings.c:
(test_webkit_web_settings_user_agent):


  Commit: d890643b42953b26d08835895de261afa48493ca
      https://github.com/WebKit/WebKit/commit/d890643b42953b26d08835895de261afa48493ca
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-07-01 (Tue, 01 Jul 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/gtk/UserAgentGtk.cpp
    M Source/WebCore/platform/gtk/UserAgentGtk.h
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/API/gtk/WebKitSettings.cpp
    M Source/WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp
    M Source/WebKit2/WebProcess/WebPage/WebPage.cpp
    M Source/WebKit2/WebProcess/WebPage/WebPage.h
    M Source/WebKit2/WebProcess/WebPage/efl/WebPageEfl.cpp
    M Source/WebKit2/WebProcess/WebPage/gtk/WebPageGtk.cpp
    M Source/WebKit2/WebProcess/WebPage/ios/WebPageIOS.mm
    M Tools/ChangeLog
    M Tools/TestWebKitAPI/GNUmakefile.am
    A Tools/TestWebKitAPI/Tests/WebCore/gtk/UserAgentQuirks.cpp
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitSettings.cpp

  Log Message:
  -----------
  Merge r169799 - [GTK] Use a different user agent string depending on the site
https://bugs.webkit.org/show_bug.cgi?id=132681

Reviewed by Anders Carlsson.

Source/WebCore:
We have changed the user agent string several times to try to fix
broken websites that require specific things in the UA string to
properly work. But everytime we change the UA string to fix a
website we break others. We could use different UA string
depending on the website. UserAgentGtk code has also been cleaned
up, using NeverDestroyed instead of DEPRECATED_DEFINE_STATIC_LOCAL
and avoiding unneeded conversions to UTF-8.

* platform/gtk/UserAgentGtk.cpp:
(WebCore::UserAgentQuirks::UserAgentQuirks): New helper private
class to handle user agent quirks.
(WebCore::UserAgentQuirks::add):
(WebCore::UserAgentQuirks::contains):
(WebCore::UserAgentQuirks::isEmpty):
(WebCore::platformForUAString): Bring back this method that was
removed to always pretend to be Macintosh.
(WebCore::platformVersionForUAString): Return a different platform
version depending on the actual platform.
(WebCore::versionForUAString): Return the WebKit version.
(WebCore::buildUserAgentString): Helper function to build the user
agent taking into account the UserAgentQuirks received.
(WebCore::standardUserAgentStatic): Standard user agent string
when no quirks are present.
(WebCore::standardUserAgent):
(WebCore::standardUserAgentForURL): New method that returns the
user agent string for the given URL.
* platform/gtk/UserAgentGtk.h:

Source/WebKit2:
* UIProcess/API/gtk/WebKitSettings.cpp:
(webkit_settings_class_init): Enable site specific quirks setting
by default.
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::userAgent): Pass the given URL to WebPage.
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::userAgent): Try to get the user agent for the
URL received falling back to the current one otherwise.
* WebProcess/WebPage/WebPage.h:
(WebKit::WebPage::platformUserAgent): Added.
* WebProcess/WebPage/efl/WebPageEfl.cpp:
(WebKit::WebPage::platformUserAgent): Return null String.
* WebProcess/WebPage/gtk/WebPageGtk.cpp:
(WebKit::WebPage::platformUserAgent): Use WebCore::standardUserAgentForURL() when site specific quirks
setting is enabled.
* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::platformUserAgent): Return null String.
* WebProcess/WebPage/mac/WebPageMac.mm:
(WebKit::WebPage::platformUserAgent): Return null String.

Tools:
Add a unit test to check user agent quirks.

* TestWebKitAPI/PlatformGTK.cmake:
* TestWebKitAPI/Tests/WebCore/gtk/UserAgentQuirks.cpp: Added.
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitSettings.cpp:
(testWebKitSettings): Site specific quirks setting is now enabled
by default.


  Commit: 5be75f1420970d7ba848bf8dd499224a3a636e84
      https://github.com/WebKit/WebKit/commit/5be75f1420970d7ba848bf8dd499224a3a636e84
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-07-04 (Fri, 04 Jul 2014)

  Changed paths:
    M Source/ThirdParty/ANGLE/ChangeLog
    M Source/ThirdParty/ANGLE/src/compiler/SymbolTable.cpp

  Log Message:
  -----------
  [GTK] [Stable] Crash in TSymbolTableLevel::~TSymbolTableLevel with GCC 4.9
https://bugs.webkit.org/show_bug.cgi?id=134593

Unreviewed. Backported from Mozilla by Mike Hommey <mh+mozilla at glandium.org>
https://bugzilla.mozilla.org/show_bug.cgi?id=1025576
https://code.google.com/p/angleproject/issues/detail?id=651

* src/compiler/SymbolTable.cpp:
(TSymbolTableLevel::~TSymbolTableLevel):


  Commit: d593960027eb15e1d77f005125e1965c85d2dc97
      https://github.com/WebKit/WebKit/commit/d593960027eb15e1d77f005125e1965c85d2dc97
  Author: Evan Nemerson <evan at nemerson.com>
  Date:   2014-07-04 (Fri, 04 Jul 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/API/gtk/WebKitWebResource.cpp

  Log Message:
  -----------
  Merge r170633 - [GTK] Annotations for WebResource.get_data produce wrong signature in Vala binding
https://bugs.webkit.org/show_bug.cgi?id=134476

Patch by Evan Nemerson <evan at nemerson.com> on 2014-07-01
Reviewed by Carlos Garcia Campos.

* UIProcess/API/gtk/WebKitWebResource.cpp: Add array length and
element-type annotations to return value of webkit_web_resource_get_data_finish().


  Commit: 6a99d1f7f971757639d568f7fd0e11c7df23d178
      https://github.com/WebKit/WebKit/commit/6a99d1f7f971757639d568f7fd0e11c7df23d178
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-07-04 (Fri, 04 Jul 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/PluginProcess/PluginControllerProxy.cpp
    M Source/WebKit2/PluginProcess/PluginControllerProxy.h
    M Source/WebKit2/PluginProcess/PluginControllerProxy.messages.in
    M Source/WebKit2/UIProcess/WebPageProxy.h
    M Source/WebKit2/UIProcess/WebPageProxy.messages.in
    M Source/WebKit2/UIProcess/efl/WebPageProxyEfl.cpp
    M Source/WebKit2/UIProcess/gtk/WebPageProxyGtk.cpp
    M Source/WebKit2/WebProcess/Plugins/Netscape/NetscapePlugin.cpp
    M Source/WebKit2/WebProcess/Plugins/Netscape/NetscapePlugin.h
    M Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp
    M Source/WebKit2/WebProcess/Plugins/PDF/PDFPlugin.h
    M Source/WebKit2/WebProcess/Plugins/Plugin.h
    M Source/WebKit2/WebProcess/Plugins/PluginController.h
    M Source/WebKit2/WebProcess/Plugins/PluginProxy.cpp
    M Source/WebKit2/WebProcess/Plugins/PluginProxy.h
    M Source/WebKit2/WebProcess/Plugins/PluginProxy.messages.in
    M Source/WebKit2/WebProcess/Plugins/PluginView.cpp
    M Source/WebKit2/WebProcess/Plugins/PluginView.h

  Log Message:
  -----------
  Merge r170423 - [GTK] Windowed plugins visibility doesn't work
https://bugs.webkit.org/show_bug.cgi?id=131487

Reviewed by Anders Carlsson.

Implement plugins visibility changes and add a new message to
notify the UI process when a windowed plugin is shown/hidden to
show/hide the plugin widget.

* PluginProcess/PluginControllerProxy.cpp:
(WebKit::PluginControllerProxy::visibilityDidChange): Add
implementation to notify the plugin about visibility change.
(WebKit::PluginControllerProxy::windowedPluginVisibilityDidChange):
Send WindowedPluginVisibilityDidChange to the plugin proxy.
* PluginProcess/PluginControllerProxy.h:
* PluginProcess/PluginControllerProxy.messages.in: Add VisibilityDidChange message.
* UIProcess/WebPageProxy.h: Add windowedPluginVisibilityDidChange
to handle WindowedPluginVisibilityDidChange message.
* UIProcess/WebPageProxy.messages.in: Add WindowedPluginVisibilityDidChange message.
* UIProcess/efl/WebPageProxyEfl.cpp:
(WebKit::WebPageProxy::windowedPluginVisibilityDidChange):
* UIProcess/gtk/WebPageProxyGtk.cpp:
(WebKit::WebPageProxy::createPluginContainer): Do not show the
plugins by default.
(WebKit::WebPageProxy::windowedPluginVisibilityDidChange): Show or hide the plugin widget.
* WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
(WebKit::NetscapePlugin::NetscapePlugin): Initialize m_isVisible.
(WebKit::NetscapePlugin::visibilityDidChange): Add visible parameter and save it in m_isVisible
member, calling platformVisibilityDidChange() only when it has actually changed.
* WebProcess/Plugins/Netscape/NetscapePlugin.h:
* WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:
(WebKit::NetscapePlugin::platformVisibilityDidChange): Notify the controller about visibility change.
* WebProcess/Plugins/PDF/PDFPlugin.h:
* WebProcess/Plugins/Plugin.h:
* WebProcess/Plugins/PluginController.h:
* WebProcess/Plugins/PluginProxy.cpp:
(WebKit::PluginProxy::visibilityDidChange): Send VisibilityDidChange message to the plugin controller proxy.
(WebKit::PluginProxy::windowedPluginVisibilityDidChange): Notify the controller about visibility change.
* WebProcess/Plugins/PluginProxy.h:
* WebProcess/Plugins/PluginProxy.messages.in: Add WindowedPluginVisibilityDidChange message.
* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::didInitializePlugin): Also call viewVisibilityDidChange() when the plugin is initialized.
(WebKit::PluginView::setParentVisible): Override this Widget method to update the plugin visibility when parent
widget is shown/hidden.
(WebKit::PluginView::viewVisibilityDidChange): Pass visible parameter to visibilityDidChange().
(WebKit::PluginView::windowedPluginVisibilityDidChange): Send WindowedPluginVisibilityDidChange message to the UI process.
* WebProcess/Plugins/PluginView.h:


  Commit: 5898278623bfff035bae24a07e6d3ba7b4c0004e
      https://github.com/WebKit/WebKit/commit/5898278623bfff035bae24a07e6d3ba7b4c0004e
  Author: Jarek Czekalski <jarekczek at poczta.onet.pl>
  Date:   2014-07-04 (Fri, 04 Jul 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/platform/gtk/accessibility/caret-offsets-and-extraneous-white-spaces-expected.txt
    A LayoutTests/platform/gtk/accessibility/caret-offsets-and-extraneous-white-spaces.html
    A LayoutTests/platform/gtk/accessibility/caret-offsets-expected.txt
    A LayoutTests/platform/gtk/accessibility/caret-offsets.html
    A LayoutTests/platform/gtk/resources/atk-helpers.js
    M Tools/ChangeLog
    M Tools/DumpRenderTree/atk/AccessibilityCallbacksAtk.cpp
    M Tools/WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp
    M Tools/WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h
    M Tools/WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl
    M Tools/WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp
    M Tools/WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp
    M Tools/WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm
    M Tools/WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm

  Log Message:
  -----------
  Merge r169483 - Tools: [ATK] Added new accessibility signal: text-caret-moved.
Make AccessibilityUIElement.setSelectedTextRange work
as atk_text_set_caret_offset when given offset == 0.
https://bugs.webkit.org/show_bug.cgi?id=132527

Patch by Jarek Czekalski <jarekczek at poczta.onet.pl> on 2014-05-30
Reviewed by Mario Sanchez Prada.

text-caret-moved signal in accessibilityController is needed to
implement tests from Tools/TestWebKitAPI/Tests/WebKitGtk/testatk.c
as LayoutTests. Add the signal to the controller.

* WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
* WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
* WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
(setSelectedTextRange): Change return type to bool.
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(setSelectedTextRange): Call atk_text_set_caret_offset and return bool.
* WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
(axObjectEventListener): Add notification name AXTextCaretMoved, allow
for extra arguments passed to handler and use it for text-caret-moved offset.
(WTR::AccessibilityNotificationHandler::connectAccessibilityCallbacks):
Connect callback to new listener for ATK:AtkText:text-caret-moved.
Refactor so that failures be reported.
Initialize atk interfaces before trying to connect to them, see
https://bugzilla.gnome.org/show_bug.cgi?id=729922
(WTR::AccessibilityNotificationHandler::disconnectAccessibilityCallbacks):
Simplify code by using a vector in place of dozen variables.
* DumpRenderTree/atk/AccessibilityCallbacksAtk.cpp:
Comment about not synchronizing with accessibilityController.

LayoutTests: [ATK] Convert caret offset tests from testatk.c.
https://bugs.webkit.org/show_bug.cgi?id=132527

Patch by Jarek Czekalski <jarekczek at poczta.onet.pl> on 2014-05-30
Reviewed by Mario Sanchez Prada.

The tests are replicated from testatk.c file, functions
    testWebkitAtkCaretOffsets()
    testWebkitAtkCaretOffsetsAndExtranousWhiteSpaces()
The file was present in webkit1. Removed from trunk in r166977, so
the last version was
https://trac.webkit.org/browser/trunk/Tools/TestWebKitAPI/Tests/WebKitGtk/testatk.c?rev=166976
What could not be verified in the same way:

1. Whether element implements ATK_TEXT. If setCaretOffset
succeeds, it confirms that element is text as well. But in cases
when setCaretOffset must fail I see no way to confirm it is text
element.

2. Whether position is correct through a call to
atk_text_get_caret_offset.  text-caret-moved signal value is
tested instead.

Anyway these cases don't look crucial, so they are skipped.

* platform/gtk/resources/atk-helpers.js: Added.
(setCaretOffset): Added.
* platform/gtk/accessibility/caret-offsets-and-extraneous-white-spaces-expected.txt: Added.
* platform/gtk/accessibility/caret-offsets-and-extraneous-white-spaces.html: Added.
* platform/gtk/accessibility/caret-offsets-expected.txt: Added.
* platform/gtk/accessibility/caret-offsets.html: Added.


  Commit: 7ff0c455f6091926304726e392b15a7278532d70
      https://github.com/WebKit/WebKit/commit/7ff0c455f6091926304726e392b15a7278532d70
  Author: Jarek Czekalski <jarekczek at poczta.onet.pl>
  Date:   2014-07-04 (Fri, 04 Jul 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/platform/gtk/accessibility/text-in-span-block-in-a-block-expected.txt
    A LayoutTests/platform/gtk/accessibility/text-in-span-block-in-a-block.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/accessibility/atk/WebKitAccessibleWrapperAtk.cpp

  Log Message:
  -----------
  Merge r169936 - Source/WebCore: [ATK] Fix text inside "span" block in "a" block was not accessible.
https://bugs.webkit.org/show_bug.cgi?id=132349

Patch by Jarek Czekalski <jarekczek at poczta.onet.pl> on 2014-06-13
Reviewed by Mario Sanchez Prada.

* accessibility/atk/WebKitAccessibleWrapperAtk.cpp: Add link role
  to the list of roles whose objects always expose atk_text interface.

LayoutTests: [ATK] Add test for accessibility of text inside "span" block in "a" block.
https://bugs.webkit.org/show_bug.cgi?id=132349

Patch by Jarek Czekalski <jarekczek at poczta.onet.pl> on 2014-06-13
Reviewed by Mario Sanchez Prada.

* platform/gtk/accessibility/text-in-span-block-in-a-block-expected.txt: Added.
* platform/gtk/accessibility/text-in-span-block-in-a-block.html: Added.


  Commit: 17a3414e858607ace02095940560f070ed36de44
      https://github.com/WebKit/WebKit/commit/17a3414e858607ace02095940560f070ed36de44
  Author: Jarek Czekalski <jarekczek at poczta.onet.pl>
  Date:   2014-07-04 (Fri, 04 Jul 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    M LayoutTests/platform/gtk/accessibility/text-in-span-block-in-a-block-expected.txt
    M LayoutTests/platform/gtk/accessibility/text-in-span-block-in-a-block.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/accessibility/atk/WebKitAccessibleWrapperAtk.cpp

  Log Message:
  -----------
  Merge r170359 - Source/WebCore: [ATK] Don't ignore links rendered as blocks.
https://bugs.webkit.org/show_bug.cgi?id=130941

Patch by Jarek Czekalski <jarekczek at poczta.onet.pl> on 2014-06-24
Reviewed by Mario Sanchez Prada.

* /m/usr/src/webkit-trunk/Source/WebCore/accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(WebCore::AccessibilityObject::objectFocusedAndCaretOffsetUnignored): Don't ignore links
when they are renderered with display:block.

LayoutTests: [ATK] Extended the test for accessibility of text inside "span" block in "a" block
with the tests for caret movements in these cases.
https://bugs.webkit.org/show_bug.cgi?id=130941

Patch by Jarek Czekalski <jarekczek at poczta.onet.pl> on 2014-06-24
Reviewed by Mario Sanchez Prada.

* platform/gtk/accessibility/text-in-span-block-in-a-block-expected.txt:
* platform/gtk/accessibility/text-in-span-block-in-a-block.html:
Added testing for text-caret-moved signal. Added one more "a" element to the set.


  Commit: 3c008511755019c059409e3f777166af0ed95d11
      https://github.com/WebKit/WebKit/commit/3c008511755019c059409e3f777166af0ed95d11
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-07-04 (Fri, 04 Jul 2014)

  Changed paths:
    M Source/JavaScriptCore/ChangeLog
    M Source/JavaScriptCore/jit/CCallHelpers.h
    M Source/JavaScriptCore/jit/Repatch.cpp

  Log Message:
  -----------
  [GTK] [Stable] Crash while playing a video
https://bugs.webkit.org/show_bug.cgi?id=133940

Unreviewed. Rolling out r160688.

* jit/CCallHelpers.h:
* jit/Repatch.cpp:
(JSC::generateProtoChainAccessStub):
(JSC::tryBuildGetByIDList):


  Commit: ee1a86302e0c7224ced008f833701fd224d92f28
      https://github.com/WebKit/WebKit/commit/ee1a86302e0c7224ced008f833701fd224d92f28
  Author: Victor Jaquez <vjaquez at igalia.com>
  Date:   2014-07-04 (Fri, 04 Jul 2014)

  Changed paths:
    M Tools/ChangeLog
    M Tools/gtk/generate-gtkdoc

  Log Message:
  -----------
  Merge r169768 - [GTK][gtkdoc] remove -Wcast-align
https://bugs.webkit.org/show_bug.cgi?id=133640

Apparently gcc warns that GParamSpec is not castable to
GParamSpecInt64/GParamSpecUInt64/GParamSpecDouble due they are 64bit, even
though ARM hackers claim that those only need 4byte alignment. As long as gcc
behaves that way, this warning is not very useful, also they break the Debian
packaging.

This patch appends the compiler flag -Wno-align-cast for the gtkdoc
scanner compilation, thus the compiler ignores the previous
-Waling-cast flag.

Reviewed by Martin Robinson.

* gtk/generate-gtkdoc:
(get_generator_for_config):


  Commit: 38ef67a5b0201e2ac01e454fd69987ea3f64d47c
      https://github.com/WebKit/WebKit/commit/38ef67a5b0201e2ac01e454fd69987ea3f64d47c
  Author: Alberto Garcia <berto at igalia.com>
  Date:   2014-07-04 (Fri, 04 Jul 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/graphics/egl/GLContextEGL.cpp

  Log Message:
  -----------
  Merge r169935 - [GTK] GLContextEGL.cpp: conflicting declaration 'typedef ptrdiff_t GLintptr'
https://bugs.webkit.org/show_bug.cgi?id=133550

Reviewed by Gustavo Noronha Silva.

Cairo includes some definitions from GLX that conflict with the
ones provided by our GLES2 headers (GLintptr, GLsizeiptr).

Since GLContextEGL doesn't use any GLX functions we can safely
disable the inclusion of those functions in that source file.

* platform/graphics/egl/GLContextEGL.cpp:


  Commit: 93ed00ea836a3a2a81634b29c6427e493e0781a4
      https://github.com/WebKit/WebKit/commit/93ed00ea836a3a2a81634b29c6427e493e0781a4
  Author: Alberto Garcia <berto at igalia.com>
  Date:   2014-07-04 (Fri, 04 Jul 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/Modules/webaudio/AudioBuffer.cpp

  Log Message:
  -----------
  Merge r169896 - [GTK] fails to build with --disable-webgl --disable-accelerated-compositing
https://bugs.webkit.org/show_bug.cgi?id=131267

Reviewed by Philippe Normand.

Add missing headers needed for Float32Array::create().

* Modules/webaudio/AudioBuffer.cpp:


  Commit: a200d04aa85311ad005739e257123bd04f0b3ca5
      https://github.com/WebKit/WebKit/commit/a200d04aa85311ad005739e257123bd04f0b3ca5
  Author: Philippe Normand <pnormand at igalia.com>
  Date:   2014-07-04 (Fri, 04 Jul 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp
    M Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp

  Log Message:
  -----------
  Merge r170526 - [GTK] 8tracks.com triggers annoying pop-up window/installation of "About protocol source plugin" (GStreamer?)
https://bugs.webkit.org/show_bug.cgi?id=133605

Reviewed by Carlos Garcia Campos.

Don't attempt to load blank URLs with the GStreamer media
player. Those URLs trigger the codec installer which is useless in
this scenario. This patch also renames some of the variables of
the ::load method, as suggested by Carlos.

* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer):
Check video-sink validity before disconnecting its signal handlers.
(WebCore::MediaPlayerPrivateGStreamer::load): Don't load blank
URLs (about:blank).
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::~MediaPlayerPrivateGStreamerBase):
Disconnect repaint handler only if it's valid.


  Commit: 409ae143ff90400aedf42983639435e791424c89
      https://github.com/WebKit/WebKit/commit/409ae143ff90400aedf42983639435e791424c89
  Author: Žan Doberšek <zdobersek at igalia.com>
  Date:   2014-07-04 (Fri, 04 Jul 2014)

  Changed paths:
    M Source/WTF/ChangeLog
    M Source/WTF/wtf/Compiler.h
    M Source/WTF/wtf/HashMap.h
    M Source/WTF/wtf/Vector.h
    M Tools/ChangeLog
    M Tools/TestWebKitAPI/Tests/WTF/HashMap.cpp
    M Tools/TestWebKitAPI/Tests/WTF/Vector.cpp

  Log Message:
  -----------
  Merge r163519 - Remove the WTF_COMPILER_SUPPORTS_CXX_GENERALIZED_INITIALIZERS macro
https://bugs.webkit.org/show_bug.cgi?id=128267

Reviewed by Andreas Kling.

Source/WTF:

Remove the WTF_COMPILER_SUPPORTS_CXX_GENERALIZED_INITIALIZERS macro that was manually defined for compilers
that support the C++11 initializer lists. The feature is well supported in Clang, MSVC and also GCC. It
was actually already used unguarded in HashSet.

* wtf/Compiler.h:
* wtf/HashMap.h:
(WTF::HashMap::HashMap):
* wtf/Vector.h:
(WTF::Vector::Vector):

Tools:

Remove the COMPILER_SUPPORTS(CXX_GENERALIZED_INITIALIZERS) as the underlying macro is also
being removed since the feature is supported by all the compilers the project approves.

* TestWebKitAPI/Tests/WTF/HashMap.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WTF/Vector.cpp:
(TestWebKitAPI::TEST):


  Commit: cfd570a3cf4448f2277b9df487bd3292aa83facb
      https://github.com/WebKit/WebKit/commit/cfd570a3cf4448f2277b9df487bd3292aa83facb
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-07-04 (Fri, 04 Jul 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/API/gtk/WebKitVersion.h.in
    M Source/WebKit2/WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h

  Log Message:
  -----------
  Merge r170707 - [GTK] WebKitVersion.h should be shared between UI and Web Process APIs
https://bugs.webkit.org/show_bug.cgi?id=134538

Reviewed by Martin Robinson.

To be able to check current version from web extensions too.

* UIProcess/API/gtk/WebKitVersion.h.in: Allow to include WebKitVersion.h also from webkit-web-extension.h.
* WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h: Include WebKitVersion.h.


  Commit: 367ee41e8428b0b63a8a2b0d882d5e9aabbc2297
      https://github.com/WebKit/WebKit/commit/367ee41e8428b0b63a8a2b0d882d5e9aabbc2297
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-07-08 (Tue, 08 Jul 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/gtk/UserAgentGtk.cpp
    M Source/WebKit/gtk/ChangeLog
    M Source/WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.cpp
    M Source/WebKit/gtk/webkit/webkitwebsettings.cpp
    M Source/WebKit/gtk/webkit/webkitwebsettingsprivate.h
    M Tools/ChangeLog
    M Tools/TestWebKitAPI/Tests/WebCore/gtk/UserAgentQuirks.cpp
    M Tools/TestWebKitAPI/Tests/WebKitGtk/testwebsettings.c

  Log Message:
  -----------
  [GTK][Stable] Google Maps doesn't work with Version/X in the user agent
https://bugs.webkit.org/show_bug.cgi?id=134631

Reviewed by Sergio Villar Senin.

Source/WebCore:

Because of the JSC version used in stable branch, when the
Version/X string is present in the user agent, google maps uses
JavaScript API that we don't support. Move the google domain quirks
from WebKit1 to WebCore and add a quirk for google maps.

* platform/gtk/UserAgentGtk.cpp:
(WebCore::googleDomains):
(WebCore::otherGoogleDomains):
(WebCore::isGoogleDomain): Returns whether the given host is a
known google domain
(WebCore::buildUserAgentString): Do not include the Version/X
string in the user agent if the ShouldNotIncludeSafariVersion
quirk is present.
(WebCore::standardUserAgentForURL): Add RequiresStandardUserAgent
quirk for any google doamin and ShouldNotIncludeSafariVersion for
Google Maps.

Source/WebKit/gtk:

Remove user agent quirks for google domains, since they are now
implemented in WebCore.

* WebCoreSupport/FrameLoaderClientGtk.cpp:
(WebKit::FrameLoaderClient::userAgent): Pass the WebCore::URL
const reference to webkitWebSettingsUserAgentForURI().
* webkit/webkitwebsettings.cpp:
(webkitWebSettingsUserAgentForURI): Use
WebCore::standardUserAgentForURL() when site specific quirks are enabled.
* webkit/webkitwebsettingsprivate.h:

Tools:

Move user agent quirks tests from WebKit1 to WebCore.

* TestWebKitAPI/Tests/WebCore/gtk/UserAgentQuirks.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKitGtk/testwebsettings.c:
(test_webkit_web_settings_user_agent):


  Commit: 95a659e007dafd3aa69a1c656f97a44bbd7b785a
      https://github.com/WebKit/WebKit/commit/95a659e007dafd3aa69a1c656f97a44bbd7b785a
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-07-08 (Tue, 08 Jul 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/GNUmakefile.am

  Log Message:
  -----------
  Unreviewed. Fix make distcheck.

* GNUmakefile.am:


  Commit: 8c3cb2087a52f933175704b35d0f127e663f3ff4
      https://github.com/WebKit/WebKit/commit/8c3cb2087a52f933175704b35d0f127e663f3ff4
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-07-08 (Tue, 08 Jul 2014)

  Changed paths:
    M ChangeLog
    M Source/WebKit/gtk/ChangeLog
    M Source/WebKit/gtk/NEWS
    M Source/autotools/Versions.m4

  Log Message:
  -----------
  Unreviewed. Update NEWS and Versions.m4 for 2.4.4 release.

.:

* Source/autotools/Versions.m4: Bump version numbers.

Source/WebKit/gtk:

* NEWS: Added release notes for 2.4.4.


  Commit: 7e1d01a8e7f21ec887b94da5d65fa287b4a747b7
      https://github.com/WebKit/WebKit/commit/7e1d01a8e7f21ec887b94da5d65fa287b4a747b7
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-08-25 (Mon, 25 Aug 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/Plugins/gtk/PluginInfoCache.cpp

  Log Message:
  -----------
  Merge r172442 - [GTK] The plugins metadata cache doesn't work if the user cache directory doesn't exist
https://bugs.webkit.org/show_bug.cgi?id=135834

Reviewed by Philippe Normand.

Make sure the user cache directory exists. If creating the
directory fails for whatever reason, do not try to save the cache
to disk.

* UIProcess/Plugins/gtk/PluginInfoCache.cpp:
(WebKit::PluginInfoCache::PluginInfoCache):
(WebKit::PluginInfoCache::updatePluginInfo):


  Commit: d9967357b26b2f4b974d905ebedc0538c033d803
      https://github.com/WebKit/WebKit/commit/d9967357b26b2f4b974d905ebedc0538c033d803
  Author: Victor Jaquez <vjaquez at igalia.com>
  Date:   2014-08-25 (Mon, 25 Aug 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/WebProcess/soup/WebProcessSoup.cpp

  Log Message:
  -----------
  Merge r172828 - [GTK] WebkitWebProcess crashing navigating away from ogg video element
https://bugs.webkit.org/show_bug.cgi?id=135348

Reviewed by Philippe Normand.

Source/WebCore:

Let GraphicsLayerTextureMapper know it needs to detach the platform
layer when a MediaPlayerPrivateGStreamerBase is destroyed.

No new test since media/restore-from-page-cache.html covers it.

* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::~MediaPlayerPrivateGStreamerBase):

Source/WebKit2:

When a page is cached, by default doesn't recreate the backing store
(an optimization added in r89316).

Not all the ports uses that optimization. For example IOS port doesn't
use it (r161185).

In the case of the GTK port, the MediaPlayerPrivateGStreamer, not only
processes video buffers, also display them, because it is a
TextureMapperPlatformLayer too.

Nevertheless, in r153937, when a page is cached, the player is
destroyed. But our player has a backing store and the render tree
doesn't know that the player has gone. Hence, when the page is redraw,
the TextureMapper tree visits the video element, which doesn't exist
anymore, a segmentation fault occurs.

So, as our media player renders, and as we cannot trust that the
player exists when a page is painted, we cannot rely in the r89316
optimization.

Disabling the backing stores optimization fixes the problem.

Covered by existing tests.

* WebProcess/soup/WebProcessSoup.cpp:
(WebKit::WebProcess::platformSetCacheModel): Enable the backing store
clearing when page caching for GTK.


  Commit: 5379da62a55cd0bc65a3b20998f9ff8176fa38e8
      https://github.com/WebKit/WebKit/commit/5379da62a55cd0bc65a3b20998f9ff8176fa38e8
  Author: Michael Catanzaro <mcatanzaro at igalia.com>
  Date:   2014-08-25 (Mon, 25 Aug 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/WebPageProxy.cpp

  Log Message:
  -----------
  Merge r172592 - WebKit2GTK - WebKitWebProcess assertion fails when dragging and dropping a file into the view
https://bugs.webkit.org/show_bug.cgi?id=127576

Patch by Michael Catanzaro <mcatanzaro at igalia.com> on 2014-08-14
Reviewed by Carlos Garcia Campos.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::performDragControllerAction): Assume read access
to any file that has been dragged into the web view when compiling for
GTK, since we don't support sandbox extensions.


  Commit: f5c568c46d33c65529fde058e44c706d2dcc50a8
      https://github.com/WebKit/WebKit/commit/f5c568c46d33c65529fde058e44c706d2dcc50a8
  Author: Michael Catanzaro <mcatanzaro at igalia.com>
  Date:   2014-08-25 (Mon, 25 Aug 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/gtk/RenderThemeGtk3.cpp

  Log Message:
  -----------
  Merge r172896 - [GTK] Toggle buttons visually broken with GTK+ 3.13.7
https://bugs.webkit.org/show_bug.cgi?id=136130

Patch by Michael Catanzaro <mcatanzaro at igalia.com> on 2014-08-24
Reviewed by Martin Robinson.

No new tests. Hopefully covered by existing tests, and our tests only
run with GTK+ 3.6 anyway.

* platform/gtk/RenderThemeGtk3.cpp:
(WebCore::paintToggle): use GTK_STATE_FLAG_CHECKED when compiling for
GTK+ 3.13.7 and above to ensure toggle buttons display as toggled.


  Commit: 84cff73d6e6b2f23811f3c67d404e1d00b899519
      https://github.com/WebKit/WebKit/commit/84cff73d6e6b2f23811f3c67d404e1d00b899519
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-08-25 (Mon, 25 Aug 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBase.cpp

  Log Message:
  -----------
  Merge r172341 - [GTK] Do not use GtkWindow:resize-grip-visible with recent GTK+ versions
https://bugs.webkit.org/show_bug.cgi?id=135699

Reviewed by Philippe Normand.

Resize grips support have been removed from GTK+ since 3.13.4, the
API has been deprecated and does nothing.

* UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseSetToplevelOnScreenWindow):
(resizeWebKitWebViewBaseFromAllocation):


  Commit: 0b3d7259cd1933fa3a676415507e2c9acee95925
      https://github.com/WebKit/WebKit/commit/0b3d7259cd1933fa3a676415507e2c9acee95925
  Author: Fabien Vallée <fvallee at connected-labs.com>
  Date:   2014-08-25 (Mon, 25 Aug 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/media/video-ended-event-slow-motion-playback-expected.txt
    A LayoutTests/media/video-ended-event-slow-motion-playback.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp

  Log Message:
  -----------
  Merge r172472 - [GStreamer] playback rate is rounded to integer
https://bugs.webkit.org/show_bug.cgi?id=135802

Patch by Fabien Vallée <fvallee at connected-labs.com> on 2014-08-12
Reviewed by Philippe Normand.

Source/WebCore:

Test: media/video-ended-event-slow-motion-playback.html

* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::setRate):

LayoutTests:

add test to ensure playback is actually working
in slow motion (playback rate = 0.5): Player
should reach EOS and dispatch ended event.

* media/video-ended-event-slow-motion-playback-expected.txt: Added.
* media/video-ended-event-slow-motion-playback.html: Added.


  Commit: 96a7aba0efb861902e93d471309cb81398619a93
      https://github.com/WebKit/WebKit/commit/96a7aba0efb861902e93d471309cb81398619a93
  Author: Diego Pino Garcia <dpino at igalia.com>
  Date:   2014-08-25 (Mon, 25 Aug 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    M LayoutTests/js/basic-map-expected.txt
    M LayoutTests/js/basic-set-expected.txt
    M LayoutTests/js/script-tests/basic-map.js
    M LayoutTests/js/script-tests/basic-set.js
    M Source/JavaScriptCore/ChangeLog
    M Source/JavaScriptCore/runtime/JSMapIterator.h
    M Source/JavaScriptCore/runtime/JSSetIterator.h
    M Source/JavaScriptCore/runtime/MapData.h
    M Source/JavaScriptCore/runtime/MapIteratorPrototype.cpp
    M Source/JavaScriptCore/runtime/SetIteratorPrototype.cpp

  Log Message:
  -----------
  Merge r172707 - Completed iterator can be revived by adding more than one new entry to the target object
https://bugs.webkit.org/show_bug.cgi?id=129993

Patch by Diego Pino Garcia <dpino at igalia.com> on 2014-08-18
Reviewed by Oliver Hunt.

Source/JavaScriptCore:

When iterator reaches end, finish iterator.

* runtime/JSMapIterator.h:
(JSC::JSMapIterator::finish):
* runtime/JSSetIterator.h:
(JSC::JSSetIterator::finish):
* runtime/MapData.h:
(JSC::MapData::const_iterator::finish): set index of iterator to max
Int32.
* runtime/MapIteratorPrototype.cpp:
(JSC::MapIteratorPrototypeFuncNext):
* runtime/SetIteratorPrototype.cpp:
(JSC::SetIteratorPrototypeFuncNext):

LayoutTests:

Test a Map or Set iterator should remain dead after using it.

* js/basic-map-expected.txt:
* js/basic-set-expected.txt:
* js/script-tests/basic-map.js:
(set var):
(set map):
* js/script-tests/basic-set.js:
(keys.set keys):
(set add.set add):


  Commit: 2e8def8a1393e52a7f2490ecafaff49c9db3bdf1
      https://github.com/WebKit/WebKit/commit/2e8def8a1393e52a7f2490ecafaff49c9db3bdf1
  Author: Simon Fraser <simon.fraser at apple.com>
  Date:   2014-08-25 (Mon, 25 Aug 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/rendering/RootInlineBox.cpp
    M Source/WebCore/rendering/VerticalPositionCache.h

  Log Message:
  -----------
  Merge r172317 - HTML <sub> and <sup> elements do not work in some 64-bit builds
https://bugs.webkit.org/show_bug.cgi?id=135736

Reviewed by Tim Horton.

RootInlineBox::verticalPositionForBox() had some implicit conversions between
LayoutUnit and int that caused overflow, and resulted in different comparison
behavior with an int constant in different architectures, since overflow behavior
is undefined.

Specifically, VerticalPositionCache was written in terms of ints with a special
0x80000000 "not found" value. However, 0x80000000 was being assigned to
a LayoutUnit, which multiplies by 64 causing overflow. The result was then
compared again with 0x80000000 which could pass or fail depending on overflow
behavior.

Fix by converting VerticalPositionCache to use LayoutUnits, and to have a bool
return value with a result out param, instead of a special return value.

Not easily testable, since the difference does not show in DRT output,
and a ref test would be flakey.

* rendering/RootInlineBox.cpp:
(WebCore::RootInlineBox::ascentAndDescentForBox):
* rendering/VerticalPositionCache.h:
(WebCore::VerticalPositionCache::get):
(WebCore::VerticalPositionCache::set):


  Commit: 343125d9e43f0658e2f6330b77413ac439523c5c
      https://github.com/WebKit/WebKit/commit/343125d9e43f0658e2f6330b77413ac439523c5c
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-08-25 (Mon, 25 Aug 2014)

  Changed paths:
    M Tools/ChangeLog
    M Tools/TestWebKitAPI/gtk/WebKit2Gtk/TestMain.cpp

  Log Message:
  -----------
  Merge r171794 - [GTK] GLib tests fail with recent GTK+ due to runtime warning about deprecated properties
https://bugs.webkit.org/show_bug.cgi?id=135411

Reviewed by Sergio Villar Senin.

Recent versions of GTK+ now warn at runtime when a deprecated
property or signal is used. A diagnostic mode was added that is
enabled by default, but that can be disabled by setting
G_ENABLE_DIAGNOSTIC=0. Runtime warnings are considered test
failures by gtester, so we need to run the tests with the
diganostic mode disabled.

* TestWebKitAPI/gtk/WebKit2Gtk/TestMain.cpp:
(main):


  Commit: 5d3dd7aec986d66ca02f4635d4ac370a9c9bb4ce
      https://github.com/WebKit/WebKit/commit/5d3dd7aec986d66ca02f4635d4ac370a9c9bb4ce
  Author: Tomáš Popela <tpopela at redhat.com>
  Date:   2014-08-25 (Mon, 25 Aug 2014)

  Changed paths:
    M Source/WTF/ChangeLog
    M Source/WTF/wtf/Platform.h
    M Source/WTF/wtf/dtoa/utils.h

  Log Message:
  -----------
  Merge r172903 - Add support for little-endian PowerPC64
https://bugs.webkit.org/show_bug.cgi?id=135647

Patch by Tomas Popela <tpopela at redhat.com> on 2014-08-25
Reviewed by Oliver Hunt.

* wtf/Platform.h:
* wtf/dtoa/utils.h:


  Commit: 42cca567ae0e104214ceef67ebb204c000ee080e
      https://github.com/WebKit/WebKit/commit/42cca567ae0e104214ceef67ebb204c000ee080e
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-08-25 (Mon, 25 Aug 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/Shared/Plugins/Netscape/NetscapePluginModule.cpp
    M Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp

  Log Message:
  -----------
  Merge r172919 - [GTK] Should check if a plugin mixes GTK+ symbols earlier
https://bugs.webkit.org/show_bug.cgi?id=136214

Reviewed by Philippe Normand.

We are currently checking if the plugin module and the plugin
process mix GTK symbols after the plugin has been loaded and
initialized. This is too late in many cases, since plugins can use
GTK methods in the NP_Initialize implementation. This is causing
the apps using WebKitGTK+ 2.4 to freeze when the plugin process
scans the plugins and there's a plugin using GTK+3 installed. We
should move the check earlier, once the module is loaded but
before calling NP_Initialize.

* Shared/Plugins/Netscape/NetscapePluginModule.cpp:
(WebKit::moduleMixesGtkSymbols):
(WebKit::NetscapePluginModule::tryLoad):
* WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:
(WebKit::NetscapePlugin::platformPostInitialize):


  Commit: 0c3c9212a580874d75669d7d037f77a308005804
      https://github.com/WebKit/WebKit/commit/0c3c9212a580874d75669d7d037f77a308005804
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-08-25 (Mon, 25 Aug 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/Plugins/gtk/PluginInfoCache.cpp
    M Source/WebKit2/UIProcess/Plugins/gtk/PluginInfoCache.h

  Log Message:
  -----------
  Merge r172920 - [GTK] Older versions of WebKit should use the plugins cache in read only mode
https://bugs.webkit.org/show_bug.cgi?id=136215

Reviewed by Philippe Normand.

Now that WebKitGTK+ 2.4 and 2.5 are parallel installable, since
they use different versions of the plugins cache, apps using 2.4
might override the plugins cache file. We should prevent this from
happening by making older versions use the plugin cache, but not
downgrade it.

* UIProcess/Plugins/gtk/PluginInfoCache.cpp:
(WebKit::PluginInfoCache::PluginInfoCache):
(WebKit::PluginInfoCache::updatePluginInfo):
* UIProcess/Plugins/gtk/PluginInfoCache.h:


  Commit: f11da2473b6b10a6508f50c1274038893185d3c2
      https://github.com/WebKit/WebKit/commit/f11da2473b6b10a6508f50c1274038893185d3c2
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-08-26 (Tue, 26 Aug 2014)

  Changed paths:
    M ChangeLog
    M Source/WebKit/gtk/ChangeLog
    M Source/WebKit/gtk/NEWS
    M Source/autotools/Versions.m4

  Log Message:
  -----------
  Unreviewed. Update NEWS and Versions.m4 for 2.4.5 release.

.:

* Source/autotools/Versions.m4: Bump version numbers.

Source/WebKit/gtk:

* NEWS: Added release notes for 2.4.5.


  Commit: 767d73869994dc173cd71c6fa942a35824b3931f
      https://github.com/WebKit/WebKit/commit/767d73869994dc173cd71c6fa942a35824b3931f
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-09-25 (Thu, 25 Sep 2014)

  Changed paths:
    M GNUmakefile.am
    M Source/WebInspectorUI/GNUmakefile.am
    M Source/WebKit2/ChangeLog
    M Tools/ChangeLog
    M Tools/gtk/generate-inspector-gresource-manifest.py

  Log Message:
  -----------
  Merge r173751 - [GTK] generate-inspector-gresource-manifest.py should receive the list of files from the makefile
https://bugs.webkit.org/show_bug.cgi?id=136943

Reviewed by Philippe Normand.

Source/WebKit2:

* PlatformGTK.cmake: Fix the inspector file list and pass it to
the generate-inspector-gresource-manifest.py script.

Tools:

Update the script to receive the list of files from the command
line instead of scanning the given directories.

* gtk/generate-inspector-gresource-manifest.py:
(get_filenames): Convert filenames to use relative paths.
(find_all_files_in_directory): Deleted.
(find_all_files_in_directory.select_file): Deleted.


  Commit: 01099b19d271feac344de02821b6f92ea2499506
      https://github.com/WebKit/WebKit/commit/01099b19d271feac344de02821b6f92ea2499506
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-09-25 (Thu, 25 Sep 2014)

  Changed paths:
    M Source/WebInspectorUI/ChangeLog
    M Source/WebInspectorUI/GNUmakefile.am
    A Source/WebInspectorUI/UserInterface/Images/gtk/AUTHORS
    A Source/WebInspectorUI/UserInterface/Images/gtk/ApplicationCache.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/ApplicationCache at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/ApplicationCacheManifest.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/ApplicationCacheManifest at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/BackArrow.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/BottomUpTree.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/Breakpoint.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/Breakpoint at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/BreakpointActionAdd.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/BreakpointActionRemove.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/BreakpointButton.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/BreakpointInactive.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/BreakpointInactive at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/BreakpointInactiveButton.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/Breakpoints.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/COPYING
    A Source/WebInspectorUI/UserInterface/Images/gtk/COPYING_CCBYSA3
    A Source/WebInspectorUI/UserInterface/Images/gtk/COPYING_LGPL2
    A Source/WebInspectorUI/UserInterface/Images/gtk/ClippingCSS.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/ClippingCSS at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/ClippingGeneric.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/ClippingGeneric at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/ClippingJS.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/ClippingJS at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/Close.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/CloseTimeline.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/CloseTimeline at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/CloseWhite.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/ColorIcon.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/ColorIcon at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/Colors.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/Colors at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/ColorsLarge.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/ColorsLarge at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/ContentFlow.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/Cookie.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/Cookie at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/Crosshair.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/DOMCharacterData.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/DOMComment.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/DOMDocument.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/DOMDocumentType.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/DOMElement.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/DOMNode.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/DOMTextNode.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/DOMTree.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/Database.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/Database at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/DatabaseTable.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/DatabaseTable at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/DisclosureTriangleSmallClosed.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/DisclosureTriangleSmallOpen.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/DisclosureTriangleTinyClosed.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/DisclosureTriangleTinyOpen.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/DockBottom.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/DockRight.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/DocumentCSS.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/DocumentCSS at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/DocumentFont.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/DocumentFont at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/DocumentGeneric.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/DocumentGeneric at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/DocumentImage.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/DocumentImage at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/DocumentJS.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/DocumentJS at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/DocumentMarkup.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/DocumentMarkup at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/DownloadArrow.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/Error.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/Errors.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/ErrorsEnabled.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/EventListener.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/Exception.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/FilterFieldGlyph.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/FolderGeneric.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/FolderGeneric at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/ForwardArrow.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/Function.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/GoToArrow.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/HierarchicalNavigationItemChevron.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/HoverMenuButton.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/HoverMenuButton at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/IndeterminateProgressSpinner1.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/IndeterminateProgressSpinner10.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/IndeterminateProgressSpinner11.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/IndeterminateProgressSpinner12.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/IndeterminateProgressSpinner2.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/IndeterminateProgressSpinner3.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/IndeterminateProgressSpinner4.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/IndeterminateProgressSpinner5.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/IndeterminateProgressSpinner6.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/IndeterminateProgressSpinner7.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/IndeterminateProgressSpinner8.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/IndeterminateProgressSpinner9.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/InstructionPointer.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/InstructionPointer at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/Issues.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/IssuesEnabled.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/LayerBorders.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/LessColumns.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/LocalStorage.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/LocalStorage at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/Locked.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/Log.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/Log at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/Logs.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/Memory.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/MoreColumns.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/Native.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/NavigationItemAngleBrackets.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/NavigationItemBrushAndRuler.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/NavigationItemBug.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/NavigationItemCurleyBraces.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/NavigationItemFile.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/NavigationItemLayers.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/NavigationItemLog.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/NavigationItemMagnifyingGlass.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/NavigationItemStopwatch.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/NavigationItemStorage.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/NavigationItemTrash.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/NavigationItemVariable.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/Network.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/Network at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/NetworkLarge.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/NetworkLarge at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/Pause.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/Percent.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/Plus.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/Profile.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/Profile at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/PseudoElement.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/Recording.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/Recording at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/RecordingHovered.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/RecordingHovered at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/RecordingStopped.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/RecordingStopped at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/Reflection.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/Reload.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/Request.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/Resources.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/Response.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/ResultLine.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/Resume.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/Script.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/Script at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/ScriptLarge.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/ScriptLarge at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/SessionStorage.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/SessionStorage at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/ShadowDOM.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/SliderThumb.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/SliderThumb at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/SliderThumbPressed.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/SliderThumbPressed at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/SortIndicatorDownArrow.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/SortIndicatorUpArrow.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/SourceCode.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/SplitToggleDown.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/SplitToggleUp.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/StepInto.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/StepOut.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/StepOver.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/Stopwatch.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/Stopwatch at 2x.png
    A Source/WebInspectorUI/UserInterface/Images/gtk/StyleRuleAuthor.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/StyleRuleInherited.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/StyleRuleInheritedElement.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/StyleRuleInspector.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/StyleRuleUser.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/StyleRuleUserAgent.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/Time.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/TimelineRecordAnimation.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/TimelineRecordEvent.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/TimelineRecordLayout.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/TimelineRecordPaint.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/TimelineRecordScriptEvaluated.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/TimelineRecordStyle.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/TimelineRecordTimer.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/Undock.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/UpDownArrows.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/UserInputPrompt.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/UserInputPromptPrevious.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/UserInputResult.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/Warning.svg
    A Source/WebInspectorUI/UserInterface/Images/gtk/Weight.svg
    M Tools/gtk/generate-inspector-gresource-manifest.py

  Log Message:
  -----------
  Merge r173753 - Webkitgtk 2.5.3: tarball contains APPLE LICENSE file - stating not distributable
https://bugs.webkit.org/show_bug.cgi?id=136632

Reviewed by Gustavo Noronha Silva.

Source/WebInspectorUI:

Add free icons for the GTK port. These icons are from the GNOME
project, some of them adapted by Andres Gomez for the inspector.


  Commit: 97788145f1f99cb2c116fb26154debde20fbf191
      https://github.com/WebKit/WebKit/commit/97788145f1f99cb2c116fb26154debde20fbf191
  Author: Philippe Normand <pnormand at igalia.com>
  Date:   2014-09-25 (Thu, 25 Sep 2014)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/http/tests/media/hls/video-cookie-expected.txt
    A LayoutTests/http/tests/media/hls/video-cookie.html
    A LayoutTests/http/tests/media/resources/hls/playlist-with-cookie.m3u8
    A LayoutTests/http/tests/media/resources/hls/sub-playlist-with-cookie.php
    M LayoutTests/http/tests/media/resources/video-cookie-check-cookie.php
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp

  Log Message:
  -----------
  Merge r173809 - [GStreamer] Cannot play Vimeo video
https://bugs.webkit.org/show_bug.cgi?id=134969

Reviewed by Sergio Villar Senin.

Source/WebCore:

Ensure the GStreamer HTTP source element also sends cookies when
it's sending its requests. Some streaming platforms such as Vimeo
do server-side cookie checks on incoming requests before serving
media data.

Test: http/tests/media/hls/video-cookie.html

* platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
(webKitWebSrcStart): Set first-party cookie URL to the request so
the ResourceLoader properly sets cookies in the HTTP request.


  Commit: 63a6b7d7d73eb8099ad2356f95659ec69e242e43
      https://github.com/WebKit/WebKit/commit/63a6b7d7d73eb8099ad2356f95659ec69e242e43
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-09-25 (Thu, 25 Sep 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/gtk/RenderThemeGtk3.cpp

  Log Message:
  -----------
  Merge r172958 - [GTK] Selection background is rendered white when unfocused with recent GTK+
https://bugs.webkit.org/show_bug.cgi?id=136251

Reviewed by Martin Robinson.

This is due to a change in the GTK+ theme, but because we are not
using the right flags to get the selections colors. We should use
GTK_STATE_FLAG_SELECTED | GTK_STATE_FLAG_FOCUSED when focused and
GTK_STATE_FLAG_SELECTED when unfocused, instead of
GTK_STATE_FLAG_ACTIVE when unfocused.

* platform/gtk/RenderThemeGtk3.cpp:
(WebCore::RenderThemeGtk::platformActiveSelectionBackgroundColor):
(WebCore::RenderThemeGtk::platformInactiveSelectionBackgroundColor):
(WebCore::RenderThemeGtk::platformActiveSelectionForegroundColor):
(WebCore::RenderThemeGtk::platformInactiveSelectionForegroundColor):
(WebCore::RenderThemeGtk::platformActiveListBoxSelectionBackgroundColor):
(WebCore::RenderThemeGtk::platformInactiveListBoxSelectionBackgroundColor):
(WebCore::RenderThemeGtk::platformActiveListBoxSelectionForegroundColor):
(WebCore::RenderThemeGtk::platformInactiveListBoxSelectionForegroundColor):


  Commit: c7c437c460c511612dcb5f73fa9bc1cd592c7692
      https://github.com/WebKit/WebKit/commit/c7c437c460c511612dcb5f73fa9bc1cd592c7692
  Author: Michael Catanzaro <mcatanzaro at igalia.com>
  Date:   2014-09-25 (Thu, 25 Sep 2014)

  Changed paths:
    M Source/WebCore/ChangeLog

  Log Message:
  -----------
  Merge r172896 - [GTK] Toggle buttons visually broken with GTK+ 3.13.7
https://bugs.webkit.org/show_bug.cgi?id=136130

Patch by Michael Catanzaro <mcatanzaro at igalia.com> on 2014-08-24
Reviewed by Martin Robinson.

No new tests. Hopefully covered by existing tests, and our tests only
run with GTK+ 3.6 anyway.

* platform/gtk/RenderThemeGtk3.cpp:
(WebCore::paintToggle): use GTK_STATE_FLAG_CHECKED when compiling for
GTK+ 3.13.7 and above to ensure toggle buttons display as toggled.


  Commit: 1a94863cd5476e20b21a124fe36d663dfe5141e0
      https://github.com/WebKit/WebKit/commit/1a94863cd5476e20b21a124fe36d663dfe5141e0
  Author: Brendan Long <self at brendanlong.com>
  Date:   2014-09-25 (Thu, 25 Sep 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp

  Log Message:
  -----------
  Merge r172928 - [GStreamer] ASSERT failure in WebKitWebSource in StreamingClient
https://bugs.webkit.org/show_bug.cgi?id=136132

adoptGRef() has an ASSERT failure if it's used on a floating pointer. For some reason,
WebKitWebSrc* src in StreamingClient's constructor is floating. Since we
don't construct this ourselves, I assume this is happening in Playbin.

If we remove the ref and adopt, GRefPtr's constructor calls gst_object_ref_sink,
which removes the floating reference and doesn't increment the reference count.
This should work, but actually causes the page to either lock up or crash (different
results for different testers).

In this case, it seems like the adoptGRef / gst_object_ref was the correct thing to do,
but adoptGRef won't actually let us do. Removing the ASSERT is a bad idea, because
usually we don't want to adopt floating pointers.

This is all a long way of saying that making m_src a raw pointer and manually
calling gst_object_ref(), and calling gst_object_unref in the destructor is the
best solution in this case, since it fixes the problem while leaving the ASSERT
to protect us in the much more common case where adopting a floating reference is bad.

Reviewed by Philippe Normand.

* platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
(StreamingClient::StreamingClient): Make m_src a raw pointer instead of a GRefPtr.
(StreamingClient::~StreamingClient): Unref m_src.
(StreamingClient::createReadBuffer): Replace m_src.get() with m_src, since it's a raw pointer now.
(StreamingClient::handleResponseReceived): Same.
(StreamingClient::handleDataReceived): Same.
(StreamingClient::handleNotifyFinished): Same.
(CachedResourceStreamingClient::notifyFinished): Same.
(ResourceHandleStreamingClient::didFail): Same.
(ResourceHandleStreamingClient::wasBlocked): Same.
(ResourceHandleStreamingClient::cannotShowURL): Same.


  Commit: c83832a573f7265e507681858deac46e7beb63f2
      https://github.com/WebKit/WebKit/commit/c83832a573f7265e507681858deac46e7beb63f2
  Author: Tomáš Popela <tpopela at redhat.com>
  Date:   2014-09-25 (Thu, 25 Sep 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/API/gtk/WebKitSecurityManager.cpp

  Log Message:
  -----------
  Merge r173658 - [GTK] Typo in  webkit_security_manager_register_uri_scheme_as_empty_document documentation
https://bugs.webkit.org/show_bug.cgi?id=136852

Patch by Tomas Popela <tpopela at redhat.com> on 2014-09-16
Reviewed by Carlos Garcia Campos.

* UIProcess/API/gtk/WebKitSecurityManager.cpp:


  Commit: 941f6d1ae1164be75f3c2f188f77f4ad6ac1c3bc
      https://github.com/WebKit/WebKit/commit/941f6d1ae1164be75f3c2f188f77f4ad6ac1c3bc
  Author: Michael Catanzaro <mcatanzaro at igalia.com>
  Date:   2014-09-25 (Thu, 25 Sep 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/Shared/Downloads/soup/DownloadSoup.cpp

  Log Message:
  -----------
  Merge r173154 - [SOUP] WebKitDownload cannot overwrite existing file
https://bugs.webkit.org/show_bug.cgi?id=136322

Patch by Michael Catanzaro <mcatanzaro at igalia.com> on 2014-09-01
Reviewed by Carlos Garcia Campos.

* Shared/Downloads/soup/DownloadSoup.cpp:
(WebKit::DownloadClient::didReceiveResponse): pass a member variable
to Download::decideDestinationWithSuggestedFilename instead of a
temporary bool, so we can use the result in didFinishLoading.
(WebKit::DownloadClient::didFinishLoading): overwrite the destination
if Download::decideDestinationWithSuggestedFilename determined we
should do so.


  Commit: 80d7baf66d0c57cbd965227ee0e43180e58fafeb
      https://github.com/WebKit/WebKit/commit/80d7baf66d0c57cbd965227ee0e43180e58fafeb
  Author: Michael Catanzaro <mcatanzaro at igalia.com>
  Date:   2014-09-25 (Thu, 25 Sep 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/Shared/Downloads/soup/DownloadSoup.cpp

  Log Message:
  -----------
  Merge r173252 - [SOUP] Race condition when downloading a file due to the intermediate temporary file
https://bugs.webkit.org/show_bug.cgi?id=136423

Patch by Michael Catanzaro <mcatanzaro at igalia.com> on 2014-09-03
Reviewed by Carlos Garcia Campos.

* Shared/Downloads/soup/DownloadSoup.cpp:
(WebKit::DownloadClient::DownloadClient): Replace m_destinationURI with
m_destinationFile and add m_createdDestination.
(WebKit::DownloadClient::deleteFilesIfNeeded): Added.
(WebKit::DownloadClient::downloadFailed): Call deleteFilesIfNeeded.
(WebKit::DownloadClient::didReceiveResponse): Attempt to create the
destination file before the intermediate file. Fail here if the file
exists and overwrite is not allowed, so we don't erroneously fire the
didCreateDestination event or waste time downloading the file when we
know the download will fail.
(WebKit::DownloadClient::didFinishLoading): Unconditionally overwrite
the empty destination file.
(WebKit::DownloadClient::cancel): Call deleteFilesIfNeeded.
(WebKit::DownloadClient::deleteIntermediateFileInNeeded): Deleted.


  Commit: a32bc1307de13dcdf30f530b78e7f6fc8ab68aef
      https://github.com/WebKit/WebKit/commit/a32bc1307de13dcdf30f530b78e7f6fc8ab68aef
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-09-25 (Thu, 25 Sep 2014)

  Changed paths:
    M Tools/ChangeLog
    M Tools/TestWebKitAPI/Tests/WebKitGtk/testcontextmenu.c
    M Tools/TestWebKitAPI/Tests/WebKitGtk/testdownload.c
    M Tools/TestWebKitAPI/Tests/WebKitGtk/testfavicondatabase.c
    M Tools/TestWebKitAPI/Tests/WebKitGtk/testhittestresult.c
    M Tools/TestWebKitAPI/Tests/WebKitGtk/testloading.c
    M Tools/TestWebKitAPI/Tests/WebKitGtk/testmimehandling.c
    M Tools/TestWebKitAPI/Tests/WebKitGtk/testwebresource.c
    M Tools/TestWebKitAPI/Tests/WebKitGtk/testwebview.c

  Log Message:
  -----------
  Unreviewed. Get rid of runtime warnings about deprecated properties and signals, since they break the tests.

* TestWebKitAPI/Tests/WebKitGtk/testcontextmenu.c:
(main):
* TestWebKitAPI/Tests/WebKitGtk/testdownload.c:
(main):
* TestWebKitAPI/Tests/WebKitGtk/testfavicondatabase.c:
(main):
* TestWebKitAPI/Tests/WebKitGtk/testhittestresult.c:
(main):
* TestWebKitAPI/Tests/WebKitGtk/testloading.c:
(main):
* TestWebKitAPI/Tests/WebKitGtk/testmimehandling.c:
(main):
* TestWebKitAPI/Tests/WebKitGtk/testwebresource.c:
(main):
* TestWebKitAPI/Tests/WebKitGtk/testwebview.c:


  Commit: a7f603deaad9fa9b3026321c646030217901650c
      https://github.com/WebKit/WebKit/commit/a7f603deaad9fa9b3026321c646030217901650c
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-09-25 (Thu, 25 Sep 2014)

  Changed paths:
    M Source/WebInspectorUI/ChangeLog
    M Source/WebInspectorUI/GNUmakefile.am

  Log Message:
  -----------
  Unreviewed. Fix make distcheck.

* GNUmakefile.am: Files in EXTRA_DIST need to be explicitly listed.


  Commit: 13789ab90fe32e487b386980552b876ff5fdecf4
      https://github.com/WebKit/WebKit/commit/13789ab90fe32e487b386980552b876ff5fdecf4
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-09-25 (Thu, 25 Sep 2014)

  Changed paths:
    M ChangeLog
    M Source/WebKit/gtk/ChangeLog
    M Source/WebKit/gtk/NEWS
    M Source/autotools/Versions.m4

  Log Message:
  -----------
  Unreviewed. Update NEWS and Versions.m4 for 2.4.6 release.

.:

* Source/autotools/Versions.m4: Bump version numbers.

Source/WebKit/gtk:

* NEWS: Added release notes for 2.4.6.


  Commit: e6a773dbc9ebf7e8d5d6f64e114500f849f14ed9
      https://github.com/WebKit/WebKit/commit/e6a773dbc9ebf7e8d5d6f64e114500f849f14ed9
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-09-26 (Fri, 26 Sep 2014)

  Changed paths:
    M ChangeLog
    M Source/autotools/SetupWebKitFeatures.m4

  Log Message:
  -----------
  Merge r173999 - [GTK] Enable CSS_IMAGE_SET in production builds
https://bugs.webkit.org/show_bug.cgi?id=137142

Reviewed by Alejandro G. Castro.

This is required by the inspector to show some of the icons that
has a HiDPI variant.

* Source/cmake/OptionsGTK.cmake:


  Commit: 5ef47379fc6a4ec228ef4bbb44896372da958e74
      https://github.com/WebKit/WebKit/commit/5ef47379fc6a4ec228ef4bbb44896372da958e74
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-09-26 (Fri, 26 Sep 2014)

  Changed paths:
    M ChangeLog
    M Source/autotools/SetupWebKitFeatures.m4

  Log Message:
  -----------
  Merge r170997 - [GTK] Enable VIDEO_TRACK by default
https://bugs.webkit.org/show_bug.cgi?id=134801

Reviewed by Philippe Normand.

* Source/cmake/OptionsGTK.cmake:


  Commit: 34b80d29daea4e6fd8ae54a00ef9a83d2b70c58d
      https://github.com/WebKit/WebKit/commit/34b80d29daea4e6fd8ae54a00ef9a83d2b70c58d
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-09-26 (Fri, 26 Sep 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/GNUmakefile.list.am

  Log Message:
  -----------
  Unreviewed. Fix make distcheck.

* GNUmakefile.list.am: Add missing header file.


  Commit: f032ff59deabd7d86de25bbca91c97db92aac1e8
      https://github.com/WebKit/WebKit/commit/f032ff59deabd7d86de25bbca91c97db92aac1e8
  Author: Michael Weber <xmw at gentoo.org>
  Date:   2014-10-22 (Wed, 22 Oct 2014)

  Changed paths:
    M ChangeLog
    M Source/autotools/SetupWebKitFeatures.m4

  Log Message:
  -----------
  [GTK][Stable] webkitgtk-2.4.6: fails to build with --disable-video
https://bugs.webkit.org/show_bug.cgi?id=137445

Patch by Michael Weber <xmw at gentoo.org> on 2014-10-22
Reviewed by Carlos Garcia Campos.

* Source/autotools/SetupWebKitFeatures.m4:


  Commit: 1820ac1f60907e814e88266ac62207b1db9af868
      https://github.com/WebKit/WebKit/commit/1820ac1f60907e814e88266ac62207b1db9af868
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-10-22 (Wed, 22 Oct 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/InspectorServer/gtk/WebInspectorServerGtk.cpp

  Log Message:
  -----------
  Merge r174104 - [GTK] The remote web inspector shows the HTML content as plain text
https://bugs.webkit.org/show_bug.cgi?id=137250

Reviewed by Gustavo Noronha Silva.

Use GResource API directly to get the resource data, instead of
using the GFile API, and use g_content_type_guess() to get the
MIME Type.

* UIProcess/InspectorServer/gtk/WebInspectorServerGtk.cpp:
(WebKit::WebInspectorServer::platformResourceForPath):


  Commit: cd1499d7243a50263ec93a7a45677dddf0cf3f3e
      https://github.com/WebKit/WebKit/commit/cd1499d7243a50263ec93a7a45677dddf0cf3f3e
  Author: Philip Chimento <philip.chimento at gmail.com>
  Date:   2014-10-22 (Wed, 22 Oct 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/plugins/PluginPackage.cpp

  Log Message:
  -----------
  Merge r174502 - [GTK] Netscape plugin API symbol used outside feature guards
https://bugs.webkit.org/show_bug.cgi?id=137385

Patch by Philip Chimento <philip.chimento at gmail.com> on 2014-10-09
Reviewed by Philippe Normand.

* plugins/PluginPackage.cpp:
(WebCore::PluginPackage::unload): Add guards for Netscape Plugin
API around symbol, so that it compiles OK when the API is not
available.


  Commit: df8b412743b1e389917aa33257fbf182899faf1e
      https://github.com/WebKit/WebKit/commit/df8b412743b1e389917aa33257fbf182899faf1e
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-10-22 (Wed, 22 Oct 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/API/gtk/WebKitWebContext.cpp

  Log Message:
  -----------
  Merge r172957 - [GTK] Translations are not initialized in the UI process
https://bugs.webkit.org/show_bug.cgi?id=136249

Reviewed by Philippe Normand.

This is breaking things like webkitContextMenuActionGetForContextMenuItem()
for non English locales in the cases where we use the action title to guess the
action, because the action title we get from the web process is translated while
the one in the UI process is in English.

* UIProcess/API/gtk/WebKitWebContext.cpp:
(createDefaultWebContext): Initialize gettext right before
creating the default web context.


  Commit: 1c0c286037f9e3a4a5288a59d95748828cd548a8
      https://github.com/WebKit/WebKit/commit/1c0c286037f9e3a4a5288a59d95748828cd548a8
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-10-22 (Wed, 22 Oct 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/gtk/RenderThemeGtk3.cpp

  Log Message:
  -----------
  Merge r174929 - [GTK] Several labels are white instead of black
https://bugs.webkit.org/show_bug.cgi?id=137803

Reviewed by Martin Robinson.

Recent GTK+ versions require to explicitly set the state before
getting a color.

* rendering/RenderThemeGtk.cpp:
(WebCore::styleColor): Helper function to get a color from a
GtkStylecontext that explicitly sets the state before getting the color.
(WebCore::RenderThemeGtk::platformActiveSelectionBackgroundColor): Use styleColor().
(WebCore::RenderThemeGtk::platformInactiveSelectionBackgroundColor): Ditto.
(WebCore::RenderThemeGtk::platformActiveSelectionForegroundColor): Ditto.
(WebCore::RenderThemeGtk::platformInactiveSelectionForegroundColor): Ditto.
(WebCore::RenderThemeGtk::platformActiveListBoxSelectionBackgroundColor): Ditto.
(WebCore::RenderThemeGtk::platformInactiveListBoxSelectionBackgroundColor): Ditto.
(WebCore::RenderThemeGtk::platformActiveListBoxSelectionForegroundColor): Ditto.
(WebCore::RenderThemeGtk::platformInactiveListBoxSelectionForegroundColor): Ditto.
(WebCore::RenderThemeGtk::systemColor): Ditto.


  Commit: 20425c3075110a8f681b573d15f32e77d7fa5b25
      https://github.com/WebKit/WebKit/commit/20425c3075110a8f681b573d15f32e77d7fa5b25
  Author: Michael Catanzaro <mcatanzaro at igalia.com>
  Date:   2014-10-22 (Wed, 22 Oct 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp

  Log Message:
  -----------
  Merge r174861 - [GTK] Improve documentation of webkit_web_view_get_tls_info()
https://bugs.webkit.org/show_bug.cgi?id=137852

Patch by Michael Catanzaro <mcatanzaro at igalia.com> on 2014-10-18
Reviewed by Martin Robinson.

* UIProcess/API/gtk/WebKitWebView.cpp:


  Commit: d5fc63e8ca9f42cae3a57a9f21ce0a24aa98eb63
      https://github.com/WebKit/WebKit/commit/d5fc63e8ca9f42cae3a57a9f21ce0a24aa98eb63
  Author: Lorenzo Tilve <ltilve at igalia.com>
  Date:   2014-10-22 (Wed, 22 Oct 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/gtk/GtkDragAndDropHelper.cpp
    M Source/WebCore/platform/gtk/GtkDragAndDropHelper.h
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/Shared/gtk/ArgumentCodersGtk.cpp
    M Source/WebKit2/Shared/gtk/ArgumentCodersGtk.h
    M Source/WebKit2/UIProcess/API/gtk/PageClientImpl.cpp
    M Source/WebKit2/UIProcess/API/gtk/PageClientImpl.h
    M Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBase.cpp
    M Source/WebKit2/UIProcess/PageClient.h

  Log Message:
  -----------
  Merge r174328 - [GTK] Fix build when DRAG_SUPPORT is disabled
https://bugs.webkit.org/show_bug.cgi?id=137361

Patch by Lorenzo Tilve <ltilve at igalia.com> on 2014-10-05
Reviewed by Carlos Garcia Campos.

Flag out unbuildable code without DRAG_SUPPORT.

Source/WebCore:

* platform/gtk/GtkDragAndDropHelper.cpp:
* platform/gtk/GtkDragAndDropHelper.h:

Source/WebKit2:

* Shared/gtk/ArgumentCodersGtk.cpp:
* Shared/gtk/ArgumentCodersGtk.h:
* UIProcess/API/gtk/PageClientImpl.cpp:
* UIProcess/API/gtk/PageClientImpl.h:
* UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseConstructed):
* UIProcess/PageClient.h:


  Commit: 92081e1caec715794e8d81c8426c87d7541880a0
      https://github.com/WebKit/WebKit/commit/92081e1caec715794e8d81c8426c87d7541880a0
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-10-22 (Wed, 22 Oct 2014)

  Changed paths:
    M Tools/ChangeLog
    M Tools/Scripts/run-gtk-tests
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestInspectorServer.cpp

  Log Message:
  -----------
  Merge r174926 - [GTK] Test TestWebKitAPI/WebKit2Gtk/TestInspectorServer fails
https://bugs.webkit.org/show_bug.cgi?id=132044

Reviewed by Brian Burg.

Tools:

* TestWebKitAPI/Tests/WebKit2Gtk/TestInspectorServer.cpp:
(openRemoteDebuggingSession): Remove trailing slash when
concatenating base inspector URL with the page, because the
inspector returns the relative paths with a leading slash.


  Commit: aee4d932b6626574b764970331b2a6c5d030370f
      https://github.com/WebKit/WebKit/commit/aee4d932b6626574b764970331b2a6c5d030370f
  Author: Sergio Villar Senin <svillar at igalia.com>
  Date:   2014-10-22 (Wed, 22 Oct 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/NetworkProcess/soup/NetworkProcessSoup.cpp
    M Source/WebKit2/WebProcess/soup/WebProcessSoup.cpp

  Log Message:
  -----------
  Merge r174639 - [SOUP] [WK2] WebProcess and NetworkProcess initialization clears cache contents
https://bugs.webkit.org/show_bug.cgi?id=137489

Reviewed by Carlos Garcia Campos.

Temporarily set the SoupCache's maximum size to a huge value
before calling soup_cache_load() so that the cache is not shrinked
to the default value.

* NetworkProcess/soup/NetworkProcessSoup.cpp:
(WebKit::NetworkProcess::platformInitializeNetworkProcess):
* WebProcess/soup/WebProcessSoup.cpp:
(WebKit::WebProcess::platformInitializeWebProcess):


  Commit: 03b3b2428977583ee061775e75ed79347e9433f8
      https://github.com/WebKit/WebKit/commit/03b3b2428977583ee061775e75ed79347e9433f8
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-10-22 (Wed, 22 Oct 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp
    M Source/WebKit2/Shared/Plugins/PluginQuirks.h
    M Source/WebKit2/WebProcess/Plugins/Netscape/NetscapePlugin.cpp

  Log Message:
  -----------
  Merge r174507 - [X11] Plugin process crashes in NetscapePlugin::platformPostInitialize()
https://bugs.webkit.org/show_bug.cgi?id=137426

Reviewed by Darin Adler.

For some reason flash crashes when NPP_GetValue is called with
NPPVpluginCancelSrcStream, but only in windowed mode. Not calling
NPP_GetValue and unconditionally loading the source URL in the
browser fixes the crash and plugins work normally. We can handle
this particular case with a new quirk.

* Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:
(WebKit::NetscapePluginModule::determineQuirks): Add
DoNotCancelSrcStreamInWindowedMode quirk if it's flash plugin.
* Shared/Plugins/PluginQuirks.h: Add
DoNotCancelSrcStreamInWindowedMode quirk.
* WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
(WebKit::NetscapePlugin::shouldLoadSrcURL): Return early if plugin
is windowed and DoNotCancelSrcStreamInWindowedMode quirk is present.


  Commit: dcaff7faeecc1726c55db9e7be7be77e6edd35bc
      https://github.com/WebKit/WebKit/commit/dcaff7faeecc1726c55db9e7be7be77e6edd35bc
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2014-10-22 (Wed, 22 Oct 2014)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp
    M Tools/ChangeLog
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestSSL.cpp

  Log Message:
  -----------
  Merge r174394 - [SOUP] TLS errors should take precedence over HTTP authentication
https://bugs.webkit.org/show_bug.cgi?id=137300

Reviewed by Sergio Villar Senin.

Source/WebCore:

Handle TLS errors in got-headers callback to make sure it happens
before starting the authentication process.

* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::handleUnignoredTLSErrors): Refactored to receive the
soup message.
(WebCore::gotHeadersCallback): Return early and cancel the request in case of TLS errors.
(WebCore::sendRequestCallback): Do not handle TLS errors here, the request should have already been
cancelled at this point in case of TLS errors.

Tools:

Add a test case to check that authenticate signal is not emitted
in case of TLS errors, and the load fails instead.

* TestWebKitAPI/Tests/WebKit2Gtk/TestSSL.cpp:
(webViewAuthenticationCallback):
(testTLSErrorsHTTPAuth):
(httpsServerCallback):
(beforeAll):


  Commit: 4ed9e43ecc4a533e4780136044913ffa2206a262
      https://github.com/WebKit/WebKit/commit/4ed9e43ecc4a533e4780136044913ffa2206a262
  Author: Alberto Garcia <berto at igalia.com>
  Date:   2014-10-22 (Wed, 22 Oct 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/API/gtk/WebKitEnumTypes.h.template

  Log Message:
  -----------
  Merge r174008 - [GTK] Don't include full path names in WebKitEnumTypes.h
https://bugs.webkit.org/show_bug.cgi?id=137148

Reviewed by Carlos Garcia Campos.

Replace @filename@ with @basename@ in the template, since we don't
want to include the full path name in the generated header.

* UIProcess/API/gtk/WebKitEnumTypes.h.template:


  Commit: 7a867f8492ddfd33e0aae5fe543412b50788f3bf
      https://github.com/WebKit/WebKit/commit/7a867f8492ddfd33e0aae5fe543412b50788f3bf
  Author: Michael Catanzaro <mcatanzaro at igalia.com>
  Date:   2014-10-22 (Wed, 22 Oct 2014)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/gtk/MainGtk.cpp
    M Source/WebKit2/unix/NetworkMainUnix.cpp

  Log Message:
  -----------
  Merge r174927 - [SOUP] Disable SSLv3
https://bugs.webkit.org/show_bug.cgi?id=137859

Patch by Michael Catanzaro <mcatanzaro at igalia.com> on 2014-10-21
Reviewed by Carlos Garcia Campos.

Set G_TLS_GNUTLS_PRIORITY if unset.

* NetworkProcess/EntryPoint/unix/NetworkProcessMain.cpp:
(main):
* WebProcess/EntryPoint/unix/WebProcessMain.cpp:
(main):


  Commit: 9c052fea3d25464c24bef6315250007af9b9250d
      https://github.com/WebKit/WebKit/commit/9c052fea3d25464c24bef6315250007af9b9250d
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2014-10-22 (Wed, 22 Oct 2014)

  Changed paths:
    M ChangeLog
    M Source/WebKit/gtk/ChangeLog
    M Source/WebKit/gtk/NEWS
    M Source/autotools/Versions.m4

  Log Message:
  -----------
  Unreviewed. Update NEWS and Versions.m4 for 2.4.7 release.

.:

* Source/autotools/Versions.m4: Bump version numbers.

Source/WebKit/gtk:

* NEWS: Added release notes for 2.4.7.


  Commit: 1cb128a5f129eb44bf5e26f224d4c6cde55f1291
      https://github.com/WebKit/WebKit/commit/1cb128a5f129eb44bf5e26f224d4c6cde55f1291
  Author: Žan Doberšek <zdobersek at igalia.com>
  Date:   2015-01-05 (Mon, 05 Jan 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/GNUmakefile.list.am

  Log Message:
  -----------
  webkit-gtk 2.3.3 fails on darwin/quartz due to duplicate symbols in WebCore
https://bugs.webkit.org/show_bug.cgi?id=126821

Patch by Zan Dobersek <zdobersek at igalia.com> on 2015-01-05
Reviewed by Carlos Garcia Campos.

* GNUmakefile.list.am: Simplify the logic for determining build
targets that are specific to windowing targets. Avoid nested target
checks and list all the additional build targets for each windowing
target - X11, Wayland, X11 and Wayland (i.e. the build targets that
are shared between the two configurations), Win32 and Quartz. This
avoids the current problems of building duplicate build targets on
Quartz, and also cleans up the list.


  Commit: 7b2c198241490fc505ecd06d10698b5795d41609
      https://github.com/WebKit/WebKit/commit/7b2c198241490fc505ecd06d10698b5795d41609
  Author: Philip Chimento <philip.chimento at gmail.com>
  Date:   2015-01-05 (Mon, 05 Jan 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/GNUmakefile.list.am

  Log Message:
  -----------
  webkit-gtk 2.3.3 fails on darwin/quartz due to duplicate symbols in WebCore
https://bugs.webkit.org/show_bug.cgi?id=126821

Patch by Philip Chimento <philip.chimento at gmail.com> on 2014-10-06
Reviewed by Carlos Garcia Campos.

* GNUmakefile.list.am: Add WidgetBackingStoreCairo to platformgtk_sources
for the Quartz build target, otherwise WebKitGTK aborts with an undefined
symbol at runtime.


  Commit: ed8e05f1d1fa810f4ed3734eaf9bfa2530772e97
      https://github.com/WebKit/WebKit/commit/ed8e05f1d1fa810f4ed3734eaf9bfa2530772e97
  Author: Philip Chimento <philip.chimento at gmail.com>
  Date:   2015-01-05 (Mon, 05 Jan 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/plugins/PluginPackageNone.cpp

  Log Message:
  -----------
  webkit-gtk 2.3.3 fails on darwin/quartz due to duplicate symbols in WebCore
https://bugs.webkit.org/show_bug.cgi?id=126821

Patch by Philip Chimento <philip.chimento at gmail.com> on 2014-10-06
Reviewed by Carlos Garcia Campos.

* plugins/PluginPackageNone.cpp: Remove PluginPackage::determineQuirks()
from PluginPackageNone.cpp as it also shows up as a duplicate symbol.


  Commit: 7f95f75bb9237409f5a246c9eb807b7287ec30dd
      https://github.com/WebKit/WebKit/commit/7f95f75bb9237409f5a246c9eb807b7287ec30dd
  Author: Filip Pizlo <fpizlo at apple.com>
  Date:   2015-01-05 (Mon, 05 Jan 2015)

  Changed paths:
    M Source/JavaScriptCore/ChangeLog
    M Source/JavaScriptCore/dfg/DFGAbstractInterpreterInlines.h

  Log Message:
  -----------
  Merge r167341 - Unreviewed, add the obvious thing that marks MakeRope as exiting since it can exit.

* dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):


  Commit: 3b0b4fc69be6520f4b55ce7fc60275871b637b8a
      https://github.com/WebKit/WebKit/commit/3b0b4fc69be6520f4b55ce7fc60275871b637b8a
  Author: Alexey Proskuryakov <ap at webkit.org>
  Date:   2015-01-05 (Mon, 05 Jan 2015)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/WebPageProxy.cpp

  Log Message:
  -----------
  Merge r166810 - Improve error checking in WebPageProxy::didReceiveEvent
https://bugs.webkit.org/show_bug.cgi?id=131243
<rdar://problem/16529207>

Reviewed by Anders Carlsson.

* UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::didReceiveEvent):


  Commit: 8ff96de0ed5375dec702f4138026e5b0816f1733
      https://github.com/WebKit/WebKit/commit/8ff96de0ed5375dec702f4138026e5b0816f1733
  Author: Jon Honeycutt <jhoneycutt at apple.com>
  Date:   2015-01-05 (Mon, 05 Jan 2015)

  Changed paths:
    M LayoutTests/ChangeLog
    M LayoutTests/compositing/plugins/composited-plugin.html
    M LayoutTests/compositing/plugins/no-backing-store.html
    M LayoutTests/fast/dom/beforeload/flash-before-load.html
    A LayoutTests/fast/events/beforeload-assertion-expected.txt
    A LayoutTests/fast/events/beforeload-assertion.html
    A LayoutTests/fast/events/beforeload-iframe-crash-expected.txt
    A LayoutTests/fast/events/beforeload-iframe-crash.html
    A LayoutTests/fast/events/beforeload-input-time-crash-expected.txt
    A LayoutTests/fast/events/beforeload-input-time-crash.html
    M LayoutTests/http/tests/security/contentSecurityPolicy/1.1/plugintypes-notype-data.html
    M LayoutTests/http/tests/security/contentSecurityPolicy/1.1/plugintypes-nourl-blocked.html
    M LayoutTests/http/tests/security/contentSecurityPolicy/object-src-no-url-allowed.html
    M LayoutTests/http/tests/security/contentSecurityPolicy/object-src-no-url-blocked.html
    M LayoutTests/http/tests/security/contentSecurityPolicy/object-src-none-allowed.html
    M LayoutTests/http/tests/security/contentSecurityPolicy/object-src-none-blocked.html
    M LayoutTests/http/tests/security/contentSecurityPolicy/resources/multiple-iframe-plugin-test.js
    M LayoutTests/http/tests/security/mixedContent/insecure-plugin-in-iframe.html
    M LayoutTests/platform/mac/plugins/supports-carbon-event-model.html
    M LayoutTests/platform/mac/plugins/testplugin-onnew-onpaint.html
    M LayoutTests/plugins/get-user-agent-with-null-npp-from-npp-new.html
    M LayoutTests/plugins/mouse-click-plugin-clears-selection.html
    M LayoutTests/plugins/netscape-plugin-map-data-to-src.html
    M LayoutTests/plugins/no-mime-with-valid-extension.html
    M LayoutTests/plugins/plugin-initiate-popup-window.html
    M LayoutTests/plugins/windowless_plugin_paint_test.html
    A LayoutTests/resources/plugin.js
    M Source/WebCore/ChangeLog
    M Source/WebCore/WebCore.exp.in
    M Source/WebCore/dom/Document.cpp
    M Source/WebCore/dom/Document.h
    M Source/WebCore/html/HTMLAppletElement.cpp
    M Source/WebCore/html/HTMLEmbedElement.cpp
    M Source/WebCore/html/HTMLObjectElement.cpp
    M Source/WebCore/page/FrameView.cpp
    M Source/WebCore/page/FrameView.h
    M Source/WebCore/testing/Internals.cpp
    M Source/WebCore/testing/Internals.h
    M Source/WebCore/testing/Internals.idl
    M Source/WebKit/ChangeLog

  Log Message:
  -----------
  Merge r169475 - Don't dispatch 'beforeload' event inside FrameView::layout()

<https://bugs.webkit.org/show_bug.cgi?id=132621>

Reviewed by Brent Fulgham.

Source/WebCore:
Tests: fast/events/beforeload-assertion.html
       fast/events/beforeload-iframe-crash.html
       fast/events/beforeload-input-time-crash.html

* WebCore.exp.in:
* dom/Document.cpp:
(WebCore::Document::updateLayoutIgnorePendingStylesheets):
* dom/Document.h:
* html/HTMLAppletElement.cpp:
(WebCore::HTMLAppletElement::renderWidgetForJSBindings):
* html/HTMLEmbedElement.cpp:
(WebCore::HTMLEmbedElement::renderWidgetForJSBindings):
* html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::renderWidgetForJSBindings):
* page/FrameView.cpp:
(WebCore::FrameView::FrameView):
(WebCore::FrameView::reset):
(WebCore::FrameView::updateEmbeddedObjectsTimerFired):
(WebCore::FrameView::flushAnyPendingPostLayoutTasks):
(WebCore::FrameView::performPostLayoutTasks):
* page/FrameView.h:
* testing/Internals.cpp:
(WebCore::Internals::updateLayoutIgnorePendingStylesheetsAndRunPostLayoutTasks):
* testing/Internals.h:
* testing/Internals.idl:

Source/WebKit:
* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:

LayoutTests:
* compositing/plugins/composited-plugin.html:
* compositing/plugins/no-backing-store.html:
* fast/dom/beforeload/flash-before-load.html:
* fast/events/beforeload-assertion-expected.txt: Added.
* fast/events/beforeload-assertion.html: Added.
* fast/events/beforeload-iframe-crash-expected.txt: Added.
* fast/events/beforeload-iframe-crash.html: Added.
* fast/events/beforeload-input-time-crash-expected.txt: Added.
* fast/events/beforeload-input-time-crash.html: Added.
* http/tests/security/contentSecurityPolicy/1.1/plugintypes-notype-data.html:
* http/tests/security/contentSecurityPolicy/1.1/plugintypes-nourl-blocked.html:
* http/tests/security/contentSecurityPolicy/object-src-no-url-allowed.html:
* http/tests/security/contentSecurityPolicy/object-src-no-url-blocked.html:
* http/tests/security/contentSecurityPolicy/object-src-none-allowed.html:
* http/tests/security/contentSecurityPolicy/object-src-none-blocked.html:
* http/tests/security/contentSecurityPolicy/resources/multiple-iframe-plugin-test.js:
(testImpl.iframe.onload):
(testImpl):
* http/tests/security/mixedContent/insecure-plugin-in-iframe.html:
* platform/mac/plugins/supports-carbon-event-model.html:
* platform/mac/plugins/testplugin-onnew-onpaint.html:
* plugins/get-user-agent-with-null-npp-from-npp-new.html:
* plugins/mouse-click-plugin-clears-selection.html:
* plugins/netscape-plugin-map-data-to-src.html:
* plugins/no-mime-with-valid-extension.html:
* plugins/plugin-initiate-popup-window.html:
* plugins/windowless_plugin_paint_test.html:
* resources/plugin.js: Added.
(runAfterPluginLoad):


Conflicts:
	Source/WebKit/WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in


  Commit: b4f6197935c55cb5572801cc49e9385928e91793
      https://github.com/WebKit/WebKit/commit/b4f6197935c55cb5572801cc49e9385928e91793
  Author: Alexey Proskuryakov <ap at webkit.org>
  Date:   2015-01-05 (Mon, 05 Jan 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/editing/TextIterator.cpp

  Log Message:
  -----------
  Merge r169726 - Properly reset UStringSearch object in SearchBuffer constructor.
https://bugs.webkit.org/show_bug.cgi?id=133662
<rdar://problem/17240136>

Reviewed by Tim Horton.

* editing/TextIterator.cpp: (WebCore::SearchBuffer::~SearchBuffer):


  Commit: 791079631f78b9efd05bcadf5aa91ca09fe813ad
      https://github.com/WebKit/WebKit/commit/791079631f78b9efd05bcadf5aa91ca09fe813ad
  Author: Chris Fleizach <cfleizach at apple.com>
  Date:   2015-01-05 (Mon, 05 Jan 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/accessibility/AXObjectCache.cpp

  Log Message:
  -----------
  Merge r170026 - AX: Crash at WebCore::AXObjectCache::textChanged
https://bugs.webkit.org/show_bug.cgi?id=133873

Reviewed by Enrica Casucci.

This looks like a very similar problem to
https://bugs.webkit.org/show_bug.cgi?id=133825

The object is being created and deallocated almost right away because calling accessibilityIsIgnored triggers
a deferred layout that invalidates the associated render element.

Despite my best efforts, I could not come up with a way to reproduce this in a layout test.

* accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::getOrCreate):


  Commit: 5ec4cdd4784849f60ec35a3150bc035ce10f51b6
      https://github.com/WebKit/WebKit/commit/5ec4cdd4784849f60ec35a3150bc035ce10f51b6
  Author: Chris Fleizach <cfleizach at apple.com>
  Date:   2015-01-05 (Mon, 05 Jan 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/accessibility/AXObjectCache.cpp
    M Source/WebCore/accessibility/AccessibilityObject.cpp

  Log Message:
  -----------
  Merge r170028 - AX: Safari crashed once in WebCore::AccessibilityObject::ariaIsHidden
https://bugs.webkit.org/show_bug.cgi?id=133825

Reviewed by Enrica Casucci.

Sometimes asking accessibilityIsIgnored() will cause a newObject to be detached immediately after its created.
The creation function holds a reference with RefPtr as long as it lives, but when that method returns, the object goes away.

With that out of the way, I saw the same backtrace lead to updateLayoutIgnorePendingStylesheets being called while still inLayout.

I tried my best but could not create a reproducible layout test.

* accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::getOrCreate):
* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::updateBackingStore):


  Commit: b590c4172d1f714c3d57e07606fd4a030eaa4e57
      https://github.com/WebKit/WebKit/commit/b590c4172d1f714c3d57e07606fd4a030eaa4e57
  Author: Jeffrey Pfau <jeffrey+webkit at endrift.com>
  Date:   2015-01-05 (Mon, 05 Jan 2015)

  Changed paths:
    M LayoutTests/ChangeLog
    M Source/WebCore/ChangeLog
    M Source/WebCore/loader/FrameLoader.cpp

  Log Message:
  -----------
  Merge r170135 - Fix flaky beforeload tests
https://bugs.webkit.org/show_bug.cgi?id=133685

Reviewed by David Kilzer.

Source/WebCore:
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::loadURL):

LayoutTests:
* platform/wk2/TestExpectations: Unskip tests that are no longer flaky


  Commit: f83d800e7064d40f8a6245e9da4efdfe6102e5ee
      https://github.com/WebKit/WebKit/commit/f83d800e7064d40f8a6245e9da4efdfe6102e5ee
  Author: Jeffrey Pfau <jeffrey+webkit at endrift.com>
  Date:   2015-01-05 (Mon, 05 Jan 2015)

  Changed paths:
    M LayoutTests/ChangeLog
    M Source/WebCore/ChangeLog
    M Source/WebCore/loader/FrameLoader.cpp

  Log Message:
  -----------
  Merge r170946 - Fix flaky loading tests
https://bugs.webkit.org/show_bug.cgi?id=133696

Reviewed by Ryosuke Niwa.

Source/WebCore:
In some cases, the Frame may be destroyed while the loader is
initializing. Make sure we don't delete it too early.

* loader/FrameLoader.cpp:
(WebCore::FrameLoader::init):

LayoutTests:
* platform/wk2/TestExpectations: Unskip no-longer failing tests


  Commit: db5dfefc6d38541ad020b055539e8c5903d47864
      https://github.com/WebKit/WebKit/commit/db5dfefc6d38541ad020b055539e8c5903d47864
  Author: Alexey Proskuryakov <ap at webkit.org>
  Date:   2015-01-05 (Mon, 05 Jan 2015)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/PluginProcess/PluginControllerProxy.cpp

  Log Message:
  -----------
  Merge r169757 - Fix crashes on some plug-in tests.
https://bugs.webkit.org/show_bug.cgi?id=133691
<rdar://problem/17255836>

Reviewed by Anders Carlsson.

* PluginProcess/PluginControllerProxy.cpp: (WebKit::PluginControllerProxy::initialize):
Cannot use TemporaryChange here, because the object may go away before stack unwinds.


  Commit: 89cc4361cef6d2e7890691dbdb00e42dc6af263e
      https://github.com/WebKit/WebKit/commit/89cc4361cef6d2e7890691dbdb00e42dc6af263e
  Author: Miyoung Shin <myid.shin at samsung.com>
  Date:   2015-01-05 (Mon, 05 Jan 2015)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/events/touch/create-touch-event-without-touchList-expected.txt
    A LayoutTests/fast/events/touch/create-touch-event-without-touchList.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/dom/EventDispatcher.cpp

  Log Message:
  -----------
  Merge r167805 - Web process is crashed during dispatching touchEvent created by JS.
https://bugs.webkit.org/show_bug.cgi?id=113225

Patch by Miyoung Shin <myid.shin at samsung.com> on 2014-04-25
Reviewed by Benjamin Poulain.

TouchEvent created by JS should have the necessary attributes
of touches, targetTouches and changedTouches.
It should be verified weather there are touchLists before dispatching touch event.

Source/WebCore:
Test: fast/events/touch/create-touch-event-without-touchList.html

* dom/EventDispatcher.cpp:
(WebCore::EventDispatcher::dispatchEvent):
(WebCore::EventPath::updateTouchLists):
(WebCore::addRelatedNodeResolversForTouchList): Deleted.

LayoutTests:
* fast/events/touch/create-touch-event-without-touchList-expected.txt: Added.
* fast/events/touch/create-touch-event-without-touchList.html: Added.


  Commit: 5c61117cc266382323c9da8d0abedba70cd80c1b
      https://github.com/WebKit/WebKit/commit/5c61117cc266382323c9da8d0abedba70cd80c1b
  Author: Philip Chimento <philip.chimento at gmail.com>
  Date:   2015-01-05 (Mon, 05 Jan 2015)

  Changed paths:
    M Source/JavaScriptCore/ChangeLog
    M Source/JavaScriptCore/GNUmakefile.am

  Log Message:
  -----------
  webkit-gtk fails to link JavaScriptCore, missing symbols add_history and readline
https://bugs.webkit.org/show_bug.cgi?id=127059

Patch by Philip Chimento <philip.chimento at gmail.com> on 2014-10-06
Reviewed by Carlos Garcia Campos.

* GNUmakefile.am: add -ledit to jsc link args on OS_DARWIN.


  Commit: ef35d26a8c28c7715241c54ca9015bd4bebc08b4
      https://github.com/WebKit/WebKit/commit/ef35d26a8c28c7715241c54ca9015bd4bebc08b4
  Author: Carlos Alberto Lopez Perez <clopez at igalia.com>
  Date:   2015-01-05 (Mon, 05 Jan 2015)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/gtk/MainGtk.cpp
    M Source/WebKit2/unix/NetworkMainUnix.cpp

  Log Message:
  -----------
  Merge r176252 - [SOUP] [GnuTLS] Don't use a SSL3.0 record version in client hello.
https://bugs.webkit.org/show_bug.cgi?id=138794

Reviewed by Sergio Villar Senin.

It seems that following POODLE many sites incorrectly banned SSL 3.0
record packet versions. Since GnuTLS uses a SSL 3.0 record to
advertise TLS 1.2, they are effectively banning it even if it doesn't
advertise SSL 3.0. That is a server issue, but it can be worked around
by using the modifier %LATEST_RECORD_VERSION.

With this modifier, GnuTLS will use the latest TLS version record
in client hello instead of using the default SSL 3.0.

* NetworkProcess/EntryPoint/unix/NetworkProcessMain.cpp:
(main):
* WebProcess/EntryPoint/unix/WebProcessMain.cpp:
(main):


  Commit: e8ae0fede5f81836229f730d91235281c02f1e08
      https://github.com/WebKit/WebKit/commit/e8ae0fede5f81836229f730d91235281c02f1e08
  Author: Alberto Garcia <berto at igalia.com>
  Date:   2015-01-05 (Mon, 05 Jan 2015)

  Changed paths:
    M Source/WTF/ChangeLog
    M Source/WTF/wtf/InlineASM.h
    M Source/WTF/wtf/Platform.h

  Log Message:
  -----------
  Merge r175115 - [GTK] Fix build on Hurd
https://bugs.webkit.org/show_bug.cgi?id=138003

Reviewed by Carlos Garcia Campos.

* wtf/InlineASM.h:
* wtf/Platform.h:


  Commit: bc4225ce3ce688067c2a24df48e1745baaf4c2f2
      https://github.com/WebKit/WebKit/commit/bc4225ce3ce688067c2a24df48e1745baaf4c2f2
  Author: Alberto Garcia <berto at igalia.com>
  Date:   2015-01-05 (Mon, 05 Jan 2015)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp

  Log Message:
  -----------
  Merge r175696 - [GTK] [Stable] webkitgtk 2.6.1 fails to load flashplugin
https://bugs.webkit.org/show_bug.cgi?id=137849

Reviewed by Carlos Garcia Campos.

NPPVpluginNeedsXEmbed is a boolean value, so it should normally
use an NPBool (1 byte). However some plugins (the Flash player in
particular) are using an int instead, so we have to do it as well
else we'll end up corrupting the stack.

* WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:
(WebKit::NetscapePlugin::platformPostInitialize):


  Commit: df0d885c70375527c9ceb3a24a88b787de3e0f4e
      https://github.com/WebKit/WebKit/commit/df0d885c70375527c9ceb3a24a88b787de3e0f4e
  Author: Doron Wloschowsky <doron_wloschowsky at scee.net>
  Date:   2015-01-05 (Mon, 05 Jan 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/graphics/harfbuzz/HarfBuzzFaceCairo.cpp

  Log Message:
  -----------
  Merge r176945 - Webkit using Harfbuzz does not display Arabic script correctly
https://bugs.webkit.org/show_bug.cgi?id=136337

Patch by Doron Wloschowsky <doron_wloschowsky at scee.net> on 2014-12-08
Reviewed by Carlos Garcia Campos.

Using reinterpret_cast to convert hb_codepoint_t* into UChar*
doesn't work on big endian systems.

* platform/graphics/harfbuzz/HarfBuzzFaceCairo.cpp:
(WebCore::harfBuzzGetGlyph):


  Commit: e6017b7cd4fae443c1f87355cc68c9db4f7b2a10
      https://github.com/WebKit/WebKit/commit/e6017b7cd4fae443c1f87355cc68c9db4f7b2a10
  Author: David Kilzer <ddkilzer at webkit.org>
  Date:   2015-01-05 (Mon, 05 Jan 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/dom/ProcessingInstruction.cpp

  Log Message:
  -----------
  Merge r175974 - Protect Document in ProcessingInstruction::setXSLStyleSheet()
<http://webkit.org/b/138621>

Reviewed by Andreas Kling.

The patch is inspired by the following Blink revision by
<tasak at google.com>:
<https://src.chromium.org/viewvc/blink?view=rev&revision=182309>

* dom/ProcessingInstruction.cpp:
(WebCore::ProcessingInstruction::setXSLStyleSheet):


  Commit: d7fa5229611b1a50c3932a26692172d440a48980
      https://github.com/WebKit/WebKit/commit/d7fa5229611b1a50c3932a26692172d440a48980
  Author: Csaba Osztrogonác <ossy at webkit.org>
  Date:   2015-01-05 (Mon, 05 Jan 2015)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/editing/execCommand/crash-137961-expected.txt
    A LayoutTests/editing/execCommand/crash-137961.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/editing/ApplyStyleCommand.cpp

  Log Message:
  -----------
  Merge r175809 - Crash in WebCore::Node::getFlag
https://bugs.webkit.org/show_bug.cgi?id=137961

Reviewed by Antti Koivisto.

Source/WebCore:

* editing/ApplyStyleCommand.cpp:
(WebCore::ApplyStyleCommand::applyBlockStyle): Null pointer check added.

LayoutTests:

* editing/execCommand/crash-137961-expected.txt: Added.
* editing/execCommand/crash-137961.html: Added.


  Commit: 89588c3c4b8e8c43e5c98570e0d46e7137262cd0
      https://github.com/WebKit/WebKit/commit/89588c3c4b8e8c43e5c98570e0d46e7137262cd0
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2015-01-05 (Mon, 05 Jan 2015)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/NetworkProcess/NetworkResourceLoader.cpp

  Log Message:
  -----------
  Merge r176154 - Network process crash when running http/tests/appcache/fallback.html
https://bugs.webkit.org/show_bug.cgi?id=138740

Reviewed by Alexey Proskuryakov.

It happens because ResourceHandle::continueWillSendRequest() is
called with a null request. We could handle that case in the
ResourceHandle, but the thing is tha the behaviour is
not the same for async loads, or when loading in the web
process. In WebResourceLoader::willSendRequest(),
ResourceRequest::willSendRequest() is called, and cancels the load
if the client returns a null request. In this case, the
ResourceLoader is detached and WebResourceLoader::willSendRequest()
returns early without sending the ContinueWillSendRequest message
to the network process. However, for synchronous loads,
NetworkResourceLoader::continueWillSendRequest() is always called.

Fixes http/tests/appcache/fallback.html for GTK port when using
the network process.

* NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::continueWillSendRequest): Do not
call ResourceHandle::continueWillSendRequest() if the client
request is null, since the load is going to be cancelled.


  Commit: 3ed2edf1b9981aa21160049a62b82b4ecfca22da
      https://github.com/WebKit/WebKit/commit/3ed2edf1b9981aa21160049a62b82b4ecfca22da
  Author: Michael Catanzaro <mcatanzaro at igalia.com>
  Date:   2015-01-05 (Mon, 05 Jan 2015)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/UIProcess/API/gtk/WebKitPrintOperation.cpp

  Log Message:
  -----------
  Merge r176316 - [GTK] Error in documentation of webkit_print_operation_get_page_setup()
https://bugs.webkit.org/show_bug.cgi?id=138868

Patch by Michael Catanzaro <mcatanzaro at igalia.com> on 2014-11-19
Reviewed by Carlos Garcia Campos.

Fix copypaste error in documentation of
webkit_print_operation_get_page_setup().

* UIProcess/API/gtk/WebKitPrintOperation.cpp:


  Commit: db2f2901528ea39088fa21ff7bd4b54db4e10dec
      https://github.com/WebKit/WebKit/commit/db2f2901528ea39088fa21ff7bd4b54db4e10dec
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2015-01-07 (Wed, 07 Jan 2015)

  Changed paths:
    M ChangeLog
    M Source/WebKit/gtk/ChangeLog
    M Source/WebKit/gtk/NEWS
    M Source/autotools/Versions.m4

  Log Message:
  -----------
  Unreviewed. Update NEWS and Versions.m4 for 2.4.8 release.

.:

* Source/autotools/Versions.m4: Bump version numbers.

Source/WebKit/gtk:

* NEWS: Added release notes for 2.4.8.


  Commit: 76f2a030ce649b57100ece0b1b083b39f184ea69
      https://github.com/WebKit/WebKit/commit/76f2a030ce649b57100ece0b1b083b39f184ea69
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2015-04-07 (Tue, 07 Apr 2015)

  Changed paths:
    M Source/WTF/ChangeLog
    M Source/WTF/wtf/gobject/GMutexLocker.h
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp
    M Source/WebCore/platform/graphics/gstreamer/VideoSinkGStreamer.cpp
    M Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp

  Log Message:
  -----------
  Unreviewed. Fix the build with newer GLib.

Source/WebCore:

Use WTF::GMutexLocker.

* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::updateTexture):
(WebCore::MediaPlayerPrivateGStreamerBase::triggerRepaint):
(WebCore::MediaPlayerPrivateGStreamerBase::paint):
* platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
(webkitVideoSinkTimeoutCallback):
(webkitVideoSinkRender):
(unlockBufferMutex):
(webkitVideoSinkUnlockStop):
(webkitVideoSinkStart):
* platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
(webKitWebSrcSetProperty):
(webKitWebSrcGetProperty):
(webKitWebSrcStop):
(webKitWebSrcStart):
(webKitWebSrcChangeState):
(webKitWebSrcQueryWithParent):
(webKitWebSrcGetUri):
(webKitWebSrcSetUri):
(webKitWebSrcNeedDataMainCb):
(webKitWebSrcNeedDataCb):
(webKitWebSrcEnoughDataMainCb):
(webKitWebSrcEnoughDataCb):
(webKitWebSrcSeekMainCb):
(webKitWebSrcSeekDataCb):
(webKitWebSrcSetMediaPlayer):
(StreamingClient::createReadBuffer):
(StreamingClient::handleResponseReceived):
(StreamingClient::handleDataReceived):
(StreamingClient::handleNotifyFinished):
(ResourceHandleStreamingClient::wasBlocked):
(ResourceHandleStreamingClient::cannotShowURL):

Source/WTF:

* wtf/gobject/GMutexLocker.h: Move to the WTF namespace.


  Commit: e9be02eb8c4b9c10ad0d3289d8092c149c0a5e10
      https://github.com/WebKit/WebKit/commit/e9be02eb8c4b9c10ad0d3289d8092c149c0a5e10
  Author: Philip Chimento <philip.chimento at gmail.com>
  Date:   2015-04-07 (Tue, 07 Apr 2015)

  Changed paths:
    M ChangeLog
    M Source/autotools/CheckSystemAndBasicDependencies.m4

  Log Message:
  -----------
  configure check for clang version is incorrect
https://bugs.webkit.org/show_bug.cgi?id=126324

Patch by Philip Chimento <philip.chimento at gmail.com> on 2015-04-07
Reviewed by Carlos Garcia Campos.

* Source/autotools/CheckSystemAndBasicDependencies.m4:
Change compiler version checks of Clang and GCC so that they
handle major/minor versions correctly.


  Commit: c26a84709f6faf0d6fb032eeb370a732cd185209
      https://github.com/WebKit/WebKit/commit/c26a84709f6faf0d6fb032eeb370a732cd185209
  Author: Tomáš Popela <tpopela at redhat.com>
  Date:   2015-04-07 (Tue, 07 Apr 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/GNUmakefile.list.am

  Log Message:
  -----------
  REGRESSION(r177885): [GTK][WK1] Cannot compile 2.4.8 when WK2 is disabled
https://bugs.webkit.org/show_bug.cgi?id=140241

Patch by Tomas Popela <tpopela at redhat.com> on 2015-04-07
Reviewed by Carlos Garcia Campos.

We have to compile the PluginPackageNone.cpp and PluginViewNone.cpp
just when WebKit2 is enabled and we are not building for X11.

* GNUmakefile.list.am:


  Commit: a4a9a959aae35971e82c0c7882278189351c38cc
      https://github.com/WebKit/WebKit/commit/a4a9a959aae35971e82c0c7882278189351c38cc
  Author: Magnus Granberg <zorry at gentoo.org>
  Date:   2015-04-07 (Tue, 07 Apr 2015)

  Changed paths:
    M Source/JavaScriptCore/ChangeLog
    M Source/JavaScriptCore/jit/ThunkGenerators.cpp
    M Source/WTF/ChangeLog
    M Source/WTF/wtf/InlineASM.h

  Log Message:
  -----------
  Merge r172759 - TEXTREL in libjavascriptcoregtk-1.0.so.0.11.0 on x86 (or i586)
https://bugs.webkit.org/show_bug.cgi?id=70610

Patch by Magnus Granberg <zorry at gentoo.org> on 2014-08-19
Reviewed by Darin Adler.

Source/JavaScriptCore:

Setup %ebx so we can use the plt.

* jit/ThunkGenerators.cpp:

Source/WTF:

Add PLT if we're building with PIC.

* wtf/InlineASM.h:


  Commit: aec38321d08c5e5319292874060506e7be2393e5
      https://github.com/WebKit/WebKit/commit/aec38321d08c5e5319292874060506e7be2393e5
  Author: Alan Bujtas <zalan at apple.com>
  Date:   2015-04-07 (Tue, 07 Apr 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/html/SearchInputType.cpp

  Log Message:
  -----------
  Merge r175158 - WebContent crash at WebCore::RenderTextControl::textFormControlElement const.
https://bugs.webkit.org/show_bug.cgi?id=138035

Reviewed by Antti Koivisto.

NULL-check element().renderer() before using it.

* html/SearchInputType.cpp:
(WebCore::SearchInputType::didSetValueByUserEdit):


  Commit: 1236d22278087b34b08e16b62c098011046e8f08
      https://github.com/WebKit/WebKit/commit/1236d22278087b34b08e16b62c098011046e8f08
  Author: Jeffrey Pfau <jeffrey+webkit at endrift.com>
  Date:   2015-04-07 (Tue, 07 Apr 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/loader/FrameLoader.cpp

  Log Message:
  -----------
  Merge r175277 - FrameProgressTracker expects Page to not have detached
https://bugs.webkit.org/show_bug.cgi?id=138061

Reviewed by Alexey Proskuryakov.

In some cases, a Page may be detached from a Frame before its
FrameLoader is torn down, causing FrameProgressTracker's destructor
to hit a null pointer.

No new tests; it is impossible to reliably simulate the null pointer
case without intrusive code changes.

* loader/FrameLoader.cpp:
(WebCore::FrameLoader::FrameProgressTracker::~FrameProgressTracker):


  Commit: a39a4c4e8e8708a1b4879bf4a3c4ed6cbce76b09
      https://github.com/WebKit/WebKit/commit/a39a4c4e8e8708a1b4879bf4a3c4ed6cbce76b09
  Author: Alexey Proskuryakov <ap at webkit.org>
  Date:   2015-04-07 (Tue, 07 Apr 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/page/Page.cpp
    M Source/WebCore/page/Settings.cpp
    M Source/WebCore/page/Settings.h

  Log Message:
  -----------
  Merge r175347 - Notify Settings object when its Page object goes away.
https://bugs.webkit.org/show_bug.cgi?id=138183
rdar://problem/18786900

Reviewed by Andreas Kling.

I could not make a test for this issue.

* page/Page.cpp:
(WebCore::Page::~Page):
* page/Settings.cpp:
(WebCore::setImageLoadingSettings):
(WebCore::Settings::Settings):
(WebCore::Settings::setTextAutosizingEnabled):
(WebCore::Settings::setTextAutosizingWindowSizeOverride):
(WebCore::Settings::setTextAutosizingFontScaleFactor):
(WebCore::Settings::setMediaTypeOverride):
(WebCore::Settings::setScriptEnabled):
(WebCore::Settings::setUserStyleSheetLocation):
(WebCore::Settings::setMinDOMTimerInterval):
(WebCore::Settings::minDOMTimerInterval):
(WebCore::Settings::domTimerAlignmentInterval):
(WebCore::Settings::setUsesPageCache):
(WebCore::Settings::setScreenFontSubstitutionEnabled):
(WebCore::Settings::setFontRenderingMode):
(WebCore::Settings::setDNSPrefetchingEnabled):
(WebCore::Settings::setStorageBlockingPolicy):
(WebCore::Settings::setBackgroundShouldExtendBeyondPage):
(WebCore::Settings::setScrollingPerformanceLoggingEnabled):
(WebCore::Settings::setHiddenPageDOMTimerThrottlingEnabled):
(WebCore::Settings::setHiddenPageCSSAnimationSuspensionEnabled):
(WebCore::Settings::setFontFallbackPrefersPictographs):
* page/Settings.h:
(WebCore::Settings::pageDestroyed):


  Commit: 27b2c4d57f367ff319e98f5fb4e91dba33bf8b55
      https://github.com/WebKit/WebKit/commit/27b2c4d57f367ff319e98f5fb4e91dba33bf8b55
  Author: Joanmarie Diggs <jdiggs at igalia.com>
  Date:   2015-04-07 (Tue, 07 Apr 2015)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/platform/gtk/accessibility/menu-list-unfocused-notifications-expected.txt
    A LayoutTests/platform/gtk/accessibility/menu-list-unfocused-notifications.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/accessibility/atk/AXObjectCacheAtk.cpp

  Log Message:
  -----------
  Merge r176076 - AX: [ATK] Accessible focus events are emitted when the selection is changed in non-focused combo boxes
https://bugs.webkit.org/show_bug.cgi?id=137866

Reviewed by Mario Sanchez Prada.

Source/WebCore:

Check that the AccessibilityMenuList is really focused before notifying
the platform that it is focused. Likewise, only notify the platform of
an AccessibilityMenuListOption focus gain if the AccessibilityMenuList
containing that option is expanded.

Test: platform/gtk/accessibility/menu-list-unfocused-notifications.html

* accessibility/atk/AXObjectCacheAtk.cpp:
(WebCore::notifyChildrenSelectionChange):
(WebCore::AXObjectCache::postPlatformNotification):

LayoutTests:

* platform/gtk/accessibility/menu-list-unfocused-notifications-expected.txt: Added.
* platform/gtk/accessibility/menu-list-unfocused-notifications.html: Added.


  Commit: 3b8cc2b39853baf01214b9a8abcee0ae862e6731
      https://github.com/WebKit/WebKit/commit/3b8cc2b39853baf01214b9a8abcee0ae862e6731
  Author: Joanmarie Diggs <jdiggs at igalia.com>
  Date:   2015-04-07 (Tue, 07 Apr 2015)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/platform/gtk/accessibility/detached-object-role-expected.txt
    A LayoutTests/platform/gtk/accessibility/detached-object-role.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/accessibility/atk/WebKitAccessibleWrapperAtk.cpp
    M Tools/ChangeLog
    M Tools/WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp

  Log Message:
  -----------
  Merge r176091 - AX: [ATK] Do not return ATK_ROLE_UNKNOWN for null or otherwise invalid accessible objects
https://bugs.webkit.org/show_bug.cgi?id=137867

Reviewed by Chris Fleizach.

Source/WebCore:

Return ATK_ROLE_INVALID for null or otherwise invalid accessible objects.

Test: platform/gtk/accessibility/detached-object-role.html

* accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(webkitAccessibleGetRole):

Tools:

Add ATK_ROLE_INVALID to roleToString. Remove the null AtkRole check in
AccessibilityUIElement::role: ATK_ROLE_INVALID = 0, and we need to be
able to test for the presence of ATK_ROLE_INVALID.

* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::role):

LayoutTests:

* platform/gtk/accessibility/detached-object-role-expected.txt: Added.
* platform/gtk/accessibility/detached-object-role.html: Added.


  Commit: d504a60928c885ba90c6f765d3fb2d76bba5e22b
      https://github.com/WebKit/WebKit/commit/d504a60928c885ba90c6f765d3fb2d76bba5e22b
  Author: Joanmarie Diggs <jdiggs at igalia.com>
  Date:   2015-04-07 (Tue, 07 Apr 2015)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/platform/gtk/accessibility/combobox-descendants-orientation-crash-expected.txt
    A LayoutTests/platform/gtk/accessibility/combobox-descendants-orientation-crash.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/accessibility/AccessibilityMenuListOption.cpp

  Log Message:
  -----------
  Merge r176254 - AX: [ATK] Crash getting the orientation of a MenuListOption after the MenuList was removed from the document
https://bugs.webkit.org/show_bug.cgi?id=138727

Reviewed by Chris Fleizach.

Source/WebCore:

AccessibilityMenuListOption::elementRect() returns the value of the
grandparent MenuList, asserting that the grandparent exists with that
role. But it is possible to have an existing MenuListOption and remove
the element which had been backing that MenuList from the document.
Adding null checks prior to the assertions prevents our crashing if the
parent or grandparent was removed.

Test: platform/gtk/accessibility/combobox-descendants-orientation-crash.html

* accessibility/AccessibilityMenuListOption.cpp:
(WebCore::AccessibilityMenuListOption::elementRect):

LayoutTests:

* platform/gtk/accessibility/combobox-descendants-orientation-crash-expected.txt: Added.
* platform/gtk/accessibility/combobox-descendants-orientation-crash.html: Added.


  Commit: 21ad1bab8f9a2ca87395b108305e91812a5de4d7
      https://github.com/WebKit/WebKit/commit/21ad1bab8f9a2ca87395b108305e91812a5de4d7
  Author: Alan Bujtas <zalan at apple.com>
  Date:   2015-04-07 (Tue, 07 Apr 2015)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/editing/selection/clearselection-on-detached-subtree-crash-expected.txt
    A LayoutTests/editing/selection/clearselection-on-detached-subtree-crash.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/rendering/RenderBox.cpp
    M Source/WebCore/rendering/RenderView.cpp

  Log Message:
  -----------
  Merge r178231 - Calling clearSelection on a detached RenderObject leads to segfault.
https://bugs.webkit.org/show_bug.cgi?id=140275

Reviewed by Simon Fraser.

We collect selection rects and compute selection gaps in order to
paint/clear selection. With certain content, we need to be able
to walk the tree up to a particular container to compute the selection rect.
However this container might not be available when the selection is part of a detached tree.
This is a null-check fix to ensure we don't crash in such cases, but in the long run
selection gaps and rect should be cached between two layouts so that we don't need to
keep collecting/recomputing them. Tracked here: webkit.org/b/140321

Source/WebCore:

Test: editing/selection/clearselection-on-detached-subtree-crash.html

* rendering/RenderBox.cpp:
(WebCore::RenderBox::containingBlockLogicalWidthForContent):
(WebCore::RenderBox::containingBlockLogicalHeightForContent):
* rendering/RenderView.cpp:
(WebCore::RenderView::clearSelection):

LayoutTests:

* editing/selection/clearselection-on-detached-subtree-crash-expected.txt: Added.
* editing/selection/clearselection-on-detached-subtree-crash.html: Added.


  Commit: 37453e096c9e8d84f2a10a5f537230928dd284f0
      https://github.com/WebKit/WebKit/commit/37453e096c9e8d84f2a10a5f537230928dd284f0
  Author: Milan Crha <mcrha at redhat.com>
  Date:   2015-04-07 (Tue, 07 Apr 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/bindings/gobject/GObjectEventListener.cpp

  Log Message:
  -----------
  Merge r180141 - [GTK] Loading page into WebView shows g_closure_unref warning
https://bugs.webkit.org/show_bug.cgi?id=127474

Patch by Milan Crha <mcrha at redhat.com> on 2015-02-16
Reviewed by Carlos Garcia Campos.

* bindings/gobject/GObjectEventListener.cpp:
(WebCore::GObjectEventListener::gobjectDestroyed):


  Commit: 6b2fc04db8123d68a3f683505aa9e08424ae5f51
      https://github.com/WebKit/WebKit/commit/6b2fc04db8123d68a3f683505aa9e08424ae5f51
  Author: Milan Crha <mcrha at redhat.com>
  Date:   2015-04-07 (Tue, 07 Apr 2015)

  Changed paths:
    M Source/WebKit/gtk/ChangeLog
    M Source/WebKit/gtk/webkit/webkitwebpolicydecision.cpp

  Log Message:
  -----------
  [GTK] Memory leak from webkit_web_policy_decision_new()
https://bugs.webkit.org/show_bug.cgi?id=141564

Patch by Milan Crha <mcrha at redhat.com> on 2015-02-16
Reviewed by Carlos Garcia Campos.

* webkit/webkitwebpolicydecision.cpp:


  Commit: c396ded6ce16a277065480f2f670c3f8162fbd7d
      https://github.com/WebKit/WebKit/commit/c396ded6ce16a277065480f2f670c3f8162fbd7d
  Author: Milan Crha <mcrha at redhat.com>
  Date:   2015-04-07 (Tue, 07 Apr 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/gtk/GtkPluginWidget.cpp

  Log Message:
  -----------
  [GTK] [WebKit1] Crash under WebCore::ScrollView::contentsToWindow()
https://bugs.webkit.org/show_bug.cgi?id=142343

Patch by Milan Crha <mcrha at redhat.com> on 2015-04-07
Reviewed by Carlos Garcia Campos.

Return early from frameRectsChanged() if the plugin widget doesn't
have a parent.

* platform/gtk/GtkPluginWidget.cpp:
(WebCore::GtkPluginWidget::frameRectsChanged):


  Commit: 35d7f380a2a3ef5dadaed066ddb6e0aee90943fa
      https://github.com/WebKit/WebKit/commit/35d7f380a2a3ef5dadaed066ddb6e0aee90943fa
  Author: YunQiang Su <wzssyqa at gmail.com>
  Date:   2015-04-07 (Tue, 07 Apr 2015)

  Changed paths:
    M Source/WTF/ChangeLog
    M Source/WTF/wtf/Platform.h
    M Source/WTF/wtf/dtoa/utils.h

  Log Message:
  -----------
  Merge r178725 - Fix failed to build for Linux/MIPS64EL
https://bugs.webkit.org/show_bug.cgi?id=124370

Patch by YunQiang Su <wzssyqa at gmail.com> on 2015-01-20
Reviewed by Darin Adler.

Add MIPS64EL support.

* wtf/Platform.h:
* wtf/dtoa/utils.h:


  Commit: 3bece7c082eeeae6d0a0b28a3c720cc8631d909d
      https://github.com/WebKit/WebKit/commit/3bece7c082eeeae6d0a0b28a3c720cc8631d909d
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2015-04-07 (Tue, 07 Apr 2015)

  Changed paths:
    M Tools/ChangeLog
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp

  Log Message:
  -----------
  Merge r173832 - [GTK] Test /webkit2/WebKitWebView/can-show-mime-type fails if evince browser plugin is installed
https://bugs.webkit.org/show_bug.cgi?id=136998

Reviewed by Philippe Normand.

* TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:
(testWebViewCanShowMIMEType): Remove the check of PDF as
unsupported MIME type.


  Commit: 1149a01fb553613091c4ea5f1c90e8df8e7dc401
      https://github.com/WebKit/WebKit/commit/1149a01fb553613091c4ea5f1c90e8df8e7dc401
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2015-04-07 (Tue, 07 Apr 2015)

  Changed paths:
    M Tools/ChangeLog
    M Tools/Scripts/run-gtk-tests
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp
    M Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.cpp
    M Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.h

  Log Message:
  -----------
  Merge r178644 - [GTK] [WK2] TestWebKitWebView snapshot fails
https://bugs.webkit.org/show_bug.cgi?id=120404

Reviewed by Žan Doberšek.

Rework the test to make sure the snapshot is always created at the
desired size.

* Scripts/run-gtk-tests:
(TestRunner): Unskip /webkit2/WebKitWebView/snapshot.
* TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:
(testWebViewSnapshot): Use a fixed size for the document, and
disable scrollbars to make sure the visible area is always the
WebView size.
* TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.cpp:
(WebViewTest::showInWindowAndWaitUntilMapped): Add optional width
and height parameters to create the window with a given size.
* TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.h:


  Commit: d4c3f274445d5d7a69dba90af49cacecb742076c
      https://github.com/WebKit/WebKit/commit/d4c3f274445d5d7a69dba90af49cacecb742076c
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2015-04-07 (Tue, 07 Apr 2015)

  Changed paths:
    M Tools/ChangeLog
    M Tools/TestWebKitAPI/GNUmakefile.am
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/DOMNodeTest.cpp
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/FrameTest.cpp
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestDOMNode.cpp
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestFrame.cpp
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.cpp
    M Tools/TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.h
    R Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebProcessTestRunner.cpp
    R Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebProcessTestRunner.h
    M Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.cpp
    M Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.h

  Log Message:
  -----------
  Merge r176563 - [GTK] Use custom JavaScript instead of DBus to implement WebProcess tests
https://bugs.webkit.org/show_bug.cgi?id=138834

Reviewed by Sergio Villar Senin.

It makes everyting simpler and the tests run faster too, since we
don't need to spawn the private bus and wait until the DBus name
is registered. The web extension registers a new JavaSCript class
with a status method to run the tests, similar to the DBus
method. In the UI process side, tests use webkit_web_view_run_java_script()
instead of sending a DBus message.

* TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt:
* TestWebKitAPI/Tests/WebKit2Gtk/DOMNodeFilterTest.cpp:
(WebKitDOMNodeFilterTest::create):
(WebKitDOMNodeFilterTest::testTreeWalker):
(WebKitDOMNodeFilterTest::testNodeIterator):
(WebKitDOMNodeFilterTest::webPageFromArgs): Deleted.
(WebKitDOMNodeFilterTest::runTest): Deleted.
* TestWebKitAPI/Tests/WebKit2Gtk/DOMNodeTest.cpp:
(WebKitDOMNodeTest::create):
(WebKitDOMNodeTest::testHierarchyNavigation):
(WebKitDOMNodeTest::testInsertion):
(WebKitDOMNodeTest::testTagNames):
(WebKitDOMNodeTest::webPageFromArgs): Deleted.
(WebKitDOMNodeTest::runTest): Deleted.
* TestWebKitAPI/Tests/WebKit2Gtk/DOMXPathNSResolverTest.cpp:
(WebKitDOMXPathNSResolverTest::create):
(WebKitDOMXPathNSResolverTest::testXPathNSResolverNative):
(WebKitDOMXPathNSResolverTest::testXPathNSResolverCustom):
(WebKitDOMXPathNSResolverTest::webPageFromArgs): Deleted.
(WebKitDOMXPathNSResolverTest::runTest): Deleted.
* TestWebKitAPI/Tests/WebKit2Gtk/FrameTest.cpp:
(WebKitFrameTest::create):
(WebKitFrameTest::testMainFrame):
(WebKitFrameTest::testURI):
(WebKitFrameTest::testJavaScriptContext):
(WebKitFrameTest::webPageFromArgs): Deleted.
(WebKitFrameTest::runTest): Deleted.
* TestWebKitAPI/Tests/WebKit2Gtk/TestDOMNode.cpp:
(testWebKitDOMNodeHierarchyNavigation):
(testWebKitDOMNodeInsertion):
(testWebKitDOMNodeTagNames):
(beforeAll):
(afterAll):
* TestWebKitAPI/Tests/WebKit2Gtk/TestDOMNodeFilter.cpp:
(runTest):
(beforeAll):
(afterAll):
* TestWebKitAPI/Tests/WebKit2Gtk/TestDOMXPathNSResolver.cpp:
(testWebKitDOMXPathNSResolverNative):
(testWebKitDOMXPathNSResolverCustom):
(beforeAll):
(afterAll):
(runTest): Deleted.
* TestWebKitAPI/Tests/WebKit2Gtk/TestFrame.cpp:
(webkitFrameTestRun):
(beforeAll):
(afterAll):
* TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.cpp:
(testsMap):
(WebProcessTest::add):
(WebProcessTest::create):
(runTest):
(windowObjectClearedCallback):
(webkit_web_extension_initialize):
(methodCallCallback): Deleted.
(webkit_web_extension_initialize_with_user_data): Deleted.
* TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.h:
* TestWebKitAPI/gtk/WebKit2Gtk/WebProcessTestRunner.cpp: Removed.
* TestWebKitAPI/gtk/WebKit2Gtk/WebProcessTestRunner.h: Removed.
* TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.cpp:
(WebViewTest::runWebProcessTest):
* TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.h:


  Commit: 55c381065cef0af58909aac65f28eb81d66efb0e
      https://github.com/WebKit/WebKit/commit/55c381065cef0af58909aac65f28eb81d66efb0e
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2015-04-07 (Tue, 07 Apr 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/bindings/gobject/DOMObjectCache.cpp
    M Source/WebCore/bindings/gobject/DOMObjectCache.h
    M Source/WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.cpp
    M Source/WebKit/gtk/webkit/webkitwebframe.cpp

  Log Message:
  -----------
  Merge r180214 - [GTK] GObject DOM bindings object are cached forever
https://bugs.webkit.org/show_bug.cgi?id=141558

Reviewed by Sergio Villar Senin.

Source/WebCore:

Rework the DOMObjectCache to avoid having to manually clear the
objects when the frame is destroyed, using a FrameDestructionObserver
instead. When a new object associated to a Frame is added to the
cache, a FrameDestructionObserver is created for the frame if
needed, and the DOM object is tracked by the observer too. When
the frame is detached from the page all its objects are cleared,
and if the aren't additional references, the object is finalized
and removed from the cache normally.
This patch also simplifies and modernizes the code to make it
easier to read an maintain.

* bindings/gobject/DOMObjectCache.cpp:
(WebKit::DOMObjectCacheData::DOMObjectCacheData): Add constructor
to initialize its members and simplify the callers.
(WebKit::DOMObjectCacheData::clearObject): Remove the references
added by the cache, ensuring the GObject is not finalized until
the method returns.
(WebKit::DOMObjectCacheData::refObject): Adds a reference owned by
the cache.
(WebKit::domObjectCacheFrameObservers): Map a frame to a FrameDestructionObserver.
(WebKit::getOrCreateDOMObjectCacheFrameObserver): Create a new
FrameDestructionObserver for the given Frame or return the
existing one.
(WebKit::domObjects): Map wrapped object to wrapper object.
(WebKit::DOMObjectCache::forget): Remove the wrapped object from
the cache.
(WebKit::DOMObjectCache::get): Return the wrapped object if it is
in the cache, increasing the cache references.
(WebKit::DOMObjectCache::put): Add the wrapper object to the cache
for the given wrapped object. If it's a Node and has a frame add
the node to the FrameDestructionObserver corresponding to the frame.
(WebKit::getFrameFromHandle): Deleted.
(WebKit::weakRefNotify): Deleted.
(WebKit::DOMObjectCache::clearByFrame): Deleted.
(WebKit::DOMObjectCache::~DOMObjectCache): Deleted.
* bindings/gobject/DOMObjectCache.h:

Merge r181631 - [GTK] WebKitDOM objects leaking
https://bugs.webkit.org/show_bug.cgi?id=118788

Reviewed by Darin Adler and Sergio Villar Senin.

Source/WebCore:

Use a DOMwindowObserver class, derived from DOMWindowProperty to
be notified when the window object is detached from the frame to
clear the DOM objects associated to that frame in that case too.

* bindings/gobject/DOMObjectCache.cpp:


  Commit: bc0cd8c4576548dcb07835010f657ec8e033ca74
      https://github.com/WebKit/WebKit/commit/bc0cd8c4576548dcb07835010f657ec8e033ca74
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2015-04-07 (Tue, 07 Apr 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/bindings/scripts/CodeGeneratorGObject.pm

  Log Message:
  -----------
  Merge r181643 - [GTK] Wrong transfer annotations used in GObject DOM bindings
https://bugs.webkit.org/show_bug.cgi?id=142780

Reviewed by Gustavo Noronha Silva.

We are using transfer none for all methods returning a GObject DOM
Object. That's not true. Only objects derived from Node are
automatically released by the DOM object cache and can be transfer
none. All other objects are added to the cache only to avoid
creating the same wrapper twice for the same core object, but
caller should release the returned reference.

* bindings/scripts/CodeGeneratorGObject.pm:
(GetTransferTypeForReturnType):
(GenerateFunction):


  Commit: 5a0a6b37c070fb47cdddadaa43bc60bbf5a9be00
      https://github.com/WebKit/WebKit/commit/5a0a6b37c070fb47cdddadaa43bc60bbf5a9be00
  Author: Alexey Proskuryakov <ap at webkit.org>
  Date:   2015-04-08 (Wed, 08 Apr 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/Modules/websockets/WebSocketChannel.cpp

  Log Message:
  -----------
  Merge r173848 - WebSocket crash when a connection is closed from server side
https://bugs.webkit.org/show_bug.cgi?id=137009
rdar://problem/18333977
rdar://problem/12708225

Reviewed by Brady Eidson.

I don't think that this can be tested with our test server.

* Modules/websockets/WebSocketChannel.cpp:
(WebCore::WebSocketChannel::WebSocketChannel): Added logging.
(WebCore::WebSocketChannel::~WebSocketChannel): Ditto.
(WebCore::WebSocketChannel::close): Protect self, because startClosingHandshake
can release the last reference.
(WebCore::WebSocketChannel::fail): Added an assertion that the channel is always
closed after this function.
(WebCore::WebSocketChannel::startClosingHandshake): Protect self, and don't change
the stack from closed back to closing if after failing to send closing handshake.
(WebCore::WebSocketChannel::processOutgoingFrameQueue): Protect self.


  Commit: 3d578e6ded1d05c656597db6e0be867cdea3c94c
      https://github.com/WebKit/WebKit/commit/3d578e6ded1d05c656597db6e0be867cdea3c94c
  Author: Said Abou-Hallawa <sabouhallawa at apple.com>
  Date:   2015-04-08 (Wed, 08 Apr 2015)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/svg/filters/svg-deeply-nested-crash-expected.txt
    A LayoutTests/svg/filters/svg-deeply-nested-crash.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/graphics/filters/FilterEffect.cpp
    M Source/WebCore/platform/graphics/filters/FilterEffect.h
    M Source/WebCore/rendering/svg/RenderSVGResourceFilter.cpp

  Log Message:
  -----------
  Merge r174137 - Stack overflow with enormous SVG filter
https://bugs.webkit.org/show_bug.cgi?id=63290

Prevent building an SVG filter if it has more than 200 FilterEffect nodes in its map
regardless whether they will be connected to its lastEffect or not. Also discard any
filter which has more 100 contributing FilterEffect nodes in its tree.

Patch by Said Abou-Hallawa <sabouhallawa at apple.com> on 2014-09-30
Reviewed by Dean Jackson.

Tests: svg/filters/svg-deeply-nested-crash.html

* platform/graphics/filters/FilterEffect.cpp:
(WebCore::collectEffects):
(WebCore::FilterEffect::totalNumberOfEffectInputs):
* platform/graphics/filters/FilterEffect.h:
-- Add a method to return the total number of input FilterEffect's contributing to a FilterEffect.
* rendering/svg/RenderSVGResourceFilter.cpp:
(WebCore::RenderSVGResourceFilter::buildPrimitives):
-- Do not build a filter if it has more than 200 FilterEffects in its map.
(WebCore::RenderSVGResourceFilter::applyResource):
-- Discard a filter after it was built if it has more than 100 FilterEffects in its tree.

LayoutTests:
Stack overflow with enormous SVG filter.
https://bugs.webkit.org/show_bug.cgi?id=63290.

Patch by Said Abou-Hallawa <sabouhallawa at apple.com> on 2014-09-30
Reviewed by Dean Jackson.

Test if an SVG filter with deeply nested tree of FilterEffects can be loaded
with no crash. Make sure other valid filters can still be referenced by SVG
drawing elements. An SVG Filter will be ignored if the number of effects in
its map is greater than 200 or the total number of effects connected to its
last effect is greater than 100.

* svg/filters/svg-deeply-nested-crash-expected.txt: Added.
* svg/filters/svg-deeply-nested-crash.html: Added.


  Commit: 7ae616c2509e297ca413a2e806ce6154f541fabe
      https://github.com/WebKit/WebKit/commit/7ae616c2509e297ca413a2e806ce6154f541fabe
  Author: Youenn Fablet <youennf at gmail.com>
  Date:   2015-04-08 (Wed, 08 Apr 2015)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/http/tests/xmlhttprequest/reentrant-cancel-abort-expected.txt
    A LayoutTests/http/tests/xmlhttprequest/reentrant-cancel-abort.html
    M LayoutTests/http/tests/xmlhttprequest/reentrant-cancel.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/xml/XMLHttpRequest.cpp
    M Source/WebCore/xml/XMLHttpRequest.h

  Log Message:
  -----------
  Merge r174684 - [XHR] Abort method execution when m_loader->cancel() in internalAbort() caused reentry
https://bugs.webkit.org/show_bug.cgi?id=126975

Patch by Youenn Fablet <youennf at gmail.com> on 2014-10-14
Reviewed by Alexey Proskuryakov.

Source/WebCore:

Merging https://chromium.googlesource.com/chromium/blink/+/0d75daf2053631518606ae15daaece701a25b2c4
Ensuring new test from https://codereview.chromium.org/76133002/ is passing.

Test: http/tests/xmlhttprequest/reentrant-cancel-abort.html

* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::open): exit early if internalAbort asks so
(WebCore::XMLHttpRequest::abort): exit early if internalAbort asks so
(WebCore::XMLHttpRequest::internalAbort): ask calling function to exit early if a new loader is created during the cancellation of the loader (potential reentrant case through window.onload callback)
(WebCore::XMLHttpRequest::didTimeout): exit early if internalAbort asks so
* xml/XMLHttpRequest.h:

LayoutTests:

Adding reentrant-cancel-abort.html (from https://codereview.chromium.org/76133002/)
that crashes without the patch
Updated reentrant-cancel.html test to expect the exception
that is now hit in initSend function (since a XHR open() call is aborted)

* http/tests/xmlhttprequest/reentrant-cancel-abort-expected.txt: Added.
* http/tests/xmlhttprequest/reentrant-cancel-abort.html: Added.
* http/tests/xmlhttprequest/reentrant-cancel.html:


  Commit: 0dc6fff8e30015ce9af9fb20ce7fc36d652e0500
      https://github.com/WebKit/WebKit/commit/0dc6fff8e30015ce9af9fb20ce7fc36d652e0500
  Author: Dan Bernstein <mitz at webkit.org>
  Date:   2015-04-08 (Wed, 08 Apr 2015)

  Changed paths:
    M LayoutTests/ChangeLog
    M LayoutTests/fast/loader/url-parse-1-expected.txt
    M LayoutTests/fast/loader/url-parse-1.html
    M LayoutTests/fast/url/file-http-base-expected.txt
    M LayoutTests/fast/url/host-expected.txt
    M LayoutTests/fast/url/invalid-urls-utf8-expected.txt
    M LayoutTests/fast/url/relative-expected.txt
    M LayoutTests/fast/url/standard-url-expected.txt
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/URL.cpp

  Log Message:
  -----------
  Merge r174712 - URLs that start with http:/// and https:/// lose two slashes when parsed, causing assertion failure and inconsistent behavior
https://bugs.webkit.org/show_bug.cgi?id=137718

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Added cases to fast/loader/url-parse-1.html.

* platform/URL.cpp:
(WebCore::URL::parse): In hierarchical schemes other than file:, ignore any additional
slashes after the ://, as prescribed by the authority-ignore-slashes state in the current
URL spec.

LayoutTests:

* fast/loader/url-parse-1-expected.txt: Updated results.
* fast/loader/url-parse-1.html: Added a few test cases.
* fast/url/file-http-base-expected.txt: Updated results.
* fast/url/host-expected.txt: Ditto.
* fast/url/invalid-urls-utf8-expected.txt: Ditto.
* fast/url/relative-expected.txt: Ditto.
* fast/url/standard-url-expected.txt: Ditto.


  Commit: fa38ffc17ae9d3bce60719ea7989c52c5e4107ef
      https://github.com/WebKit/WebKit/commit/fa38ffc17ae9d3bce60719ea7989c52c5e4107ef
  Author: Jer Noble <jer.noble at apple.com>
  Date:   2015-04-08 (Wed, 08 Apr 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/html/HTMLMediaElement.cpp

  Log Message:
  -----------
  Merge r174720 - REGRESSION (r159208): Crash when clicking scrubber after navigating away/back to video
https://bugs.webkit.org/show_bug.cgi?id=137715

Reviewed by Darin Adler.

Simple null-check of m_player in refreshCachedTime.

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::refreshCachedTime):


  Commit: e9f4debf58f438ca47efd6dadc26e558788a64fc
      https://github.com/WebKit/WebKit/commit/e9f4debf58f438ca47efd6dadc26e558788a64fc
  Author: Alexey Proskuryakov <ap at webkit.org>
  Date:   2015-04-08 (Wed, 08 Apr 2015)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/platform/mac/editing/input/selected-composed-text-painting-expected.html
    A LayoutTests/platform/mac/editing/input/selected-composed-text-painting.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/rendering/InlineTextBox.cpp

  Log Message:
  -----------
  Merge r174807 - REGRESSION (r169024): Undetermined text is not displayed in the search field of Adobe Help Website
https://bugs.webkit.org/show_bug.cgi?id=137679
rdar://problem/18450335

Reviewed by Enrica Casucci.

Source/WebCore:

Test: platform/mac/editing/input/selected-composed-text-painting.html

* rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::paint): We do not paint
selection beckground for unconfirmed text with underlines, so we should use a regular
style for text painting, as well.

LayoutTests:

* platform/mac/editing/input/selected-composed-text-painting-expected.html: Added.
* platform/mac/editing/input/selected-composed-text-painting.html: Added.


  Commit: 1f022334d4696d47af50f96b351478cef9f21e45
      https://github.com/WebKit/WebKit/commit/1f022334d4696d47af50f96b351478cef9f21e45
  Author: Jeffrey Pfau <jeffrey+webkit at endrift.com>
  Date:   2015-04-08 (Wed, 08 Apr 2015)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/frames/exponential-frames-expected.txt
    A LayoutTests/fast/frames/exponential-frames.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/html/HTMLFrameElementBase.cpp

  Log Message:
  -----------
  Merge r174922 - Ensure attached frame count doesn't exceed the maximum allowed frames
https://bugs.webkit.org/show_bug.cgi?id=136457

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Test: fast/frames/exponential-frames.html

* html/HTMLFrameElementBase.cpp:
(WebCore::HTMLFrameElementBase::isURLAllowed):

LayoutTests:

* fast/frames/exponential-frames-expected.txt: Added.
* fast/frames/exponential-frames.html: Added.


  Commit: 7f1f19da02afbddc7bbfa69eb43437b61fa2d020
      https://github.com/WebKit/WebKit/commit/7f1f19da02afbddc7bbfa69eb43437b61fa2d020
  Author: Milan Crha <mcrha at redhat.com>
  Date:   2015-04-08 (Wed, 08 Apr 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/gtk/WidgetBackingStoreGtkX11.cpp
    M Source/WebCore/platform/gtk/WidgetBackingStoreGtkX11.h

  Log Message:
  -----------
  Merge r175087 - Do not build WidgetBackingStoreGtkX11 when not used.
<https://webkit.org/b/137972>.

Patch by Milan Crha <mcrha at redhat.com> on 2014-10-22
Reviewed by Carlos Garcia Campos.

* platform/gtk/WidgetBackingStoreGtkX11.cpp:
* platform/gtk/WidgetBackingStoreGtkX11.h:


  Commit: 71a34b2239f26d9366dc284d50f904f9faadf999
      https://github.com/WebKit/WebKit/commit/71a34b2239f26d9366dc284d50f904f9faadf999
  Author: Milan Crha <mcrha at redhat.com>
  Date:   2015-04-08 (Wed, 08 Apr 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/graphics/cairo/GraphicsContext3DCairo.cpp

  Log Message:
  -----------
  Merge r175088 - Do not include GraphicsContext3D.h when 3D_GRAPHICS is not used.
<https://webkit.org/b/137969>.

Patch by Milan Crha <mcrha at redhat.com> on 2014-10-22
Reviewed by Carlos Garcia Campos.

* platform/graphics/cairo/GraphicsContext3DCairo.cpp:


  Commit: 418449b4133491e6e9899cd3e3e8ceeb93972597
      https://github.com/WebKit/WebKit/commit/418449b4133491e6e9899cd3e3e8ceeb93972597
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2015-04-08 (Wed, 08 Apr 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/bindings/gobject/DOMObjectCache.cpp

  Log Message:
  -----------
  Merge r180216 - Use HashMap::add instead of get/contains + set in DOMObjectCache
https://bugs.webkit.org/show_bug.cgi?id=141558

Rubber-stamped by Žan Doberšek.

* bindings/gobject/DOMObjectCache.cpp:
(WebKit::getOrCreateDOMObjectCacheFrameObserver):
(WebKit::DOMObjectCache::put):


  Commit: e6b40cb67ef1077028b8f5e25e0bdc089cd2609a
      https://github.com/WebKit/WebKit/commit/e6b40cb67ef1077028b8f5e25e0bdc089cd2609a
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2015-04-08 (Wed, 08 Apr 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/bindings/gobject/DOMObjectCache.cpp
    M Tools/TestWebKitAPI/Tests/WebKitGtk/testdomdocument.c

  Log Message:
  -----------
  Merge r182537 - [GTK] Crash in DOMObjectCache when a wrapped object owned by the cache is unreffed by the user
https://bugs.webkit.org/show_bug.cgi?id=143521

Reviewed by Martin Robinson.

This is a case we claim to support, but it only works if the
object has only one reference. In that case, when the user unrefs
it, the weak ref notify callback removes the object from the
cache. However, if the object has more than one ref, the cache
doesn't know the user unreffed it, and when clearing the cache we
try to remove more references than what the object actually has,
causing a crash in g_object_unref.

* bindings/gobject/DOMObjectCache.cpp:
(WebKit::DOMObjectCacheData::clearObject):


  Commit: 96801cedc4a78d67a04711e9f585ed77956b8d83
      https://github.com/WebKit/WebKit/commit/96801cedc4a78d67a04711e9f585ed77956b8d83
  Author: Said Abou-Hallawa <sabouhallawa at apple.com>
  Date:   2015-05-18 (Mon, 18 May 2015)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/http/tests/security/resources/image-with-css-cross-domain-circle.css
    A LayoutTests/http/tests/security/resources/image-with-css-cross-domain-circle2.css
    A LayoutTests/http/tests/security/resources/image-with-css-cross-domain.svg
    A LayoutTests/http/tests/security/resources/image-with-remote-image.svg
    A LayoutTests/http/tests/security/svg-image-with-cached-remote-image-expected.html
    A LayoutTests/http/tests/security/svg-image-with-cached-remote-image.html
    A LayoutTests/http/tests/security/svg-image-with-css-cross-domain-expected.html
    A LayoutTests/http/tests/security/svg-image-with-css-cross-domain.css
    A LayoutTests/http/tests/security/svg-image-with-css-cross-domain.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/loader/cache/CachedResourceLoader.cpp

  Log Message:
  -----------
  Merge r175074 - SVG loaded through html <img> can't request to load any external resources.
https://bugs.webkit.org/show_bug.cgi?id=137762.

Patch by Said Abou-Hallawa <sabouhallawa at apple.com> on 2014-10-22
Reviewed by Daniel Bates.

Source/WebCore:

SVG images have unique security rules that prevent them from loading any external
resources. This patch enforces these rules in CachedResourceLoader::canRequest for
all non-data-uri resources.

The fix and the tests are ported but modified a little from the chromium fix:
http://src.chromium.org/viewvc/blink?view=rev&rev=176084

Test: http/tests/security/svg-image-with-cached-remote-image.html
      http/tests/security/svg-image-with-css-cross-domain.html

For the SVG image, prevent loading any external sub-resource except for data urls.
* loader/cache/CachedResourceLoader.cpp:
(WebCore::CachedResourceLoader::canRequest):

LayoutTests:

Ensure that SVG images, which are loaded through the <img> tag or through the
CSS background image, cannot load any external sub-resource except for data-
URL resources (though this doesn't work at the time of writing, see bug #137941).
Also ensure the same rule is enforced on cached resources.

The tests are ported but modified a little from the chromium fix:
http://src.chromium.org/viewvc/blink?view=rev&rev=176084

Set the circle background to orange
* http/tests/security/resources/image-with-css-cross-domain-circle.css: Added.
(circle):

Set the circle stroke-width = 2 and the circle stroke = red
* http/tests/security/resources/image-with-css-cross-domain-circle2.css: Added.
(circle):

This svg references the two css files: one is relative path and the other is absolute path
* http/tests/security/resources/image-with-css-cross-domain.svg: Added.

This svg references an external image.
* http/tests/security/resources/image-with-remote-image.svg: Added.

A helper css which sets the formatting style for some html tags
* http/tests/security/svg-image-with-css-cross-domain.css: Added.
(span):
(span.circle-css-cross-domain):
(embed):
(iframe):

Test the svg which is referenced as a cached image by an <object> tag, does not load
external sub-resource.
* http/tests/security/svg-image-with-cached-remote-image-expected.html: Added.
* http/tests/security/svg-image-with-cached-remote-image.html: Added.

Test loading sub-resources for an svg which is included in the html by different ways
and which references external css files.
Ensure the image object does not load any external sub-resources.
* http/tests/security/svg-image-with-css-cross-domain-expected.html: Added.
* http/tests/security/svg-image-with-css-cross-domain.html: Added.


  Commit: ffd19e32b9cd28cb0bf8777f097fdb4b43368b51
      https://github.com/WebKit/WebKit/commit/ffd19e32b9cd28cb0bf8777f097fdb4b43368b51
  Author: Byungseon Shin <sun.shin at lge.com>
  Date:   2015-05-18 (Mon, 18 May 2015)

  Changed paths:
    M LayoutTests/ChangeLog
    M LayoutTests/js/dom/script-tests/date-DST-time-cusps.js
    M Source/JavaScriptCore/ChangeLog
    M Source/JavaScriptCore/JavaScriptCore.order
    M Source/JavaScriptCore/runtime/DateConstructor.cpp
    M Source/JavaScriptCore/runtime/DateInstance.cpp
    M Source/JavaScriptCore/runtime/DatePrototype.cpp
    M Source/JavaScriptCore/runtime/JSDateMath.cpp
    M Source/JavaScriptCore/runtime/JSDateMath.h
    M Source/JavaScriptCore/runtime/VM.h
    M Source/WTF/ChangeLog
    M Source/WTF/wtf/DateMath.cpp
    M Source/WTF/wtf/DateMath.h

  Log Message:
  -----------
  Merge r175078 - String(new Date(Mar 30 2014 01:00:00)) is wrong in CET
https://bugs.webkit.org/show_bug.cgi?id=130967

Patch by Byungseon Shin <sun.shin at lge.com> on 2014-10-22
Reviewed by Mark Lam.

Source/JavaScriptCore:

By definition of calculateLocalTimeOffset, input time should be UTC time.
But there are many cases when input time is based on local time.
So, it gives erroneous results while calculating offset of DST boundary time.
By adding a argument to distinguish UTC and local time, we can get the correct offset.

* JavaScriptCore.order:
* runtime/DateConstructor.cpp:
(JSC::constructDate):
(JSC::callDate):
(JSC::dateUTC):
* runtime/DateInstance.cpp:
(JSC::DateInstance::calculateGregorianDateTime):
(JSC::DateInstance::calculateGregorianDateTimeUTC):
* runtime/DatePrototype.cpp:
(JSC::setNewValueFromTimeArgs):
(JSC::setNewValueFromDateArgs):
(JSC::dateProtoFuncSetMilliSeconds):
(JSC::dateProtoFuncSetUTCMilliseconds):
(JSC::dateProtoFuncSetSeconds):
(JSC::dateProtoFuncSetUTCSeconds):
(JSC::dateProtoFuncSetMinutes):
(JSC::dateProtoFuncSetUTCMinutes):
(JSC::dateProtoFuncSetHours):
(JSC::dateProtoFuncSetUTCHours):
(JSC::dateProtoFuncSetDate):
(JSC::dateProtoFuncSetUTCDate):
(JSC::dateProtoFuncSetMonth):
(JSC::dateProtoFuncSetUTCMonth):
(JSC::dateProtoFuncSetFullYear):
(JSC::dateProtoFuncSetUTCFullYear):
(JSC::dateProtoFuncSetYear):
* runtime/JSDateMath.cpp:
(JSC::localTimeOffset):
(JSC::gregorianDateTimeToMS):
(JSC::msToGregorianDateTime):
(JSC::parseDateFromNullTerminatedCharacters):
* runtime/JSDateMath.h:
* runtime/VM.h:
(JSC::LocalTimeOffsetCache::LocalTimeOffsetCache):
(JSC::LocalTimeOffsetCache::reset):
Passing TimeType argument to distingush UTC time and local time.

Source/WTF:

By definition of calculateLocalTimeOffset, input time should be UTC time.
But there are many cases when input time is based on local time.
So, it gives erroneous results while calculating offset of DST boundary time.
By adding a argument to distinguish UTC and local time, we can get the correct offset.

* wtf/DateMath.cpp:
(WTF::calculateLocalTimeOffset):
(WTF::parseDateFromNullTerminatedCharacters):
Compensate time offset depends on UTC time or local time.
* wtf/DateMath.h:
Add argument to differenciate UTC or local time.

LayoutTests:

Set latest DST timezone boundary values on
<http://www.timeanddate.com/time/zone/usa/los-angeles>

* js/dom/script-tests/date-DST-time-cusps.js:


  Commit: f2b39897376135aaba882277a0fbf1ec991887e1
      https://github.com/WebKit/WebKit/commit/f2b39897376135aaba882277a0fbf1ec991887e1
  Author: Mark Lam <mark.lam at apple.com>
  Date:   2015-05-18 (Mon, 18 May 2015)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/js/array-length-shortening-expected.txt
    A LayoutTests/js/array-length-shortening.html
    A LayoutTests/js/for-of-crash-expected.txt
    A LayoutTests/js/for-of-crash.html
    A LayoutTests/js/script-tests/array-length-shortening.js
    A LayoutTests/js/script-tests/for-of-crash.js
    M Source/JavaScriptCore/ChangeLog
    M Source/JavaScriptCore/jit/ThunkGenerators.cpp

  Log Message:
  -----------
  Merge r175243 - Crash when attempting to perform array iteration on a non-array with numeric keys not initialized.
<https://webkit.org/b/137814>

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

The arrayIteratorNextThunkGenerator() thunk was not checking for the case where
the butterfly may be NULL.  This was the source of the crash, and is now fixed.

In addition, it is also not checking for the case where a property named "length"
may have been set on the iterated object.  The thunk only checks the butterfly's
publicLength for its iteration operation.  Array objects will work fine with this
because it always updates its butterfly's publicLength when its length changes.
In the case of iterable non-Array objects, the "length" property will require a
look up outside of the scope of this thunk.  The fix is simply to limit the fast
case checks in this thunk to Array objects.

* jit/ThunkGenerators.cpp:
(JSC::arrayIteratorNextThunkGenerator):

LayoutTests:

* js/array-length-shortening-expected.txt: Added.
* js/array-length-shortening.html: Added.
* js/for-of-crash-expected.txt: Added.
* js/for-of-crash.html: Added.
* js/script-tests/array-length-shortening.js: Added.
(testLengthShortening):
(denseInt32Elements):
(denseDoubleElements):
(denseObjectElements):
(holeyInt32Elements):
(holeyDoubleElements):
(holeyObjectElements):
(arrayStorageInt32Elements):
(arrayStorageDoubleElements):
(arrayStorageObjectElements):
(sparseInt32Elements):
(sparseDoubleElements):
(sparseObjectElements):
* js/script-tests/for-of-crash.js: Added.
(foo):


  Commit: dfab56611501a9fd83f4bb6869a20285dc6b7c10
      https://github.com/WebKit/WebKit/commit/dfab56611501a9fd83f4bb6869a20285dc6b7c10
  Author: Alan Bujtas <zalan at apple.com>
  Date:   2015-05-18 (Mon, 18 May 2015)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/inline/crash-when-inline-box-has-invalid-float-expected.txt
    A LayoutTests/fast/inline/crash-when-inline-box-has-invalid-float.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/rendering/RenderBlockFlow.cpp
    M Source/WebCore/rendering/RootInlineBox.h

  Log Message:
  -----------
  Merge r175345 - Remove invalid float from RootInlineBox.
https://bugs.webkit.org/show_bug.cgi?id=137707

Reviewed by Antti Koivisto.

In certain cases, floating boxes get attached to the last (root) inline box.
When this particular floating box gets destroyed, it also needs to be detached
from the last inline box.
Source/WebCore:

1. Introduce RootInlineBox::removeFloat() (vs. RootInlineBox::appendFloat())
2. Ensure that it is called when the floating box is being destroyed.

Test: fast/inline/crash-when-inline-box-has-invalid-float.html

* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::removeFloatingObject):
(WebCore::RenderBlockFlow::markAllDescendantsWithFloatsForLayout): During style recalc, while
tearing down the render tree, we can get to a state where a block element has both inline and block children.
It happens when the style change on an element makes sibling anonymous block wrappers detached.
In that case the markAllDescendantsWithFloatsForLayout() call does not get propagated down on the
block child elements as we return early at the childrenInline() check.
* rendering/RootInlineBox.h:
(WebCore::RootInlineBox::removeFloat):

LayoutTests:

* fast/inline/crash-when-inline-box-has-invalid-float-expected.txt: Added.
* fast/inline/crash-when-inline-box-has-invalid-float.html: Added.


  Commit: e05f1d999ae921004ed26bcb6cf62d9f673858d0
      https://github.com/WebKit/WebKit/commit/e05f1d999ae921004ed26bcb6cf62d9f673858d0
  Author: Alan Bujtas <zalan at apple.com>
  Date:   2015-05-18 (Mon, 18 May 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/css/CSSPrimitiveValue.cpp

  Log Message:
  -----------
  Merge r175177 - Replace INT_MIN/MAX / kFixedPointDenominator with intMin/MaxForLayoutUnit.
https://bugs.webkit.org/show_bug.cgi?id=138047

Reviewed by Andreas Kling.

No change in functionality.

* css/CSSPrimitiveValue.cpp:


  Commit: 3d3a8fd19f405ce95e0bc99edfd4266eb67e9c3f
      https://github.com/WebKit/WebKit/commit/3d3a8fd19f405ce95e0bc99edfd4266eb67e9c3f
  Author: Said Abou-Hallawa <sabouhallawa at apple.com>
  Date:   2015-05-18 (Mon, 18 May 2015)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/css3/infinite-word-spacing-expected.txt
    A LayoutTests/css3/infinite-word-spacing.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/css/CSSPrimitiveValue.cpp
    M Source/WebCore/css/CSSPrimitiveValue.h
    M Source/WebCore/css/DeprecatedStyleBuilder.cpp

  Log Message:
  -----------
  Merge r175197 - Clamp wordSpacing percentage value.
https://bugs.webkit.org/show_bug.cgi?id=129350.

Patch by Said Abou-Hallawa <sabouhallawa at apple.com> on 2014-10-24
Reviewed by Zalan Bujtas.

Source/WebCore:

When the CSS wordSpacing property is percentage, its value has to be within the
pre-defined min/max values for the CSS length type. This is done the same way
the wordSpacing of type <length> is handled.

Tests: css3/infinite-word-spacing.html.

Move the definitions of minValueForCssLength and maxValueForCssLength from the
.cpp file to the .h file.
* css/CSSPrimitiveValue.cpp:
* css/CSSPrimitiveValue.h:

Clamp the wordSpacing value to minValueForCssLength and maxValueForCssLength when
its type is percentage.
* css/DeprecatedStyleBuilder.cpp:
(WebCore::ApplyPropertyWordSpacing::applyValue):

LayoutTests:

Make sure that setting the CSS style wordSpacing property to very huge percentage
value and blending this value with other values for animating key frames does
not assert or crash. The expectation is to have this huge value to be clamped to
the pre-defined min/max values for the CSS length type. So when blending the clamped
value with other wordSpacing values, the result can't be NaN. This should be very
similar to the case when it is set to a huge <length> value.

* css3/infinite-word-spacing-expected.txt: Added.
* css3/infinite-word-spacing.html: Added.


  Commit: 55a1565f834b8a1f89a8de017b6f0b28d5178ed9
      https://github.com/WebKit/WebKit/commit/55a1565f834b8a1f89a8de017b6f0b28d5178ed9
  Author: Said Abou-Hallawa <sabouhallawa at apple.com>
  Date:   2015-05-18 (Mon, 18 May 2015)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/css3/calculated-word-spacing-expected.txt
    A LayoutTests/css3/calculated-word-spacing.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/rendering/style/RenderStyle.cpp

  Log Message:
  -----------
  Merge r175363 - ASSERTION NOT REACHED because RenderStyle::setWordSpacing() does not handle a Length value of type 'Calculated'.
https://bugs.webkit.org/show_bug.cgi?id=138054.

Patch by Said Abou-Hallawa <sabouhallawa at apple.com> on 2014-10-29
Reviewed by Zalan Bujtas.

Source/WebCore:

A Length of type 'Calculated' can be generated from blending two lengths of
different types. Setting the wordSpacing of the render style should be handled
correctly when the type of the new value is 'Calculated'.

Tests: css3/calculated-word-spacing.html.

Add a case for setting the render style wordSpacing to a <length> of type 'Calculated'.
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::setWordSpacing):

LayoutTests:

Ensure the render style's wordSpacing can be set correctly when the type of
the new value is 'Calculated'. The 'Calculated' Length value can result from
blending two Length values of different types. And these two Length values
are defined in two consecutive css animation key frames.

* css3/calculated-word-spacing-expected.txt: Added.
* css3/calculated-word-spacing.html: Added.


  Commit: 3579616d7aca34200abbf8b3895c3b5d3a22f8ed
      https://github.com/WebKit/WebKit/commit/3579616d7aca34200abbf8b3895c3b5d3a22f8ed
  Author: Oliver Hunt <oliver at apple.com>
  Date:   2015-05-18 (Mon, 18 May 2015)

  Changed paths:
    M Source/JavaScriptCore/ChangeLog
    M Source/JavaScriptCore/runtime/MapData.h
    M Source/WebCore/ChangeLog
    M Source/WebCore/bindings/js/SerializedScriptValue.cpp

  Log Message:
  -----------
  Merge r176803 - Serialization of MapData object provides unsafe access to internal types
https://bugs.webkit.org/show_bug.cgi?id=138653

Patch by Oliver Hunt <oliver at apple.com> on 2014-12-04
Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Converting these ASSERTs into RELEASE_ASSERTs, as it is now obvious
that despite trying hard to be safe in all cases it's simply to easy
to use an iterator in an unsafe state.

* runtime/MapData.h:
(JSC::MapData::const_iterator::key):
(JSC::MapData::const_iterator::value):

Source/WebCore:

We now keep the value portion of the key/value pair in MapData as a
separate stack. This allows us to maintain the spec semantic of
"atomic" serialisation of the key/value pair without retaining the
use of a potentially invalid iterator.

* bindings/js/SerializedScriptValue.cpp:
(WebCore::CloneSerializer::serialize):


  Commit: a655f14eff4f30fc8148a08f66af336793f622e6
      https://github.com/WebKit/WebKit/commit/a655f14eff4f30fc8148a08f66af336793f622e6
  Author: Youenn Fablet <youennf at gmail.com>
  Date:   2015-05-18 (Mon, 18 May 2015)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/http/tests/xmlhttprequest/resources/headers.php
    A LayoutTests/http/tests/xmlhttprequest/resources/not-ascii-status.php
    A LayoutTests/http/tests/xmlhttprequest/response-special-characters-expected.txt
    A LayoutTests/http/tests/xmlhttprequest/response-special-characters.html
    R LayoutTests/platform/efl/http/tests/security/contentSecurityPolicy/source-list-parsing-nonascii-expected.txt
    R LayoutTests/platform/gtk/http/tests/security/contentSecurityPolicy/source-list-parsing-nonascii-expected.txt
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/network/curl/CurlDownload.cpp
    M Source/WebCore/platform/network/curl/ResourceHandleManager.cpp
    M Source/WebCore/platform/network/soup/ResourceRequestSoup.cpp
    M Source/WebCore/platform/network/soup/ResourceResponseSoup.cpp

  Log Message:
  -----------
  Merge r176930 - [Soup][Curl] HTTP header values should be treated as latin1, not UTF-8
https://bugs.webkit.org/show_bug.cgi?id=128739

Patch by Youenn Fablet <youenn.fablet at crf.canon.fr> on 2014-12-07
Reviewed by Martin Robinson.
Source/WebCore:

Removed UTF-8 conversion of HTTP header values (SOUP and CURL).
Removed unnecessary UTF-8 conversion of HTTP header names (SOUP).
Changed conversion of HTTP method from UTF-8 to ASCII (SOUP and CURL).
Added explicit UTF-8 conversion of Content-Disposition header to compute download suggested filename.

Test: http/tests/xmlhttprequest/response-special-characters.html

* platform/network/curl/CurlDownload.cpp:
(WebCore::CurlDownload::headerCallback): Removed header conversion.
* platform/network/curl/ResourceHandleManager.cpp:
(WebCore::headerCallback): Ditto.
(WebCore::ResourceHandleManager::initializeHandle): Changed HTTP method conversion to ASCI.
* platform/network/soup/ResourceRequestSoup.cpp:
(WebCore::ResourceRequest::updateFromSoupMessageHeaders): Removed header conversion.
(WebCore::ResourceRequest::updateSoupMessage): Changed HTTP method conversion to ASCII.
(WebCore::ResourceRequest::toSoupMessage): Ditto.
(WebCore::ResourceRequest::updateFromSoupMessage):
* platform/network/soup/ResourceResponseSoup.cpp:
(WebCore::ResourceResponse::updateFromSoupMessageHeaders): Rmoved header conversion.
(WebCore::ResourceResponse::platformSuggestedFilename): Added explicit conversion of contentDisposition to UTF-8.

LayoutTests:

Tests that non ascii header & reason phrase values are correctly retrieved by the web application.
headers.php script sends a response that includes non ascii header value.
not-ascii-status.php sends a response that includes non ascii reason phrase.
Removed specific gtk/efl expectations as now aligned with regular expectation.

* http/tests/xmlhttprequest/resources/headers.php: Added.
* http/tests/xmlhttprequest/resources/not-ascii-status.php: Added.
* http/tests/xmlhttprequest/response-special-characters-expected.txt: Added.
* http/tests/xmlhttprequest/response-special-characters.html: Added.
* platform/efl/http/tests/security/contentSecurityPolicy/source-list-parsing-nonascii-expected.txt: Removed.
* platform/gtk/http/tests/security/contentSecurityPolicy/source-list-parsing-nonascii-expected.txt: Removed.


  Commit: 193644e354e682efb7d8298d6fdf5a0b28182c9b
      https://github.com/WebKit/WebKit/commit/193644e354e682efb7d8298d6fdf5a0b28182c9b
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2015-05-18 (Mon, 18 May 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/gtk/ScrollbarThemeGtk3.cpp

  Log Message:
  -----------
  Merge r181744 - [GTK] Scrollbars look bad with GTK+ 3.16
https://bugs.webkit.org/show_bug.cgi?id=140800

Reviewed by Sergio Villar Senin.

Take margin into account when rendering scrollbars. This fixes the
huge scrollbars rendered with GTK+ 3.16. We don't need to check
the GTK+ version because in previous versions the marging were 0,
so the same code just works.

* platform/gtk/ScrollbarThemeGtk.cpp:
(WebCore::adjustRectAccordingToMargin):
(WebCore::ScrollbarThemeGtk::paintTrackBackground):
(WebCore::ScrollbarThemeGtk::paintThumb):


  Commit: e08fd372c678ff1526f1caaf3687d7a655eec19e
      https://github.com/WebKit/WebKit/commit/e08fd372c678ff1526f1caaf3687d7a655eec19e
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2015-05-18 (Mon, 18 May 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp
    M Tools/gtk/jhbuild.modules

  Log Message:
  -----------
  Merge r180927 - [SOUP] Synchronous XMLHttpRequests can time out when we reach the max connections limit
https://bugs.webkit.org/show_bug.cgi?id=141508

Reviewed by Sergio Villar Senin.

Source/WebCore:

Use SOUP_MESSAGE_IGNORE_CONNECTION_LIMITS flag when loading a
synchronous message instead of increasing the maximum number of
connections allowed if the soup version is recent enough.
The current solution of increasing/decreasing the limits doesn't
always work, because connections are not marked as IDLE in libsoup
until the message is unqueued, but we don't wait for the message
to be unqueued to finish our loads in WebKit, we finish them as
soon as we have finished reading the stream. This causes that
synchronous loads keep blocked in the nested main loop until the
timeout of 10 seconds is fired and the load fails.
Also marked WebCoreSynchronousLoader class as final, the virtual
methods as override and removed the unsused method isSynchronousClient.

* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::createSoupMessageForHandleAndRequest):
(WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader):
(WebCore::WebCoreSynchronousLoader::isSynchronousClient): Deleted.
(WebCore::WebCoreSynchronousLoader::didReceiveResponse):
(WebCore::WebCoreSynchronousLoader::didReceiveData):
(WebCore::WebCoreSynchronousLoader::didReceiveBuffer):
(WebCore::WebCoreSynchronousLoader::didFinishLoading):
(WebCore::WebCoreSynchronousLoader::didFail):
(WebCore::WebCoreSynchronousLoader::didReceiveAuthenticationChallenge):
(WebCore::WebCoreSynchronousLoader::shouldUseCredentialStorage):


  Commit: c88c2ed4ca781ad046e617008bc70053bf628831
      https://github.com/WebKit/WebKit/commit/c88c2ed4ca781ad046e617008bc70053bf628831
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2015-05-18 (Mon, 18 May 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp

  Log Message:
  -----------
  Merge r181074 - [SOUP] Check TLS errors as soon as they are set in the SoupMessage
https://bugs.webkit.org/show_bug.cgi?id=142244

Reviewed by Sergio Villar Senin.

Source/WebCore:

Connect to the notify::tls-errors signal of SoupMessage to cancel
the load earlier in case of TLS failure, preventing any private
data from being sent to the server before the TLS errors are checked.

* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::tlsErrorsChangedCallback):
(WebCore::gotHeadersCallback):
(WebCore::createSoupMessageForHandleAndRequest):


  Commit: e9abb04d118477359cd6bd5a09083eefe9ff4812
      https://github.com/WebKit/WebKit/commit/e9abb04d118477359cd6bd5a09083eefe9ff4812
  Author: Mark Lam <mark.lam at apple.com>
  Date:   2015-05-18 (Mon, 18 May 2015)

  Changed paths:
    A Source/JavaScriptCore/API/tests/CompareAndSwapTest.cpp
    M Source/JavaScriptCore/API/tests/testapi.c
    M Source/JavaScriptCore/ChangeLog
    M Source/WTF/ChangeLog
    M Source/WTF/wtf/Atomics.h

  Log Message:
  -----------
  Merge r181305 - 8-bit version of weakCompareAndSwap() can cause an infinite loop.
https://webkit.org/b/142513>

Reviewed by Filip Pizlo.

Source/JavaScriptCore:

Added a test that exercises the 8-bit CAS from multiple threads.  The threads
will contend to set bits in a large array of bytes using the CAS function.

* API/tests/CompareAndSwapTest.cpp: Added.
(Bitmap::Bitmap):
(Bitmap::numBits):
(Bitmap::clearAll):
(Bitmap::concurrentTestAndSet):
(setBitThreadFunc):
(testCompareAndSwap):
* API/tests/testapi.c:
(main):
* JavaScriptCore.vcxproj/testapi/testapi.vcxproj:
* JavaScriptCore.vcxproj/testapi/testapi.vcxproj.filters:
* JavaScriptCore.xcodeproj/project.pbxproj:

Source/WTF:

Presently, Bitmap::concurrentTestAndSet() uses the 8-bit version of
weakCompareAndSwap() (which compares and swaps an uint8_t value).
Bitmap::concurrentTestAndSet() has a loop that checks if a bit in the
byte of interest has been set.  If not, it will call the 8-bit CAS
function to set the bit.

Under the covers, for ARM, the 8-bit CAS function actually works with a
32-bit CAS.  The 8-bit CAS will first fetch the 32-bit value in memory
that should contain the 8-bit value, and check if it contains the
expected byte.  If the value in memory doesn't have the expected byte,
it will return early to its caller.  The expectation is that the caller
will reload the byte from memory and call the 8-bit CAS again.

Unfortunately, this code path that returns early does not have a
compiler fence.  Without a compiler fence, the C++ compiler can
optimize away the reloading of the expected byte value, leaving it
unchanged.  As a result, we'll have a infinite loop here that checks a
value that will never change, and the loop will not terminate until the
value changes.

The fix is to eliminate the early return check in the 8-bit CAS, and
have it always call down to the 32-bit CAS.  The 32-bit CAS has a
compiler fence which will prevent this issue.

* wtf/Atomics.h:
(WTF::weakCompareAndSwap):


  Commit: e82a40b6ac6cb3a2d951afc8b80252d299ee5b3c
      https://github.com/WebKit/WebKit/commit/e82a40b6ac6cb3a2d951afc8b80252d299ee5b3c
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2015-05-18 (Mon, 18 May 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/graphics/cairo/ImageBufferCairo.cpp

  Log Message:
  -----------
  Merge r181787 - [GTK] Crash due to empty drag image during drag-and-drop
https://bugs.webkit.org/show_bug.cgi?id=142671

Reviewed by Philippe Normand.

Return early from ImageBuffer constructor if an empty size is
given. This is a speculative fix for a crash while starting a drag
and drop operation, that I haven't been able to reproduce.

* platform/graphics/cairo/ImageBufferCairo.cpp:
(WebCore::ImageBuffer::ImageBuffer):


  Commit: 23a8f741b14f00f670ef2362fd1d24ad56e68e49
      https://github.com/WebKit/WebKit/commit/23a8f741b14f00f670ef2362fd1d24ad56e68e49
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2015-05-18 (Mon, 18 May 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/bindings/gobject/DOMObjectCache.cpp

  Log Message:
  -----------
  Merge r183729 - [GTK] API tests crashing on debug builds due to extra unref
https://bugs.webkit.org/show_bug.cgi?id=144508

Reviewed by Mario Sanchez Prada.

The problem is that we were assuming that when a new DOMWindow is
created, the DOM object cache was notified about the previous
DOMWindow being destroyed before objects for the new DOMWindow are
added to the cache. However, that's not always the case and we
only create a DOMWindowObserver for the first DOMWindow. We need
to keep a pointer to the DOMWindow being observed to clear() the
cache and create a new DOMWindowObserver when it changes in the
Frame.

Fixes crashes in several unit tests in debug builds.

* bindings/gobject/DOMObjectCache.cpp:


  Commit: 936d95f1348b9f4b15a6c8e0aef2f516baf77986
      https://github.com/WebKit/WebKit/commit/936d95f1348b9f4b15a6c8e0aef2f516baf77986
  Author: Philip Chimento <philip.chimento at gmail.com>
  Date:   2015-05-18 (Mon, 18 May 2015)

  Changed paths:
    M Source/JavaScriptCore/API/WebKitAvailability.h
    M Source/JavaScriptCore/ChangeLog

  Log Message:
  -----------
  webkit-gtk 2.3.3 fails to build on OS X - Conflicting type "Fixed"
https://bugs.webkit.org/show_bug.cgi?id=126433

Don't include CoreFoundation.h when building the GTK port.

Patch by Philip Chimento <philip.chimento at gmail.com> on 2015-01-06

* Source/JavaScriptCore/API/WebKitAvailability.h: Add
!defined(BUILDING_GTK__) to defined(__APPLE__).


  Commit: d860500f706d6275ce27f9f473b44331049bc4be
      https://github.com/WebKit/WebKit/commit/d860500f706d6275ce27f9f473b44331049bc4be
  Author: Owen Taylor <otaylor at redhat.com>
  Date:   2015-05-18 (Mon, 18 May 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/cairo/WidgetBackingStore.h
    M Source/WebCore/platform/cairo/WidgetBackingStoreCairo.cpp
    M Source/WebCore/platform/cairo/WidgetBackingStoreCairo.h
    M Source/WebCore/platform/graphics/cairo/CairoUtilities.cpp
    M Source/WebCore/platform/graphics/cairo/CairoUtilities.h
    M Source/WebCore/platform/gtk/WidgetBackingStoreGtkX11.cpp
    M Source/WebCore/platform/gtk/WidgetBackingStoreGtkX11.h
    M Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp
    M Source/WebKit/gtk/WebCoreSupport/ChromeClientGtk.h
    M Source/WebKit/gtk/webkit/webkitwebview.cpp
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/Shared/cairo/ShareableBitmapCairo.cpp
    M Source/WebKit2/UIProcess/API/gtk/WebKitWebViewBase.cpp
    M Source/WebKit2/UIProcess/WebPageProxy.cpp
    M Source/WebKit2/UIProcess/cairo/BackingStoreCairo.cpp

  Log Message:
  -----------
  [GTK] Add HighDPI support for non-accelerated compositing contents
https://bugs.webkit.org/show_bug.cgi?id=131562

Patch by Owen Taylor <otaylor at redhat.com> on 2014-05-29
Reviewed by Anders Carlsson.

Source/WebCore:

No new tests. This will be tested once we have the proper dependencies in the WebKit testing
JHBuild.

Adapted by Michael Kuhn for 2.4 branch.

* platform/cairo/WidgetBackingStore.h:
(WebCore::WidgetBackingStore::WidgetBackingStore): Accept a device scale argument.
* platform/cairo/WidgetBackingStoreCairo.cpp: Use the device scale argument to make the surface the proper size and set the surface device scale.
* platform/cairo/WidgetBackingStoreCairo.h: Accept a device scale argument.
* platform/graphics/cairo/CairoUtilities.cpp: Add a new helper to set the device scale if Cairo built against is new enough.
* platform/graphics/cairo/CairoUtilities.h:
* platform/gtk/GtkVersioning.h: Add the HAVE_GTK_SCALE_FACTOR macro.
* platform/gtk/WidgetBackingStoreGtkX11.cpp: Use the device scale argument to make the surface the proper size and set the surface device scale.
* platform/gtk/WidgetBackingStoreGtkX11.h: Accept a device scale argument.

Source/WebKit2:

Adapted by Michael Kuhn for 2.4 branch.

* UIProcess/API/gtk/WebKitWebViewBase.cpp:
(deviceScaleFactorChanged): Added this callback to pass scale changes to the page proxy.
(webkitWebViewBaseCreateWebPage): Attach the callback to the notify signal.
* UIProcess/WebPageProxy.cpp:
* UIProcess/cairo/BackingStoreCairo.cpp:
(WebKit::WebPageProxy::setCustomDeviceScaleFactor): Do not set a custom device scale factor for cairo when it's not supported.
(WebKit::createBackingStoreForGTK): Pass the scale factor to the WebCore backing store.
(WebKit::BackingStore::incorporateUpdate): Ditto.


  Commit: df7381c3736ae74e50dea35afe37dd2f76b01aaf
      https://github.com/WebKit/WebKit/commit/df7381c3736ae74e50dea35afe37dd2f76b01aaf
  Author: Alexander Tsoy <alexander at tsoy.me>
  Date:   2015-05-18 (Mon, 18 May 2015)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/WebProcess/soup/WebProcessSoup.cpp

  Log Message:
  -----------
  [GTK] fails to build with --disable-accelerated-compositing
https://bugs.webkit.org/show_bug.cgi?id=137640

Patch by Alexander Tsoy <alexander at tsoy.me> on 2015-05-18
Reviewed by Alberto Garcia.

* WebProcess/soup/WebProcessSoup.cpp:
(WebKit::WebProcess::platformSetCacheModel):


  Commit: c42ad127e77feac6f99c6b77ac0dc3773aa5046c
      https://github.com/WebKit/WebKit/commit/c42ad127e77feac6f99c6b77ac0dc3773aa5046c
  Author: Milan Crha <mcrha at redhat.com>
  Date:   2015-05-18 (Mon, 18 May 2015)

  Changed paths:
    M Source/JavaScriptCore/ChangeLog
    M Source/JavaScriptCore/jit/JITStubsX86.h

  Log Message:
  -----------
  [GTK][Stable] Missing implementation of callToJavaScript/callToNativeFunction with msys/mingw32
https://bugs.webkit.org/show_bug.cgi?id=132856

Patch by Milan Crha <mcrha at redhat.com> on 2015-04-17

* jit/JITStubsX86.h:


  Commit: 79412510d67dfb3e8ff810a072b0576f8296bbc5
      https://github.com/WebKit/WebKit/commit/79412510d67dfb3e8ff810a072b0576f8296bbc5
  Author: Руслан Ижбулатов <lrn1986 at gmail.com>
  Date:   2015-05-18 (Mon, 18 May 2015)

  Changed paths:
    M Source/WTF/ChangeLog
    M Source/WTF/wtf/threads/BinarySemaphore.h

  Log Message:
  -----------
  Merge r182848 - Harmonize binary semaphore ifdefs

They should be either OS(WINDOWS) (in which case we'd need
BinarySemaphoreWin.cpp, which is not shipped by WebKitGTK)
or PLATFORM(WIN) (in which case Mutex/ThreadCondition-based
implementation is used).

This fixes errors like:
  CXX      Source/WTF/wtf/threads/libWTF_la-BinarySemaphore.lo
../webkitgtk-2.4.8/Source/WTF/wtf/threads/BinarySemaphore.cpp: In constructor 'WTF::BinarySemaphore::BinarySemaphore()':
../webkitgtk-2.4.8/Source/WTF/wtf/threads/BinarySemaphore.cpp:34:7: error: class 'WTF::BinarySemaphore' does not have any field named 'm_isSet'
     : m_isSet(false)
       ^
../webkitgtk-2.4.8/Source/WTF/wtf/threads/BinarySemaphore.cpp: In member function 'void WTF::BinarySemaphore::signal()':
../webkitgtk-2.4.8/Source/WTF/wtf/threads/BinarySemaphore.cpp:44:24: error: 'm_mutex' was not declared in this scope
     MutexLocker locker(m_mutex);
                        ^
../webkitgtk-2.4.8/Source/WTF/wtf/threads/BinarySemaphore.cpp:46:5: error: 'm_isSet' was not declared in this scope
     m_isSet = true;
     ^
../webkitgtk-2.4.8/Source/WTF/wtf/threads/BinarySemaphore.cpp:47:5: error: 'm_condition' was not declared in this scope
     m_condition.signal();
     ^
../webkitgtk-2.4.8/Source/WTF/wtf/threads/BinarySemaphore.cpp: In member function 'bool WTF::BinarySemaphore::wait(double)':
../webkitgtk-2.4.8/Source/WTF/wtf/threads/BinarySemaphore.cpp:52:24: error: 'm_mutex' was not declared in this scope
     MutexLocker locker(m_mutex);
                        ^
../webkitgtk-2.4.8/Source/WTF/wtf/threads/BinarySemaphore.cpp:55:13: error: 'm_isSet' was not declared in this scope
     while (!m_isSet) {
             ^
../webkitgtk-2.4.8/Source/WTF/wtf/threads/BinarySemaphore.cpp:56:21: error: 'm_condition' was not declared in this scope
         timedOut = !m_condition.timedWait(m_mutex, absoluteTime);
                     ^
../webkitgtk-2.4.8/Source/WTF/wtf/threads/BinarySemaphore.cpp:62:5: error: 'm_isSet' was not declared in this scope
     m_isSet = false;
     ^
GNUmakefile:52762: recipe for target 'Source/WTF/wtf/threads/libWTF_la-BinarySemaphore.lo' failed

[W32] Inconsistent ifdefs in BinarySemaphore.h and BinarySemaphore.cpp
https://bugs.webkit.org/show_bug.cgi?id=143756

Patch by Руслан Ижбулатов <lrn1986 at gmail.com> on 2015-04-15
Reviewed by Darin Adler.

* wtf/threads/BinarySemaphore.h:


  Commit: c277bf6a5107a64bf0c87580279dcdf242d627b6
      https://github.com/WebKit/WebKit/commit/c277bf6a5107a64bf0c87580279dcdf242d627b6
  Author: Milan Crha <mcrha at redhat.com>
  Date:   2015-05-18 (Mon, 18 May 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/bindings/scripts/preprocessor.pm
    M Source/WebCore/dom/make_names.pl

  Log Message:
  -----------
  [GTK] Make preprocessor.pm / make_names.pl work under msys/mingw
https://bugs.webkit.org/show_bug.cgi?id=143908

Patch by Milan Crha <mcrha at redhat.com> on 2015-04-17
Reviewed by Carlos Garcia Campos.

* bindings/scripts/preprocessor.pm:
(applyPreprocessor):
* dom/make_names.pl:


  Commit: 8b1ef93bd47e306878cec424e24ddd91d1338320
      https://github.com/WebKit/WebKit/commit/8b1ef93bd47e306878cec424e24ddd91d1338320
  Author: Milan Crha <mcrha at redhat.com>
  Date:   2015-05-18 (Mon, 18 May 2015)

  Changed paths:
    M Source/WTF/ChangeLog
    M Source/WTF/wtf/MathExtras.h
    M Source/WebCore/ChangeLog
    M Source/WebCore/rendering/mathml/RenderMathMLMenclose.cpp

  Log Message:
  -----------
  [GTK] Replace M_SQRT2 with sqrtOfTwoDouble
https://bugs.webkit.org/show_bug.cgi?id=143906

Patch by Milan Crha <mcrha at redhat.com> on 2015-04-17
Reviewed by Carlos Garcia Campos.

Source/WebCore:

* rendering/mathml/RenderMathMLMenclose.cpp:
(WebCore::RenderMathMLMenclose::computePreferredLogicalWidths):
(WebCore::RenderMathMLMenclose::updateLogicalHeight):

Source/WTF:

* wtf/MathExtras.h:


  Commit: 705d0575846ca9de2a102edcd12d848c0ad39ca8
      https://github.com/WebKit/WebKit/commit/705d0575846ca9de2a102edcd12d848c0ad39ca8
  Author: Руслан Ижбулатов <lrn1986 at gmail.com>
  Date:   2015-05-18 (Mon, 18 May 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/win/SystemInfo.cpp
    M Source/WebCore/platform/win/SystemInfo.h

  Log Message:
  -----------
  [W32] windowsVersion() and osVersionForUAString() are outdated
https://bugs.webkit.org/show_bug.cgi?id=143771

Patch by Руслан Ижбулатов <lrn1986 at gmail.com> on 2015-04-15
Reviewed by Darin Adler

Update windowsVersion() and osVersionForUAString()

Add support for newer Windows versions to windowsVersion(), handle
all defined cases in osVersionForUAString(), avoiding warnings like
../webkitgtk-2.4.8/Source/WebCore/platform/win/SystemInfo.cpp: In function 'WTF::String WebCore::osVersionForUAString()':
../webkitgtk-2.4.8/Source/WebCore/platform/win/SystemInfo.cpp:94:12: warning: enumeration value 'WindowsCE5' not handled in switch [-Wswitch]
repeated for each unhandled value

* platform/win/SystemInfo.cpp:
(WebCore::windowsVersion):
(WebCore::osVersionForUAString):
* platform/win/SystemInfo.h:


  Commit: eec866ce89e1695f2ca9dc17374cbe3dc4444ad3
      https://github.com/WebKit/WebKit/commit/eec866ce89e1695f2ca9dc17374cbe3dc4444ad3
  Author: Руслан Ижбулатов <lrn1986 at gmail.com>
  Date:   2015-05-18 (Mon, 18 May 2015)

  Changed paths:
    M ChangeLog
    M Source/autotools/FindDependencies.m4

  Log Message:
  -----------
  [W32] Configure may misdetect ICU libraries
https://bugs.webkit.org/show_bug.cgi?id=143767

Patch by Руслан Ижбулатов <lrn1986 at gmail.com> on 2015-04-15
Reviewed by Carlos Garcia Campos.

Try to use pkg-config to detect ICU libraries.

MinGW packages tend to have .pc files these days. Use them.

ICU naming and structure is complex enough to warrant this, and
asking pkg-config might result in things like
UNICODE_LIBS="-licui18n54 -licuuc54 -licudata54"
instead of the default
UNICODE_LIBS="-licui18n -licuuc"
and pkg-config usually knows best.

* Source/autotools/FindDependencies.m4:


  Commit: 59f2386be80bc714035f2bea99d17b9613fec4a7
      https://github.com/WebKit/WebKit/commit/59f2386be80bc714035f2bea99d17b9613fec4a7
  Author: Руслан Ижбулатов <lrn1986 at gmail.com>
  Date:   2015-05-18 (Mon, 18 May 2015)

  Changed paths:
    M Source/WebKit/gtk/ChangeLog
    M Source/WebKit/gtk/GNUmakefile.am

  Log Message:
  -----------
  [W32][GTK] GI fails due to W32-incompatible arguments to the scanner
https://bugs.webkit.org/show_bug.cgi?id=143764

Patch by Руслан Ижбулатов <lrn1986 at gmail.com> on 2015-04-15
Reviewed by Carlos Garcia Campos.

Use correct .la files as --library arguments for GI scanner

This way it plays well with W32 gobject-introspection library resolution
code.
Without that one would get things like:
ERROR: can't resolve libraries to shared libraries: webkitgtk-3.0, javascriptcoregtk-3.0

* GNUmakefile.am:


  Commit: 338c607c2762e0a1a2dd557da1c6e4af1564448b
      https://github.com/WebKit/WebKit/commit/338c607c2762e0a1a2dd557da1c6e4af1564448b
  Author: Руслан Ижбулатов <lrn1986 at gmail.com>
  Date:   2015-05-18 (Mon, 18 May 2015)

  Changed paths:
    M ChangeLog
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/graphics/OpenGLShims.cpp
    M Source/autotools/FindDependencies.m4

  Log Message:
  -----------
  [W32] Wrong configure tests for OpenGL on Windows, wrong ifdefs
https://bugs.webkit.org/show_bug.cgi?id=143763

Patch by Руслан Ижбулатов <lrn1986 at gmail.com> on 2015-04-15
Reviewed by Carlos Garcia Campos.

Change OpenGL checks to work on W32, add libopengl32

AGain, use OS(WINDOWS) for things that are W32 but not necessarily MSVC.
Don't try to check for dlopen() on W32 (it might be available, but
native code is already here, so use it).

Correctly cast the result of GetProcAddress(), because C++.

Link W32 version to -lOpenGL32 instead of -lGL, otherwise libtool complains:
*** Warning: linker path does not have real file for library -lGL.

.:

* Source/autotools/FindDependencies.m4:

Source/WebCore:

* platform/graphics/OpenGLShims.cpp:
(WebCore::getProcAddress):


  Commit: 84d61740954ca919e0f0a6403352247d1e451b69
      https://github.com/WebKit/WebKit/commit/84d61740954ca919e0f0a6403352247d1e451b69
  Author: Руслан Ижбулатов <lrn1986 at gmail.com>
  Date:   2015-05-19 (Tue, 19 May 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/GNUmakefile.list.am

  Log Message:
  -----------
  [W32] Fails to build - missing references to OpenGL context functions
https://bugs.webkit.org/show_bug.cgi?id=143769

Patch by Руслан Ижбулатов <lrn1986 at gmail.com> on 2015-04-15
Reviewed by Carlos Garcia Campos.

Also use GL-related files when compiling with MinGW
CXXLD    libwebkitgtk-3.0.la
./.libs/../source/webcore/platform/graphics/.libs/libplatform_la-graphicscontext3dprivate.o: In function `GraphicsContext3DPrivate':
/src/mingw/webkitgtk-2.4.8-1\bld/../webkitgtk-2.4.8/Source/WebCore/platform/graphics/GraphicsContext3DPrivate.cpp:59: undefined reference to `__ZN7WebCore9GLContext14sharingContextEv'
/src/mingw/webkitgtk-2.4.8-1\bld/../webkitgtk-2.4.8/Source/WebCore/platform/graphics/GraphicsContext3DPrivate.cpp:59: undefined reference to `__ZN7WebCore9GLContext22createOffscreenContextEPS0_'
./.libs/../source/webcore/platform/graphics/.libs/libplatform_la-graphicscontext3dprivate.o: In function `platformContext':
/src/mingw/webkitgtk-2.4.8-1\bld/../webkitgtk-2.4.8/Source/WebCore/platform/graphics/GraphicsContext3DPrivate.cpp:84: undefined reference to `__ZN7WebCore9GLContext10getCurrentEv'

Becuase GLContext.cpp is not used, which happens because it's
under TARGET_X11_OR_WAYLAND condition in the GNUmakefile.list.am.
Move TARGET_X11_OR_WAYLAND up a bit to free up GLContext.cpp (now
only protected by USE_OPENGL).

* GNUmakefile.list.am:


  Commit: 90ad4917ef0d8b3d9b99bf7776a8cf03b55b7af8
      https://github.com/WebKit/WebKit/commit/90ad4917ef0d8b3d9b99bf7776a8cf03b55b7af8
  Author: Руслан Ижбулатов <lrn1986 at gmail.com>
  Date:   2015-05-19 (Tue, 19 May 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/html/canvas/WebGLRenderingContext.cpp
    M Source/WebCore/platform/graphics/GraphicsContext3D.h
    M Source/WebCore/platform/graphics/opengl/Extensions3DOpenGLCommon.cpp
    M Source/WebCore/platform/graphics/texmap/TextureMapperShaderProgram.cpp

  Log Message:
  -----------
  [W32][GTK] Conflict between NO_ERROR from W32API and GraphicsContext3D
https://bugs.webkit.org/show_bug.cgi?id=143768

Patch by Руслан Ижбулатов <lrn1986 at gmail.com> on 2015-04-15
Reviewed by Carlos Garcia Campos.

Work around name conflicts (NO_ERROR)

In file included from /mingw/include/_mingw.h:12:0,
                 from ../webkitgtk-2.4.8/Source/WTF/wtf/Compiler.h:93,
                 from ../webkitgtk-2.4.8/Source/WTF/wtf/Platform.h:32,
                 from ../webkitgtk-2.4.8/Source/JavaScriptCore/config.h:30,
                 from ../webkitgtk-2.4.8/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:27:
../webkitgtk-2.4.8/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGLCommon.cpp: In member function 'virtual int WebCore::Extensions3DOpenGLCommon::getGraphicsResetStatusARB()':
../webkitgtk-2.4.8/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:144:31: error: expected unqualified-id before numeric constant
     return GraphicsContext3D::NO_ERROR;

because NO_ERROR is also a macro defined in Windows headers. Ouch.
Also expand this to the (PLATFORM(GTK) && OS(WINDOWS)) combination,
in addition to the workaround for VERSION already present there.


  Commit: 6e67a8002987af28f6f00e456cc851fd0dfa56ce
      https://github.com/WebKit/WebKit/commit/6e67a8002987af28f6f00e456cc851fd0dfa56ce
  Author: Руслан Ижбулатов <lrn1986 at gmail.com>
  Date:   2015-05-19 (Tue, 19 May 2015)

  Changed paths:
    M Source/ThirdParty/ANGLE/ChangeLog
    M Source/ThirdParty/ANGLE/GNUmakefile.am

  Log Message:
  -----------
  [ANGLE][W32] Buildsystem is hardcoded for UNIX
https://bugs.webkit.org/show_bug.cgi?id=143762

Patch by Руслан Ижбулатов <lrn1986 at gmail.com> on 2015-04-15
Reviewed by Carlos Garcia Campos.

Don't hardcode ossource_posix.cpp in the makefile

Compile ossource_posix.cpp or ossource_win.cpp depending on the target.

Otherwise you get an error:
../webkitgtk-2.4.8/Source/ThirdParty/ANGLE/src/compiler/ossource_posix.cpp:13:2: error: #error Trying to build a posix specific file in a non-posix build.

* GNUmakefile.am:


  Commit: fb23f88cbd3062a001df55a4fb584c36a78d5c8e
      https://github.com/WebKit/WebKit/commit/fb23f88cbd3062a001df55a4fb584c36a78d5c8e
  Author: Руслан Ижбулатов <lrn1986 at gmail.com>
  Date:   2015-05-19 (Tue, 19 May 2015)

  Changed paths:
    M Source/WTF/ChangeLog
    M Source/WTF/wtf/win/GDIObject.h
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/graphics/win/GraphicsContextCairoWin.cpp

  Log Message:
  -----------
  [W32] GraphicsContextCairoWin.cpp fails to compile: unallowed function template partial specialization
https://bugs.webkit.org/show_bug.cgi?id=143761

Patch by Руслан Ижбулатов <lrn1986 at gmail.com> on 2015-04-15
Reviewed by Darin Adler.

Fix deleteObject prototypte, fix header case

Apparently, <T> is unneeded here:

Source/WebCore:

In file included from ../webkitgtk-2.4.8/Source/WebCore/platform/graphics/win/GraphicsContextCairoWin.cpp:35:0:
../webkitgtk-2.4.8/Source/WTF/wtf/win/GdiObject.h:114:58: error: function template partial specialization 'deleteObject<T>' is not allowed
template<typename T> inline void deleteObject<T>(T object)
                                                         ^
As a bonus, change GdiObject.h -> GDIObject.h (this matters when
cross-compiling or when using case-sensitive filesystems on W32).

Source/WTF:

In file included from ../webkitgtk-2.4.8/Source/WebCore/platform/graphics/win/GraphicsContextCairoWin.cpp:35:0:
../webkitgtk-2.4.8/Source/WTF/wtf/win/GdiObject.h:114:58: error: function template partial specialization 'deleteObject<T>' is not allowed
 template<typename T> inline void deleteObject<T>(T object)
                                                          ^
As a bonus, change GdiObject.h -> GDIObject.h (this matters when
cross-compiling or when using case-sensitive filesystems on W32).

* wtf/win/GDIObject.h:
(WTF::deleteObject):


  Commit: 3e9fab8535375a8b460a98bc5cd1b193ee949a15
      https://github.com/WebKit/WebKit/commit/3e9fab8535375a8b460a98bc5cd1b193ee949a15
  Author: Руслан Ижбулатов <lrn1986 at gmail.com>
  Date:   2015-05-19 (Tue, 19 May 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/rendering/RenderBlock.h

  Log Message:
  -----------
  [W32] Compile-time assertion failure: RenderBlock_should_stay_small
https://bugs.webkit.org/show_bug.cgi?id=143760

Patch by Руслан Ижбулатов <lrn1986 at gmail.com> on 2015-04-15
Reviewed by Carlos Garcia Campos.

Move enum LineLayoutPath in RenderBlock

This removes the bitfield interruption, allowing more efficient
packing.
Otherwise compile-time assertion fails:
In file included from ../webkitgtk-2.4.8/Source/WTF/wtf/PossiblyNull.h:29:0,
                 from ../webkitgtk-2.4.8/Source/WTF/wtf/FastMalloc.h:27,
                 from ../webkitgtk-2.4.8/Source/WebCore/config.h:74,
                 from ../webkitgtk-2.4.8/Source/WebCore/rendering/RenderBlock.cpp:24:
../webkitgtk-2.4.8/Source/WTF/wtf/Assertions.h:326:35: error: static assertion failed: RenderBlock_should_stay_small
                                  ^
../webkitgtk-2.4.8/Source/WebCore/rendering/RenderBlock.cpp:88:1: note: in expansion of macro 'COMPILE_ASSERT'
COMPILE_ASSERT(sizeof(RenderBlock) == sizeof(SameSizeAsRenderBlock), RenderBlock_should_stay_small);
^


  Commit: 3d121ee2d502722feeabe9b130611e97d006ace4
      https://github.com/WebKit/WebKit/commit/3d121ee2d502722feeabe9b130611e97d006ace4
  Author: Руслан Ижбулатов <lrn1986 at gmail.com>
  Date:   2015-05-19 (Tue, 19 May 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/gtk/FileSystemGtk.cpp

  Log Message:
  -----------
  [GTK][W32] FileSystemGtk calls GetModuleHandleExA(), but does not include appropriate header
https://bugs.webkit.org/show_bug.cgi?id=143759

Patch by Руслан Ижбулатов <lrn1986 at gmail.com> on 2015-04-15
Reviewed by Darin Adler.

Add missing includes to FileSystemGtk

Needed for GetModuleHandleExA() & Co.

* platform/gtk/FileSystemGtk.cpp:


  Commit: 52b32363f5fdac4eb982df28819cd817be63384d
      https://github.com/WebKit/WebKit/commit/52b32363f5fdac4eb982df28819cd817be63384d
  Author: Руслан Ижбулатов <lrn1986 at gmail.com>
  Date:   2015-05-19 (Tue, 19 May 2015)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/graphics/freetype/FontPlatformDataFreeType.cpp

  Log Message:
  -----------
  WebCore uses M_PI_2 instead of piOverTwoDouble
https://bugs.webkit.org/show_bug.cgi?id=143758

Patch by Руслан Ижбулатов <lrn1986 at gmail.com> on 2015-04-15
Reviewed by Darin Adler.

Because M_PI_2 is not defined everywhere.
Fixes errors like:
  CXX Source/WebCore/platform/graphics/freetype/libPlatformGtk_la-FontPlatformDataFreeType.lo
../webkitgtk-2.4.8/Source/WebCore/platform/graphics/freetype/FontPlatformDataFreeType.cpp: In function 'void WebCore::rotateCairoMatrixForVerticalOrientation(cairo_matrix_t*)':
../webkitgtk-2.4.8/Source/WebCore/platform/graphics/freetype/FontPlatformDataFreeType.cpp:123:34: error: 'M_PI_2' was not declared in this scope
     cairo_matrix_rotate(matrix, -M_PI_2);
                                  ^
GNUmakefile:51663: recipe for target 'Source/WebCore/platform/graphics/freetype/libPlatformGtk_la-FontPlatformDataFreeType.lo' failed

* platform/graphics/freetype/FontPlatformDataFreeType.cpp:
(WebCore::rotateCairoMatrixForVerticalOrientation):


  Commit: 206e00f98102f08a293416d10af1f5771c5abb5d
      https://github.com/WebKit/WebKit/commit/206e00f98102f08a293416d10af1f5771c5abb5d
  Author: Руслан Ижбулатов <lrn1986 at gmail.com>
  Date:   2015-05-19 (Tue, 19 May 2015)

  Changed paths:
    M Source/WebInspectorUI/ChangeLog
    M Source/WebInspectorUI/GNUmakefile.am
    M Tools/ChangeLog
    M Tools/gtk/GNUmakefile.am

  Log Message:
  -----------
  [W32] Buildsystem may use wrong Python interpreter
https://bugs.webkit.org/show_bug.cgi?id=143755

Patch by Руслан Ижбулатов <lrn1986 at gmail.com> on 2015-04-15
Reviewed by Carlos Garcia Campos.

Use confgured Python interpreter

Configure script has tests for Python (AC_PATH_PROG(PYTHON, python)),
use the interpretor they provide (which is overridable by user by
the way of passing PYTHON=... to configure) instead of the first
thing found in PATH.

Otherwise wrong version of Python might be used. Mingw-python,
for example, which has commandline length limit, which results in
errors like:
/usr/bin/env: python: Argument list too long
GNUmakefile:82317: recipe for target
'DerivedSources/WebInspectorUI/GResourceBundle.xml' failed

Source/WebInspectorUI:

* GNUmakefile.am:

Tools:

* gtk/GNUmakefile.am:


  Commit: 98a80568b5cbf3d723a8468aa8649edc1090aab3
      https://github.com/WebKit/WebKit/commit/98a80568b5cbf3d723a8468aa8649edc1090aab3
  Author: Руслан Ижбулатов <lrn1986 at gmail.com>
  Date:   2015-05-19 (Tue, 19 May 2015)

  Changed paths:
    M Source/WTF/ChangeLog
    M Source/WTF/wtf/Atomics.h

  Log Message:
  -----------
  [W32] weakCompareAndSwap assembler code is not used when building with MinGW GCC
https://bugs.webkit.org/show_bug.cgi?id=143754

Unreviewed.

Allow MinGW-GCC to use GCC asm code for weakCompareAndSwap.

Patch by Руслан Ижбулатов <lrn1986 at gmail.com> on 2015-04-16

* wtf/Atomics.h:
(WTF::x86_mfence):
(WTF::weakCompareAndSwap):


  Commit: 13da59611d8e8a0de20546e46d9773b07f04e16d
      https://github.com/WebKit/WebKit/commit/13da59611d8e8a0de20546e46d9773b07f04e16d
  Author: Milan Crha <mcrha at redhat.com>
  Date:   2015-05-19 (Tue, 19 May 2015)

  Changed paths:
    M ChangeLog
    M GNUmakefile.am
    M Source/WebInspectorUI/ChangeLog
    M Source/WebInspectorUI/GNUmakefile.am
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/PlatformGTK.cmake
    M Tools/ChangeLog
    M Tools/gtk/generate-inspector-gresource-manifest.py

  Log Message:
  -----------
  [GTK] Expand wildcards inside generate-inspector-gresource-manifest.py
https://bugs.webkit.org/show_bug.cgi?id=138134

Patch by Milan Crha <mcrha at redhat.com> on 2015-04-17
Reviewed by Carlos Garcia Campos.

.:

* GNUmakefile.am: Command line with expanded resources exceeds 32KB, which
is a limit on Windows. It's better to expand wildcards inside the
python script.

Source/WebInspectorUI:

* GNUmakefile.am: Command line with expanded resources exceeds 32KB, which
is a limit on Windows. It's better to expand wildcards inside the
python script.

Source/WebKit2:

* PlatformGTK.cmake: Command line with expanded resources exceeds 32KB, which
is a limit on Windows. It's better to expand wildcards inside the
python script.

Tools:

* gtk/generate-inspector-gresource-manifest.py:
(get_filenames): Command line with expanded resources exceeds 32KB, which
is a limit on Windows. It's better to expand wildcards inside the
python script.


  Commit: 7227e0987cae47f8147df47d2c3361e166cdd356
      https://github.com/WebKit/WebKit/commit/7227e0987cae47f8147df47d2c3361e166cdd356
  Author: Milan Crha <mcrha at redhat.com>
  Date:   2015-05-19 (Tue, 19 May 2015)

  Changed paths:
    M Source/WTF/ChangeLog
    M Source/WTF/wtf/Platform.h

  Log Message:
  -----------
  [GTK] Miscellaneous changes for msys/mingw
https://bugs.webkit.org/show_bug.cgi?id=143907

Patch by Milan Crha <mcrha at redhat.com> on 2015-04-17
Reviewed by Carlos Garcia Campos.

* wtf/Platform.h: Remove autogenerated header not needed by GTK
port.


  Commit: 942967dac5ad752d76d0228553e83a9e275f1609
      https://github.com/WebKit/WebKit/commit/942967dac5ad752d76d0228553e83a9e275f1609
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2015-05-19 (Tue, 19 May 2015)

  Changed paths:
    M Source/WebInspectorUI/ChangeLog
    M Source/WebInspectorUI/GNUmakefile.am

  Log Message:
  -----------
  Unreviewed. Fix make distcheck.

* GNUmakefile.am:


  Commit: 47311e828c98f3d2f88dab81d249bd15c89dfd63
      https://github.com/WebKit/WebKit/commit/47311e828c98f3d2f88dab81d249bd15c89dfd63
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2015-05-20 (Wed, 20 May 2015)

  Changed paths:
    M ChangeLog
    M Source/WebKit/gtk/ChangeLog
    M Source/WebKit/gtk/NEWS
    M Source/autotools/Versions.m4

  Log Message:
  -----------
  Unreviewed. Update NEWS and Versions.m4 for 2.4.9 release.

.:

* Source/autotools/Versions.m4: Bump version numbers.

Source/WebKit/gtk:

* NEWS: Added release notes for 2.4.9.


  Commit: c75b11c0a2a4e3c155f61e808946792e9be21be9
      https://github.com/WebKit/WebKit/commit/c75b11c0a2a4e3c155f61e808946792e9be21be9
  Author: changseok.oh at collabora.com <changseok.oh at collabora.com>
  Date:   2016-02-27 (Sat, 27 Feb 2016)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/dom/HTMLProgressElement/native-progress-bar.html
    A LayoutTests/platform/gtk/fast/dom/HTMLProgressElement/native-progress-bar-expected.png
    A LayoutTests/platform/gtk/fast/dom/HTMLProgressElement/native-progress-bar-expected.txt
    A LayoutTests/platform/mac/fast/dom/HTMLProgressElement/native-progress-bar-expected.png
    A LayoutTests/platform/mac/fast/dom/HTMLProgressElement/native-progress-bar-expected.txt
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/gtk/RenderThemeGtk3.cpp

  Log Message:
  -----------
  Merge r190662 - [GTK] Progress bar is broken on recent GTK+
https://bugs.webkit.org/show_bug.cgi?id=149831

Reviewed by Carlos Garcia Campos.

Source/WebCore:

The gtk progress bar has been broken after bumping up to Gtk+-3.16. This is because
the way of rendering progress bar changed after gtk+-3.13.7. See more
https://mail.gnome.org/archives/commits-list/2014-August/msg03865.html
gtk_render_activity is no longer valid to paint a progress bar on a newer gtk+.
It should be done with gtk_render_background and gtk_render_frame.

Test: fast/dom/HTMLProgressElement/native-progress-bar.html

* rendering/RenderThemeGtk.cpp:
(WebCore::RenderThemeGtk::paintProgressBar):

LayoutTests:

* fast/dom/HTMLProgressElement/native-progress-bar.html: Added.
* platform/gtk/fast/dom/HTMLProgressElement/native-progress-bar-expected.png: Added.
* platform/gtk/fast/dom/HTMLProgressElement/native-progress-bar-expected.txt: Added.
* platform/mac/fast/dom/HTMLProgressElement/native-progress-bar-expected.png: Added.
* platform/mac/fast/dom/HTMLProgressElement/native-progress-bar-expected.txt: Added.


  Commit: 5cddb1391a080987f81e1b63f9ef90feb7ba2d23
      https://github.com/WebKit/WebKit/commit/5cddb1391a080987f81e1b63f9ef90feb7ba2d23
  Author: Michael Catanzaro <mcatanzaro at gnome.org>
  Date:   2016-02-27 (Sat, 27 Feb 2016)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/gtk/RenderThemeGtk3.cpp
    M Source/WebCore/platform/gtk/ScrollbarThemeGtk3.cpp

  Log Message:
  -----------
  Merge r192723 - [GTK] Warning spam from GtkStyleContext
https://bugs.webkit.org/show_bug.cgi?id=151520

Reviewed by Carlos Garcia Campos.

Audit every use of gtk_style_context_get_* to fix compatibility with GTK+ 3.19. Some of
these were already fine and are only changed for clarity.

Company:  gtk_style_context_get() (and _get_padding/border/color()) should only ever be
          called with the same state as gtk_style_context_get_state()
Company:  usually that's a simple replacing of the old state (like in the trace you posted)
Company:  sometimes it requires calling gtk_style_context_set_sate() with the right state
          first
Company:  and in very rare cases it needs a gtk_style_context_save() before the set_state(),
          too

* platform/gtk/ScrollbarThemeGtk.cpp:
(WebCore::adjustRectAccordingToMargin):
* rendering/RenderThemeGtk.cpp:
(gtk_css_section_print):
(WebCore::getStyleContext):
(WebCore::RenderThemeGtk::initMediaColors):
(WebCore::renderButton):
(WebCore::getComboBoxMetrics):
(WebCore::RenderThemeGtk::paintMenuList):
(WebCore::RenderThemeGtk::paintTextField):
(WebCore::RenderThemeGtk::paintProgressBar):
(WebCore::spinButtonArrowSize):
(WebCore::RenderThemeGtk::adjustInnerSpinButtonStyle):
(WebCore::styleColor):


  Commit: b24c80e911aa964b1a1ff8ff4f8222d86c727526
      https://github.com/WebKit/WebKit/commit/b24c80e911aa964b1a1ff8ff4f8222d86c727526
  Author: Michael Catanzaro <mcatanzaro at gnome.org>
  Date:   2016-02-27 (Sat, 27 Feb 2016)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/gtk/RenderThemeGtk3.cpp

  Log Message:
  -----------
  Merge r192724 - [GTK] Off-by-one error in getStyleContext()
https://bugs.webkit.org/show_bug.cgi?id=151524

Reviewed by Carlos Garcia Campos.

GtkWidgetPath* path = gtk_widget_path_new();
gtk_widget_path_append_type(path, widgetType);
// ...
gtk_widget_path_iter_add_class(path, 0, GTK_STYLE_CLASS_BUTTON);
gtk_widget_path_iter_add_class(path, 1, "text-button");

Only one widget type was appended to the widget path, so the maximum valid index is 0. This
code means to add both style classes to the first widget type in the widget path, so the
second call should use index 0 rather than index 1.

This caused no bug in practice, because when the index is invalid,
gtk_widget_path_iter_add_class() automatically changes the index to the last valid position
in the widget path -- in this case, 0. This is routinely done with -1 as a convention for
specifying the last position in the widget path.

* rendering/RenderThemeGtk.cpp:
(WebCore::getStyleContext):


  Commit: e55c9f7bdb13a6fbbaa9a7e58d16a9dcab25ef8b
      https://github.com/WebKit/WebKit/commit/e55c9f7bdb13a6fbbaa9a7e58d16a9dcab25ef8b
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2016-02-27 (Sat, 27 Feb 2016)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/gtk/RenderThemeGtk.h
    M Source/WebCore/platform/gtk/RenderThemeGtk3.cpp
    M Source/WebCore/platform/gtk/ScrollbarThemeGtk.h
    M Source/WebCore/platform/gtk/ScrollbarThemeGtk3.cpp

  Log Message:
  -----------
  Merge r173110, r193896 - [GTK] ScrollbarThemeGtk should not depend on RenderThemeGtk
https://bugs.webkit.org/show_bug.cgi?id=136338

Reviewed by Philippe Normand.

Remove the dependency by creating the GtkStyleContext for the
scrollbars in ScrollbarThemeGtk.

* platform/gtk/RenderThemeGtk.cpp:
(WebCore::gtkStyleChangedCallback): Call ScrollbarThemeGtk::themeChanged().
(WebCore::getStyleContext): Remove the scrollbar style context support.
* platform/gtk/RenderThemeGtk.h: Remove gtkScrollbarStyle().
* platform/gtk/ScrollbarThemeGtk.cpp:
(WebCore::ScrollbarStyleContext::ScrollbarStyleContext): Helper
class to create the global GtkStyleContext for scrollbars.
(WebCore::ScrollbarStyleContext::~ScrollbarStyleContext):
(WebCore::ScrollbarStyleContext::context):
(WebCore::gtkScrollbarStyleContext):
(WebCore::ScrollbarThemeGtk::ScrollbarThemeGtk): Remove m_context initialization.
(WebCore::ScrollbarThemeGtk::themeChanged): Invalidate the
GtkStylecontext and call updateThemeProperties().
(WebCore::ScrollbarThemeGtk::updateThemeProperties): Use the
global style context.
(WebCore::ScrollbarThemeGtk::paintTrackBackground): Ditto.
(WebCore::ScrollbarThemeGtk::paintScrollbarBackground): Ditto.
(WebCore::ScrollbarThemeGtk::paintThumb): Ditto.
(WebCore::ScrollbarThemeGtk::paintButton): Ditto.
* platform/gtk/ScrollbarThemeGtk.h:

[GTK] RenderThemeGtk::platformActiveSelectionBackgroundColor, et. al. should not clobber state of cached GtkStyleContexts
https://bugs.webkit.org/show_bug.cgi?id=151533

Reviewed by Carlos Garcia Campos.

Remove the style context cache to simplify the code, drastically reduce the number of
expensive save/restore operations performed on style contexts, and avoid unwanted
side-effects in RenderThemeGtk::styleColor. This is also a speculative fix for improper
button rendering with certain custom themes, and a simplification that will make it easier
to fix bug #150550.

This change does have performance implications, which I intend to check on the perf bot
after landing to ensure that removing the cache does not have a significant negative impact
on performance; I have no clue whether this will be a net performance win or loss. However,
this is a bit tricky, because the bot is running GTK+ 3.16, whereas I expect save/restore
might be much more expensive in GTK+ 3.20, and I do not want to make performance decisions
except based on the latest GTK+ due to large changes in the implementation of


  Commit: 33b218ed2b49274c17cc89ac264bf53a1d281939
      https://github.com/WebKit/WebKit/commit/33b218ed2b49274c17cc89ac264bf53a1d281939
  Author: Michael Catanzaro <mcatanzaro at gnome.org>
  Date:   2016-02-27 (Sat, 27 Feb 2016)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/gtk/GRefPtrGtk.cpp
    M Source/WebCore/platform/gtk/GRefPtrGtk.h
    M Source/WebCore/platform/gtk/RenderThemeGtk3.cpp
    M Source/WebCore/platform/gtk/ScrollbarThemeGtk3.cpp

  Log Message:
  -----------
  Merge r194377 - [GTK] Everything broken in GTK+ 3.19
https://bugs.webkit.org/show_bug.cgi?id=150550

Reviewed by Carlos Garcia Campos.

Port RenderThemeGtk and ScrollbarThemeGtk to use CSS nodes. This makes it possible to render
stuff with modern GTK+.

No new tests. We already have tons of tests for this functionality, but we're running them
with GTK+ 3.16, so they cannot have detected this breakage. These fixes require unreleased
GTK+, and GTK+ rendering is currently in a state of flux; once things settle down, we can
consider upgrading the GTK+ used for our layout tests.

* platform/gtk/GRefPtrGtk.cpp:
(WTF::refGPtr):
(WTF::derefGPtr):
* platform/gtk/GRefPtrGtk.h:
* platform/gtk/ScrollbarThemeGtk.cpp:
(WebCore::ScrollbarThemeGtk::themeChanged):
(WebCore::ScrollbarThemeGtk::updateThemeProperties):
(WebCore::orientationStyleClass):
(WebCore::applyScrollbarStyleContextClasses):
(WebCore::ScrollbarThemeGtk::paintTrackBackground):
(WebCore::ScrollbarThemeGtk::paintScrollbarBackground):
(WebCore::ScrollbarThemeGtk::paintThumb):
(WebCore::ScrollbarThemeGtk::paintButton):
* rendering/RenderThemeGtk.cpp:
(WebCore::createStyleContext):
(WebCore::setToggleSize):
(WebCore::paintToggle):
(WebCore::RenderThemeGtk::paintButton):
(WebCore::getComboBoxMetrics):
(WebCore::RenderThemeGtk::paintMenuList):
(WebCore::RenderThemeGtk::paintTextField):
(WebCore::applySliderStyleContextClasses):
(WebCore::RenderThemeGtk::paintSliderTrack):
(WebCore::RenderThemeGtk::paintSliderThumb):
(WebCore::RenderThemeGtk::paintProgressBar):
(WebCore::paintSpinArrowButton):
(WebCore::styleColor):


  Commit: 8636734366b19aaadb0b117959560886d2f05b08
      https://github.com/WebKit/WebKit/commit/8636734366b19aaadb0b117959560886d2f05b08
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2016-02-27 (Sat, 27 Feb 2016)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/gtk/RenderThemeGtk.cpp
    M Source/WebCore/platform/gtk/RenderThemeGtk.h
    M Source/WebCore/platform/gtk/RenderThemeGtk2.cpp
    M Source/WebCore/platform/gtk/RenderThemeGtk3.cpp

  Log Message:
  -----------
  Merge r194847 - [GTK] Cleanup RenderThemeGtk
https://bugs.webkit.org/show_bug.cgi?id=152888

Reviewed by Michael Catanzaro.

Use a common path for GTK+ 3.19 and previous versions, simplifying
the code and removing a lot of ifdefs.

 - createStyleContext() now receives a theme part enum value, and
   an optional parent GtkStyleContext. It encapsulates all the
   differences between GTK+ 3.19 and previous version leaving the
   rendering code common and free of ifdefs.
 - Stock icons support have been removed, simplifying the code
   that now always renders symbolic icons, updating the colors
   depending on the current state.
 - Media button and colors have been removed, because they are
   unused now that we render the media controls with CSS.
 - ComboBox separators support has also been removed. In GTK+ 3.19
   combo boxes no longer have separators and most of the GTK+
   themes don't use the either, so it's better to simple not render
   them anymore in WebKit either.
 - Code to paint caps lock indicator has been removed too, since
   caps lock indicator is now shadow dom and automatically
   rendered by WebCore.

* rendering/RenderThemeGtk.cpp:
(WebCore::createStyleContext):
(WebCore::loadThemedIcon):
(WebCore::gtkIconStateFlags):
(WebCore::RenderThemeGtk::adjustRepaintRect):
(WebCore::setToggleSize):
(WebCore::paintToggle):
(WebCore::RenderThemeGtk::setCheckboxSize):
(WebCore::RenderThemeGtk::paintCheckbox):
(WebCore::RenderThemeGtk::setRadioSize):
(WebCore::RenderThemeGtk::paintRadio):
(WebCore::RenderThemeGtk::paintButton):
(WebCore::getComboBoxMetrics):
(WebCore::RenderThemeGtk::popupInternalPaddingLeft):
(WebCore::RenderThemeGtk::popupInternalPaddingRight):
(WebCore::RenderThemeGtk::popupInternalPaddingTop):
(WebCore::RenderThemeGtk::popupInternalPaddingBottom):
(WebCore::RenderThemeGtk::paintMenuList):
(WebCore::RenderThemeGtk::paintTextField):
(WebCore::adjustSearchFieldIconStyle):
(WebCore::RenderThemeGtk::adjustSearchFieldResultsDecorationPartStyle):
(WebCore::paintIcon):
(WebCore::paintEntryIcon):
(WebCore::RenderThemeGtk::paintSearchFieldResultsDecorationPart):
(WebCore::RenderThemeGtk::adjustSearchFieldCancelButtonStyle):
(WebCore::RenderThemeGtk::paintSearchFieldCancelButton):
(WebCore::RenderThemeGtk::shouldHaveCapsLockIndicator):
(WebCore::RenderThemeGtk::paintSliderTrack):
(WebCore::RenderThemeGtk::paintSliderThumb):
(WebCore::RenderThemeGtk::adjustSliderThumbSize):
(WebCore::RenderThemeGtk::paintProgressBar):
(WebCore::RenderThemeGtk::adjustInnerSpinButtonStyle):
(WebCore::paintSpinArrowButton):
(WebCore::RenderThemeGtk::paintInnerSpinButton):
(WebCore::styleColor):
(WebCore::RenderThemeGtk::platformActiveSelectionBackgroundColor):
(WebCore::RenderThemeGtk::platformInactiveSelectionBackgroundColor):
(WebCore::RenderThemeGtk::platformActiveSelectionForegroundColor):
(WebCore::RenderThemeGtk::platformInactiveSelectionForegroundColor):
(WebCore::RenderThemeGtk::platformActiveListBoxSelectionBackgroundColor):
(WebCore::RenderThemeGtk::platformInactiveListBoxSelectionBackgroundColor):
(WebCore::RenderThemeGtk::platformActiveListBoxSelectionForegroundColor):
(WebCore::RenderThemeGtk::platformInactiveListBoxSelectionForegroundColor):
(WebCore::RenderThemeGtk::systemColor):
(WebCore::RenderThemeGtk::paintMediaButton):
(WebCore::RenderThemeGtk::paintMediaFullscreenButton):
(WebCore::RenderThemeGtk::paintMediaMuteButton):
(WebCore::RenderThemeGtk::paintMediaPlayButton):
(WebCore::RenderThemeGtk::paintMediaSeekBackButton):
(WebCore::RenderThemeGtk::paintMediaSeekForwardButton):
(WebCore::RenderThemeGtk::paintMediaToggleClosedCaptionsButton):
* rendering/RenderThemeGtk.h:


  Commit: 3d50b3f3d604a23f44c26e54e34d40907c5e4da9
      https://github.com/WebKit/WebKit/commit/3d50b3f3d604a23f44c26e54e34d40907c5e4da9
  Author: Carlos Garcia Campos <cgarcia at igalia.com>
  Date:   2016-02-27 (Sat, 27 Feb 2016)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/gtk/RenderThemeGtk3.cpp

  Log Message:
  -----------
  Merge r196364 - [GTK] Toggle buttons are blurry with GTK+ 3.19
https://bugs.webkit.org/show_bug.cgi?id=154007

Reviewed by Michael Catanzaro.

Use min-width/min-height style properties when GTK+ >= 3.19.7 to
get the size of toggle buttons.

* rendering/RenderThemeGtk.cpp:
(WebCore::setToggleSize):
(WebCore::paintToggle):


  Commit: 90a029cd3a7b5c5ee33c70802068fca1c012884a
      https://github.com/WebKit/WebKit/commit/90a029cd3a7b5c5ee33c70802068fca1c012884a
  Author: Dean Jackson <dino at apple.com>
  Date:   2016-02-28 (Sun, 28 Feb 2016)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/canvas/webgl/angle-instanced-arrays-out-of-bounds-expected.txt
    A LayoutTests/fast/canvas/webgl/angle-instanced-arrays-out-of-bounds.html
    A LayoutTests/fast/canvas/webgl/resources/out-of-bounds-test.js
    A LayoutTests/platform/mac-mountainlion/fast/canvas/webgl/angle-instanced-arrays-out-of-bounds-expected.txt
    M Source/WebCore/ChangeLog
    M Source/WebCore/html/canvas/WebGLRenderingContext.cpp
    M Source/WebCore/html/canvas/WebGLRenderingContext.h

  Log Message:
  -----------
  Merge r177165 - InstancedArray crashes attempting to draw out of bounds
https://bugs.webkit.org/show_bug.cgi?id=139521
Source/WebCore:

Reviewed by Simon Fraser.

We were not doing index validation correctly for instancing.

Test: fast/canvas/webgl/angle-instanced-arrays-out-of-bounds.html

* html/canvas/WebGLRenderingContext.cpp:
(WebCore::WebGLRenderingContext::validateVertexAttributes): We need to check
the number of instances drawn against the amount of instance data that has
been provided, taking into account the number of repeats (the divisor).
(WebCore::WebGLRenderingContext::drawArrays): Added some whitespace to make it more clear.
(WebCore::WebGLRenderingContext::validateDrawElements): This needs to take a primcount
parameter so that it can correctly validate the call (when used from drawElementsInstanced).
(WebCore::WebGLRenderingContext::drawElements): New signature to validate.
(WebCore::WebGLRenderingContext::drawArraysInstanced): Rearrange this a bit. The
primcount validation is already being done by the validateDrawArrays call. Also, there
was a bogus UNUSED_PARAM hanging around.
(WebCore::WebGLRenderingContext::drawElementsInstanced): Similar rearrangement. Use
the primcount parameter.
* html/canvas/WebGLRenderingContext.h:

LayoutTests:

<rdar://problem/17540398>

Reviewed by Simon Fraser.

This is a copy of the official webgl/1.0.3 test.

* platform/mac-mountainlion/fast/canvas/webgl/angle-instanced-arrays-out-of-bounds-expected.txt: Added. This extension is not available on Mountain Lion.
* fast/canvas/webgl/angle-instanced-arrays-out-of-bounds-expected.txt: Added.
* fast/canvas/webgl/angle-instanced-arrays-out-of-bounds.html: Added.
* fast/canvas/webgl/resources/out-of-bounds-test.js: Added.
(OutOfBoundsTest):


  Commit: cec6045bccb01aa85c758dea79df8ad2f8463e3a
      https://github.com/WebKit/WebKit/commit/cec6045bccb01aa85c758dea79df8ad2f8463e3a
  Author: Alan Bujtas <zalan at apple.com>
  Date:   2016-02-28 (Sun, 28 Feb 2016)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/inline/crash-when-position-property-is-changed-and-no-longer-in-continuation-expected.txt
    A LayoutTests/fast/inline/crash-when-position-property-is-changed-and-no-longer-in-continuation.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/rendering/RenderInline.cpp

  Log Message:
  -----------
  Merge r182051 - Inline continuation code should not take anonymous containing wrapper granted.
https://bugs.webkit.org/show_bug.cgi?id=133312

Reviewed by Dave Hyatt.

It's wrong to assume that when RenderInline is part of an inline continuation, its containing block
is an anonymous wrapper and its sibling might be a block level renderer.
When the inline continuation is no longer needed, for example when the block level renderer that initiated the continuation
is detached from the render tree, the inline renderes still continue to form continuation.(however they no longer require
anonymous wrappers)

Source/WebCore:

Test: fast/inline/crash-when-position-property-is-changed-and-no-longer-in-continuation.html

* rendering/RenderInline.cpp:
(WebCore::updateStyleOfAnonymousBlockContinuations):
(WebCore::RenderInline::styleDidChange):

LayoutTests:

* fast/inline/crash-when-position-property-is-changed-and-no-longer-in-continuation-expected.txt: Added.
* fast/inline/crash-when-position-property-is-changed-and-no-longer-in-continuation.html: Added.


  Commit: 46bcf64fb3b547816a3a5d1f42aef1b935e57e8e
      https://github.com/WebKit/WebKit/commit/46bcf64fb3b547816a3a5d1f42aef1b935e57e8e
  Author: Brady Eidson <beidson at apple.com>
  Date:   2016-02-28 (Sun, 28 Feb 2016)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/loader/icon/IconController.cpp

  Log Message:
  -----------
  Merge r181565 - URLs visited during private browsing show up in WebpageIcons.db
rdar://problem/11254910 and https://bugs.webkit.org/show_bug.cgi?id=142733

Patch by Sam Weinig. Reviewed by Brady Eidson.

* loader/icon/IconController.cpp:
(WebCore::IconController::startLoader): Bail early here if the page is using an ephemeral session.
(WebCore::IconController::continueLoadWithDecision): Instead of here.


  Commit: b75bed454971a314d7fd75b706d12d1e30ac171a
      https://github.com/WebKit/WebKit/commit/b75bed454971a314d7fd75b706d12d1e30ac171a
  Author: Brent Fulgham <bfulgham at webkit.org>
  Date:   2016-02-28 (Sun, 28 Feb 2016)

  Changed paths:
    M Source/WTF/wtf/WeakPtr.h
    M Source/WebCore/ChangeLog
    M Source/WebCore/page/EventHandler.cpp
    M Source/WebCore/page/EventHandler.h
    M Source/WebCore/platform/Scrollbar.cpp
    M Source/WebCore/platform/Scrollbar.h

  Log Message:
  -----------
  Merge r180548 - EventHandler references deleted Scrollbar
https://bugs.webkit.org/show_bug.cgi?id=141931
<rdar://problem/19915210>

Reviewed by Tim Horton.

Tested by scrollbars/overflow-custom-scrollbar-crash.html

Update the EventHandler class to use a WeakPtr to reference the
last used Scrollbar, rather than retaining the Scrollbar and
artificially extending its life. This keeps the EventHandler
state in proper sync with the state of the render tree, and
avoids cases where we have destroyed a ScrollableArea (and
Scrollbar) but are still sending messages to a fake zombie
version of the element.

* page/EventHandler.cpp:
(WebCore::EventHandler::clear):
(WebCore::EventHandler::handleMousePressEvent):
(WebCore::EventHandler::updateMouseEventTargetNode):
(WebCore::EventHandler::updateLastScrollbarUnderMouse):
* page/EventHandler.h:
* platform/Scrollbar.cpp:
(WebCore::Scrollbar::Scrollbar): Initialize WeakPtrFactory.
* platform/Scrollbar.h:
(WebCore::Scrollbar::createWeakPtr): Added,


  Commit: f9de5b6b3ea5a3a85237ad59e12e86240ae8db06
      https://github.com/WebKit/WebKit/commit/f9de5b6b3ea5a3a85237ad59e12e86240ae8db06
  Author: Darin Adler <darin at apple.com>
  Date:   2016-02-28 (Sun, 28 Feb 2016)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/Modules/indexeddb/IDBDatabase.cpp

  Log Message:
  -----------
  Merge r183398 - Crashes under IDBDatabase::closeConnection
https://bugs.webkit.org/show_bug.cgi?id=141745

Reviewed by Alexey Proskuryakov.

* Modules/indexeddb/IDBDatabase.cpp:
(WebCore::IDBDatabase::~IDBDatabase): Do the work of close/closeConnection without
actually calling those functions.
(WebCore::IDBDatabase::closeConnection): Protect the database so it's not destroyed
in the middle of this function's execution.


  Commit: 5bb670aa2b83db5ee26975e7036d1115ca156871
      https://github.com/WebKit/WebKit/commit/5bb670aa2b83db5ee26975e7036d1115ca156871
  Author: Said Abou-Hallawa <sabouhallawa at apple.com>
  Date:   2016-02-28 (Sun, 28 Feb 2016)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/http/tests/canvas/canvas-tainted-after-draw-image-expected.txt
    A LayoutTests/http/tests/canvas/canvas-tainted-after-draw-image.html
    A LayoutTests/http/tests/canvas/resources/100x100-lime-rect.svg
    M Source/WebCore/ChangeLog
    M Source/WebCore/html/canvas/CanvasRenderingContext2D.cpp

  Log Message:
  -----------
  Merge r182750 - Canvas drawImage() has a security hole when the image isn't yet fully loaded.
https://bugs.webkit.org/show_bug.cgi?id=58681.

Reviewed by Darin Adler.

Source/WebCore:

There is a race condition which may happen if an image from a different
origin is drawn on a canvas before it finishes loading. The check to taint
the canvas comes before drawing it. This check returns false if the image
is not completely loaded because we check the URL of the resource response.
If after this check and before the drawing, the image finishes loading, the
canvas will not be tainted but the image will be drawn.

The fix is to move the check to taint the canvas after drawing the image.
The only problem with this solution is basically the opposite of this bug:
we will become stricter than before with images which are from a different
origin and before they finish loading. The image has not finished loading,
so we do not draw it. Before we check for tainting, the image finishes
loading. So we decide to taint the canvas even the image is not drawn.

But this should not be a security issue anymore. I personally do not know
if it is even a correctness issue or not.

Test: http/tests/canvas/canvas-tainted-after-draw-image.html

* html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::drawImage):

LayoutTests:

This test confirms when we load an image from a different origin and try
drawing it on a canvas, the canvas is tainted if the image is completely
loaded and drawn. Otherwise the image is not drawn.

* http/tests/canvas/canvas-tainted-after-draw-image-expected.txt: Added.
* http/tests/canvas/canvas-tainted-after-draw-image.html: Added.
* http/tests/canvas/resources: Added.
* http/tests/canvas/resources/100x100-lime-rect.svg: Added.

Fix LayoutTests/http/tests/canvas/canvas-tainted-after-draw-image.html on all bots
following http://trac.webkit.org/changeset/182750.

Reviewed by Daniel Bates.

* http/tests/canvas/canvas-tainted-after-draw-image-expected.txt:
* http/tests/canvas/canvas-tainted-after-draw-image.html:
Set window.jsTestIsAsync true and call finishJSTest() to make the test
asynchronous, so the "TEST COMPLETE" message will be output after all the
test messages. Also delete the synchronous tests for data url image and
same-domain image since they can't be reliably tested.


  Commit: 000c174e7f93e317c76697b1d873e147e713b970
      https://github.com/WebKit/WebKit/commit/000c174e7f93e317c76697b1d873e147e713b970
  Author: Said Abou-Hallawa <sabouhallawa at apple.com>
  Date:   2016-02-28 (Sun, 28 Feb 2016)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/svg/filters/feMorphology-radius-cases-expected.svg
    A LayoutTests/svg/filters/feMorphology-radius-cases.svg
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/graphics/filters/FEMorphology.cpp
    M Source/WebCore/platform/graphics/filters/FEMorphology.h

  Log Message:
  -----------
  Merge r182067 - FEMorphology::platformApplyGeneric() should bail out if the radius is less than or equal to zero.
https://bugs.webkit.org/show_bug.cgi?id=142885.

Patch by Said Abou-Hallawa <sabouhallawa at apple.com> on 2015-03-27
Reviewed by Dean Jackson.

Source/WebCore:

FEMorphology class implementation code clean up.

Tests: svg/filters/feMorphology-radius-cases.svg

* platform/graphics/filters/FEMorphology.cpp:
(WebCore::shouldSupersedeExtremum): Reuse code instead of repeating it and
use < and > instead of =< and >=.

(WebCore::pixelArrayIndex): Returns the array index of a pixel in an image
buffer, given: position(x, y), image width and the color channel.

(WebCore::columnExtremum): Returns the extremum of a column of pixels.

(WebCore::kernelExtremum): Returns the extremum of a filter kernel.

(WebCore::FEMorphology::platformApplyGeneric): Apply some code clean-up.
The kernel size should be equal to radius of the filter. The extra pixel
was causing the resulted image to be asymmetric in some cases.

(WebCore::FEMorphology::platformApplyDegenerate):
(WebCore::FEMorphology::platformApplySoftware): After applying scaling, we
still need to check the resulted radius is negative (overflow case) or less
than one (zero radius case) and treat these cases differently.

(WebCore::FEMorphology::morphologyOperator): Deleted.
(WebCore::FEMorphology::radiusX): Deleted.
(WebCore::FEMorphology::radiusY): Deleted.
* platform/graphics/filters/FEMorphology.h:
(WebCore::FEMorphology::morphologyOperator):
(WebCore::FEMorphology::radiusX):
(WebCore::FEMorphology::radiusY):
Move a single line functions from the source file to the header file.

LayoutTests:

* svg/filters/feMorphology-radius-cases-expected.svg: Added.
* svg/filters/feMorphology-radius-cases.svg: Added.
Test different cases for radius of the feMorphology filter. There are three
cases for the radius:
    1. radius < 0: This is an error case, the source image should not be rendered.
    2. radius = 0: This case is treated as if the filter never exists.
    3. radius > 0: If the scaled radius is > 0, the filter is applied.


  Commit: 10dfe7388db055900f7585e05f92ed44f47878f6
      https://github.com/WebKit/WebKit/commit/10dfe7388db055900f7585e05f92ed44f47878f6
  Author: Brady Eidson <beidson at apple.com>
  Date:   2016-02-28 (Sun, 28 Feb 2016)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/storage/websql/alter-to-info-table-expected.txt
    A LayoutTests/storage/websql/alter-to-info-table.html
    A LayoutTests/storage/websql/alter-to-info-table.js
    M LayoutTests/storage/websql/test-authorizer-expected.txt
    M LayoutTests/storage/websql/test-authorizer.js
    M Source/WebCore/ChangeLog
    M Source/WebCore/Modules/webdatabase/DatabaseBackendBase.cpp

  Log Message:
  -----------
  Merge r183649 - Javascript using WebSQL can create their own WebKit info table.
<rdar://problem/20688792> and https://bugs.webkit.org/show_bug.cgi?id=144466

Reviewed by Alex Christensen.

Source/WebCore:

Test: storage/websql/alter-to-info-table.html

* Modules/webdatabase/DatabaseBackendBase.cpp:
(WebCore::DatabaseBackendBase::databaseInfoTableName): Return the info table name.
(WebCore::fullyQualifiedInfoTableName): Append "main." to the info table name.
(WebCore::DatabaseBackendBase::DatabaseBackendBase): Use the fully qualified name.
(WebCore::DatabaseBackendBase::performOpenAndVerify): Ditto.
(WebCore::DatabaseBackendBase::getVersionFromDatabase): Ditto.
(WebCore::DatabaseBackendBase::setVersionInDatabase): Ditto.

LayoutTests:

* storage/websql/alter-to-info-table-expected.txt: Added.
* storage/websql/alter-to-info-table.html: Added.
* storage/websql/alter-to-info-table.js: Added.

Build fix after r183646 for less enlightened platforms.

Unreviewed.

* Modules/webdatabase/DatabaseBackendBase.cpp:
(WebCore::fullyQualifiedInfoTableName): Windows doesn’t have stpcpy :(


  Commit: 80b7d6c61bca494ff72ad7c165c5bee2d33a6caa
      https://github.com/WebKit/WebKit/commit/80b7d6c61bca494ff72ad7c165c5bee2d33a6caa
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2016-02-28 (Sun, 28 Feb 2016)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/dom/Attr.cpp
    M Source/WebCore/dom/Element.cpp
    M Source/WebCore/dom/Element.h
    M Source/WebCore/dom/StyledElement.cpp
    M Source/WebCore/dom/StyledElement.h
    M Source/WebCore/html/HTMLInputElement.cpp
    M Source/WebCore/mathml/MathMLElement.cpp
    M Source/WebCore/mathml/MathMLElement.h
    M Source/WebCore/mathml/MathMLSelectElement.cpp
    M Source/WebCore/mathml/MathMLSelectElement.h
    M Source/WebCore/svg/SVGElement.cpp
    M Source/WebCore/svg/SVGElement.h

  Log Message:
  -----------
  Element::attributeChanged shouldn't do any work when attribute value didn't change
https://bugs.webkit.org/show_bug.cgi?id=129467

Reviewed by Geoffrey Garen.

Exit early in childrenChanged when the attribute value didn't change.

* dom/Attr.cpp:
(WebCore::Attr::setValue):
(WebCore::Attr::childrenChanged):
* dom/Element.cpp:
(WebCore::Element::setAttributeInternal):
(WebCore::Element::attributeChanged):
(WebCore::Element::parserSetAttributes):
(WebCore::Element::removeAttributeInternal):
(WebCore::Element::didAddAttribute):
(WebCore::Element::didModifyAttribute):
(WebCore::Element::didRemoveAttribute):
(WebCore::Element::cloneAttributesFromElement):
* dom/Element.h:
* dom/StyledElement.cpp:
(WebCore::StyledElement::attributeChanged):
* dom/StyledElement.h:
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::updateType):
* mathml/MathMLElement.cpp:
(WebCore::MathMLElement::attributeChanged):
* mathml/MathMLElement.h:
* mathml/MathMLSelectElement.cpp:
(WebCore::MathMLSelectElement::attributeChanged):
* mathml/MathMLSelectElement.h:
* svg/SVGElement.cpp:
(WebCore::SVGElement::attributeChanged):
* svg/SVGElement.h:


  Commit: 8431ec479d9e8b55d17a99946a2772d259dfd3b0
      https://github.com/WebKit/WebKit/commit/8431ec479d9e8b55d17a99946a2772d259dfd3b0
  Author: Daniel Bates <dbates at webkit.org>
  Date:   2016-02-28 (Sun, 28 Feb 2016)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/forms/change-form-id-to-be-unique-expected.txt
    A LayoutTests/fast/forms/change-form-id-to-be-unique-then-submit-form-expected.txt
    A LayoutTests/fast/forms/change-form-id-to-be-unique-then-submit-form.html
    A LayoutTests/fast/forms/change-form-id-to-be-unique.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/dom/Element.cpp
    M Source/WebCore/dom/Element.h
    M Source/WebCore/dom/TreeScope.cpp
    M Source/WebCore/dom/TreeScope.h

  Log Message:
  -----------
  Merge r183436 - Form control may be associated with the wrong HTML Form element after form id change
https://bugs.webkit.org/show_bug.cgi?id=133456
<rdar://problem/17095055>

Reviewed by Andy Estes.

Source/WebCore:

Fixes an issue where a form control may be associated with the wrong HTML Form element
after the id of the HTML Form element associated with the form control is changed when
there is more than one HTML Form element with the same id in the document. Specifically,
a form control that has an HTML form attribute value X will always be associated with
some HTML Form element f where f.id = X regardless of whether f.id is subsequently
changed.

Tests: fast/forms/change-form-id-to-be-unique-then-submit-form.html
       fast/forms/change-form-id-to-be-unique.html

* dom/Element.cpp:
(WebCore::Element::attributeChanged): Notify observers when the id of an element changed.
(WebCore::Element::updateId): Added parameter NotifyObservers (defaults to NotifyObservers::Yes),
as to whether we should notify observers of the id change.
(WebCore::Element::updateIdForTreeScope): Ditto.
(WebCore::Element::willModifyAttribute): Do not notify observers of the id change immediately. As
indicated by the name of this method, we plan to modify the DOM attribute id of the element, but
we have not actually modified it when this method is called. Instead we will notify observers
in Element::attributeChanged(), which is called after the DOM attribute id is modified.
(WebCore::Element::cloneAttributesFromElement): Ditto.
* dom/Element.h: Defined enum class NotifyObservers.
* dom/TreeScope.cpp:
(WebCore::TreeScope::addElementById): Added boolean parameter notifyObservers (defaults to true)
as to whether we should dispatch a notification to all observers.
(WebCore::TreeScope::removeElementById): Ditto.
* dom/TreeScope.h:

LayoutTests:

Add tests to ensure that we associate the correct HTML Form element with a
<select> after changing the id of its associated HTML form element.

* fast/forms/change-form-id-to-be-unique-expected.txt: Added.
* fast/forms/change-form-id-to-be-unique-then-submit-form-expected.txt: Added.
* fast/forms/change-form-id-to-be-unique-then-submit-form.html: Added.
* fast/forms/change-form-id-to-be-unique.html: Added.


  Commit: af45c3921e2845633bf6a5a34a1eb66970aa22a3
      https://github.com/WebKit/WebKit/commit/af45c3921e2845633bf6a5a34a1eb66970aa22a3
  Author: Brady Eidson <beidson at apple.com>
  Date:   2016-02-28 (Sun, 28 Feb 2016)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/http/tests/security/cors-post-redirect-301-expected.txt
    A LayoutTests/http/tests/security/cors-post-redirect-301.html
    A LayoutTests/http/tests/security/cors-post-redirect-302-expected.txt
    A LayoutTests/http/tests/security/cors-post-redirect-302.html
    A LayoutTests/http/tests/security/cors-post-redirect-307-expected.txt
    A LayoutTests/http/tests/security/cors-post-redirect-307.html
    A LayoutTests/http/tests/security/cors-post-redirect-308-expected.txt
    A LayoutTests/http/tests/security/cors-post-redirect-308.html
    A LayoutTests/http/tests/security/resources/cors-post-redirect-target.php
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/network/cf/ResourceHandleCFNet.cpp
    M Source/WebCore/platform/network/mac/ResourceHandleMac.mm
    M Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp

  Log Message:
  -----------
  Merge r183280,r183672 - Origin header is preserved on cross-origin redirects.
https://bugs.webkit.org/show_bug.cgi?id=144157.

Reviewed by Sam Weinig.

Source/WebCore:

Tests: http/tests/security/cors-post-redirect-301.html
       http/tests/security/cors-post-redirect-302.html
       http/tests/security/cors-post-redirect-307.html
       http/tests/security/cors-post-redirect-308.html

* platform/network/cf/ResourceHandleCFNet.cpp:
(WebCore::ResourceHandle::willSendRequest): Always clear any origin header for cross-origin redirects.
* platform/network/mac/ResourceHandleMac.mm:
(WebCore::ResourceHandle::willSendRequest): Ditto.

LayoutTests:

* http/tests/security/cors-post-redirect-301-expected.txt: Added.
* http/tests/security/cors-post-redirect-301.html: Added.
* http/tests/security/cors-post-redirect-302-expected.txt: Added.
* http/tests/security/cors-post-redirect-302.html: Added.
* http/tests/security/cors-post-redirect-307-expected.txt: Added.
* http/tests/security/cors-post-redirect-307.html: Added.
* http/tests/security/cors-post-redirect-308-expected.txt: Added.
* http/tests/security/cors-post-redirect-308.html: Added.
* http/tests/security/resources/cors-post-redirect-target.php: Added.

[GTK] New CORS tests from r183280 fail on WebKitGTK+
https://bugs.webkit.org/show_bug.cgi?id=144469

Reviewed by Sergio Villar Senin.

No new tests. This causes failing tests to pass.

* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::doRedirect): Clear the origin header on cross-origin redirects.


  Commit: d8b6320be33734ed2e1e6d1c38d37467e31f72b4
      https://github.com/WebKit/WebKit/commit/d8b6320be33734ed2e1e6d1c38d37467e31f72b4
  Author: Matthew Mirman <mmirman at apple.com>
  Date:   2016-02-28 (Sun, 28 Feb 2016)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/js/script-tests/sloppy-getter-setter-global-object.js
    A LayoutTests/js/sloppy-getter-setter-global-object-expected.txt
    A LayoutTests/js/sloppy-getter-setter-global-object.html
    M Source/JavaScriptCore/ChangeLog
    M Source/JavaScriptCore/runtime/JSGlobalObjectFunctions.cpp

  Log Message:
  -----------
  Merge r183275 - Made Object.prototype.__proto__ native getter and setter check that this object not null or undefined
https://bugs.webkit.org/show_bug.cgi?id=141865
rdar://problem/19927273

Reviewed by Filip Pizlo.

* runtime/JSGlobalObjectFunctions.cpp:
(JSC::globalFuncProtoGetter):
(JSC::globalFuncProtoSetter):

LayoutTests:
Added tests to ensure that Object.prototype.__proto__ native getter and setter do not coerce undefined to this
https://bugs.webkit.org/show_bug.cgi?id=141865
rdar://problem/19927273

Reviewed by Filip Pizlo.

* js/script-tests/sloppy-getter-setter-global-object.js: Added.
* js/sloppy-getter-setter-global-object-expected.txt: Added.
* js/sloppy-getter-setter-global-object.html: Added.


  Commit: d5516e2e3b97c6a114f24772894daf684313c2ec
      https://github.com/WebKit/WebKit/commit/d5516e2e3b97c6a114f24772894daf684313c2ec
  Author: Brady Eidson <beidson at apple.com>
  Date:   2016-02-28 (Sun, 28 Feb 2016)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/html/HTMLMediaElement.cpp

  Log Message:
  -----------
  Merge r182918 - Media element can manipulate DOM during Document destruction.
rdar://problem/20553898 and https://bugs.webkit.org/show_bug.cgi?id=143780

Patch by Brady Eidson <beidson at apple.com> on 2015-04-16
Reviewed by Jer Noble.

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::configureMediaControls): Bail if the element has no active document.


  Commit: d6a0c9a6d9af4a5df4ebf6d1dc23a555df80b967
      https://github.com/WebKit/WebKit/commit/d6a0c9a6d9af4a5df4ebf6d1dc23a555df80b967
  Author: Andy Estes <aestes at apple.com>
  Date:   2016-02-28 (Sun, 28 Feb 2016)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/dom/element-removed-while-inserting-parent-crash-expected.txt
    A LayoutTests/fast/dom/element-removed-while-inserting-parent-crash.html
    A LayoutTests/fast/dom/named-map-removed-while-inserting-parent-crash-expected.txt
    A LayoutTests/fast/dom/named-map-removed-while-inserting-parent-crash.html
    A LayoutTests/fast/forms/form-control-removed-while-inserting-parent-crash-expected.txt
    A LayoutTests/fast/forms/form-control-removed-while-inserting-parent-crash.html
    A LayoutTests/svg/dom/element-removed-while-inserting-parent-crash-expected.txt
    A LayoutTests/svg/dom/element-removed-while-inserting-parent-crash.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/dom/ScriptElement.cpp
    M Source/WebCore/dom/ScriptElement.h
    M Source/WebCore/html/HTMLScriptElement.cpp
    M Source/WebCore/html/HTMLScriptElement.h
    M Source/WebCore/svg/SVGScriptElement.cpp
    M Source/WebCore/svg/SVGScriptElement.h

  Log Message:
  -----------
  Merge r185769 - Various assertion failures occur when executing script in the midst of DOM insertion
https://bugs.webkit.org/show_bug.cgi?id=132482

Reviewed by Darin Adler.

Source/WebCore:

Prior to this change, when an element containing a <script> child was inserted into a document, the script was
executed in ScriptElement::insertedInto(). That script can access nodes that follow it in the newly-inserted
hierarchy but are not yet fully inserted, leading to at least the following problems:

    - The script could remove a node that is not yet marked as in the document.
    - The script could remove a named <map> that has yet to be added to TreeScope::m_imageMapsByName.
    - The script could remove a form control that has yet to be added to FormController::m_formElementsWithState.

These scenarios all result in assertion failures. This change ensures that each node in the newly-inserted
hierarchy is fully inserted before executing any scripts.

Tests: fast/dom/element-removed-while-inserting-parent-crash.html
       fast/dom/named-map-removed-while-inserting-parent-crash.html
       fast/forms/form-control-removed-while-inserting-parent-crash.html
       svg/dom/element-removed-while-inserting-parent-crash.html

* dom/ScriptElement.cpp:
(WebCore::ScriptElement::shouldNotifySubtreeInsertions): Renamed from insertedInto().
Returned true in the case where insertedInto() would've called prepareScript().
(WebCore::ScriptElement::didNotifySubtreeInsertions): Called prepareScript().
(WebCore::ScriptElement::insertedInto): Renamed to shouldNotifySubtreeInsertions().
* dom/ScriptElement.h:
* html/HTMLScriptElement.cpp:
(WebCore::HTMLScriptElement::insertedInto): If shouldNotifySubtreeInsertions() is true, returned InsertionShouldCallDidNotifySubtreeInsertions.
Otherwise, returned InsertionDone.
(WebCore::HTMLScriptElement::didNotifySubtreeInsertions): Called ScriptElement::didNotifySubtreeInsertions().
* html/HTMLScriptElement.h:
* svg/SVGScriptElement.cpp:
(WebCore::SVGScriptElement::insertedInto): Did the same as HTMLScriptElement::insertedInto().
(WebCore::SVGScriptElement::didNotifySubtreeInsertions): Called ScriptElement::didNotifySubtreeInsertions().
* svg/SVGScriptElement.h:

LayoutTests:

Wrote named-map-removed-while-inserting-parent-crash.html by reducing the test case attached to bug 132482.
The remaining tests were taken from blink r132482.

* fast/dom/element-removed-while-inserting-parent-crash-expected.txt: Added.
* fast/dom/element-removed-while-inserting-parent-crash.html: Added.
* fast/dom/named-map-removed-while-inserting-parent-crash-expected.txt: Added.
* fast/dom/named-map-removed-while-inserting-parent-crash.html: Added.
* fast/forms/form-control-removed-while-inserting-parent-crash-expected.txt: Added.
* fast/forms/form-control-removed-while-inserting-parent-crash.html: Added.
* svg/dom/element-removed-while-inserting-parent-crash-expected.txt: Added.
* svg/dom/element-removed-while-inserting-parent-crash.html: Added.


  Commit: e2e7ba7edd3b968617f0172420e20c8670d8b333
      https://github.com/WebKit/WebKit/commit/e2e7ba7edd3b968617f0172420e20c8670d8b333
  Author: Alan Bujtas <zalan at apple.com>
  Date:   2016-02-28 (Sun, 28 Feb 2016)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/inline/crash-when-child-renderer-is-removed-and-line-stays-clean-expected.txt
    A LayoutTests/fast/inline/crash-when-child-renderer-is-removed-and-line-stays-clean.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/rendering/RenderInline.cpp
    M Source/WebCore/rendering/RootInlineBox.cpp

  Log Message:
  -----------
  Merge r185572 - RootInlineBox::m_lineBreakObj becomes invalid when a child renderer is removed and the line does not get marked dirty.
https://bugs.webkit.org/show_bug.cgi?id=145988
rdar://problem/20959137

Reviewed by David Hyatt.

This patch ensures that we find the right first inline box so that we can dirty the
the appropriate line boxes.
With marking the right line boxes dirty, now we can update RootInlineBox::m_lineBreakObj at the next layout.

Source/WebCore:

Test: fast/inline/crash-when-child-renderer-is-removed-and-line-stays-clean.html

* rendering/RenderInline.cpp:
(WebCore::RenderInline::culledInlineFirstLineBox):
(WebCore::RenderInline::culledInlineLastLineBox):
* rendering/RootInlineBox.cpp:
(WebCore::RootInlineBox::setLineBreakInfo): Deleted. Remove misleading assert and comment.

LayoutTests:

* fast/inline/crash-when-child-renderer-is-removed-and-line-stays-clean-expected.txt: Added.
* fast/inline/crash-when-child-renderer-is-removed-and-line-stays-clean.html: Added.


  Commit: dd2a956e50d0055e3c67c0a65c15df1db25b86db
      https://github.com/WebKit/WebKit/commit/dd2a956e50d0055e3c67c0a65c15df1db25b86db
  Author: Said Abou-Hallawa <sabouhallawa at apple.com>
  Date:   2016-02-28 (Sun, 28 Feb 2016)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/svg/filters/feComposite-background-rect-control-operators-expected.svg
    A LayoutTests/svg/filters/feComposite-background-rect-control-operators.svg
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/graphics/IntRect.h
    M Source/WebCore/platform/graphics/filters/FEComposite.cpp
    M Source/WebCore/platform/graphics/filters/FilterEffect.cpp
    M Source/WebCore/platform/graphics/filters/FilterEffect.h

  Log Message:
  -----------
  Merge r185392 - feComposite filter does not clip the paint rect to its effect rect when the operator is 'in' or 'atop'
https://bugs.webkit.org/show_bug.cgi?id=137856

Patch by Said Abou-Hallawa <sabouhallawa at apple.com> on 2015-06-09
Reviewed by Darin Adler.

Source/WebCore:

There was bug in calculating the absolutePaintRect of the feComposite filter
when the operator is equal to 'in' or 'atop'. The absolutePaintRect was set
to the absolutePaintRect of the background FilterEffect which is correct.
What was missing is clipping this rectangle to the maxEffectRect of the
filter which we do for other operators.

Tests: svg/filters/feComposite-background-rect-control-operators.svg

* platform/graphics/IntRect.h:
(WebCore::operator-=):
(WebCore::operator-): Add new operators to IntRect.

* platform/graphics/filters/FEComposite.cpp:
(WebCore::FEComposite::determineAbsolutePaintRect): Make sure the filter
absolutePaintRect is clipped to maxEffectRect for all operators.

(WebCore::FEComposite::platformApplySoftware): Code clean-up.

* platform/graphics/filters/FilterEffect.cpp:
(WebCore::FilterEffect::determineAbsolutePaintRect): Move the clipping
part to a separate function.

(WebCore::FilterEffect::clipAbsolutePaintRect): Clip the absolutePaintRect
to the maxEffectRect of the filter.

* platform/graphics/filters/FilterEffect.h:

LayoutTests:

* svg/filters/feComposite-background-rect-control-operators-expected.svg: Added.
* svg/filters/feComposite-background-rect-control-operators.svg: Added.
Ensure the painting rect of the feComposite filter with operator 'in' or
'atop' is clipped to its bounding rectangle


  Commit: 5d267b71a76dbdeafc5f8aec525aed02ce8ce609
      https://github.com/WebKit/WebKit/commit/5d267b71a76dbdeafc5f8aec525aed02ce8ce609
  Author: Brady Eidson <beidson at apple.com>
  Date:   2016-02-28 (Sun, 28 Feb 2016)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/sql/SQLiteDatabase.cpp
    M Source/WebCore/platform/sql/SQLiteDatabase.h

  Log Message:
  -----------
  Merge r185003 - WebSQL default functions can bypass authorizer.
<rdar://problem/21048994> and https://bugs.webkit.org/show_bug.cgi?id=145463

Reviewed by Sam Weinig and Alexey Proskuryakov.

No new tests yet.

* platform/sql/SQLiteDatabase.cpp:
(WebCore::unauthorizedSQLFunction): Function to install into SQLite to override some built-in functions.
(WebCore::SQLiteDatabase::open):
(WebCore::SQLiteDatabase::overrideUnauthorizedFunctions): Install function overrides for functions that
   take arbitrary input that are also meant to be disabled by virtue of them not being whitelisted.
* platform/sql/SQLiteDatabase.h:

Review feedback followup for r185003.
https://bugs.webkit.org/show_bug.cgi?id=145463

Reviewed by Darin Adler.

* platform/sql/SQLiteDatabase.cpp:
(WebCore::SQLiteDatabase::overrideUnauthorizedFunctions): `static const` one thing, c++-style cast another.


  Commit: 0e27ebfe1d74e77ade6ec6fc016d4691154d1a69
      https://github.com/WebKit/WebKit/commit/0e27ebfe1d74e77ade6ec6fc016d4691154d1a69
  Author: Myles C. Maxfield <mmaxfield at apple.com>
  Date:   2016-02-28 (Sun, 28 Feb 2016)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/text/icu/UTextProviderLatin1.cpp

  Log Message:
  -----------
  Merge r184965 - Crash under ICU with ASAN during editing/selection/move-by-word-visually-crash-test-5.html
https://bugs.webkit.org/show_bug.cgi?id=145429
<rdar://problem/20992218>

Reviewed by Alexey Proskuryakov.

WebKit uses some strings which contain the lower 8-bits of UTF-16 (thereby saving space). However,
ICU doesn't understand this encoding. When we want to use ICU functions with strings in this encoding,
we create a UTextProvider which converts our encoded strings to UTF-16 for ICU, one chunk at a time.
This object contains a vtable which we populate to perform the conversion.

The WebKit function which actually returns the UTF-16 chunks has two relevant arguments: an index into
the encoded string which ICU is requesting, and a direction from that index which ICU is interested
in. This function populates a "chunk" which is characterized by a pointer to a buffer, the length of
the populated data in the buffer, and an offset into the chunk which represents the index that the
requested character was put into.

When ICU requests data going backward, we fill in the chunk accordingly, with the requested character
all the way at the end. We then set the offset equal to the length of the buffer. However, this length
value is stale from the previous time the function ran. Therefore, ICU was reading the wrong index in
the chunk when expecting the requested character.

Covered by editing/selection/move-by-word-visually-crash-test-5.html.

* platform/text/icu/UTextProviderLatin1.cpp:
(WebCore::uTextLatin1Access):


  Commit: 69bab69297a58b1dfe5d715b44752fca28958849
      https://github.com/WebKit/WebKit/commit/69bab69297a58b1dfe5d715b44752fca28958849
  Author: Chris Dumez <cdumez at apple.com>
  Date:   2016-02-28 (Sun, 28 Feb 2016)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/mathml/maction-removeChild-expected.txt
    A LayoutTests/mathml/maction-removeChild.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/mathml/MathMLSelectElement.h

  Log Message:
  -----------
  Merge r188014 - Crash when removing children of a MathMLSelectElement
https://bugs.webkit.org/show_bug.cgi?id=147704
<rdar://problem/21940321>

Reviewed by Ryosuke Niwa.

Source/WebCore:

When MathMLSelectElement::childrenChanged() is called after its
children have been removed, MathMLSelectElement calls
updateSelectedChild() which accesses m_selectedChild. However,
in this case, m_selectedChild is the previously selected child
and it may be destroyed as this point if it was removed. To avoid
this problem, MathMLSelectElement now keep a strong ref to the
currently selected element.

Test: mathml/maction-removeChild.html

* mathml/MathMLSelectElement.h:

LayoutTests:

Add layout test that reproduces the crash under guardmalloc.

* mathml/maction-removeChild-expected.txt: Added.
* mathml/maction-removeChild.html: Added.


  Commit: 11878b46cc2e170a43528e1da071046ea6e83827
      https://github.com/WebKit/WebKit/commit/11878b46cc2e170a43528e1da071046ea6e83827
  Author: Alan Bujtas <zalan at apple.com>
  Date:   2016-02-28 (Sun, 28 Feb 2016)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/loader/SubframeLoader.cpp

  Log Message:
  -----------
  Merge r186666 - Plugin create can end up destroying its renderer.
https://bugs.webkit.org/show_bug.cgi?id=146824
rdar://problem/18921429

Reviewed by Andreas Kling.

Plugins can run arbitrary code during initialization. If the plugin
happens to destroy the associated node, its renderer becomes invalid.
This patch checks whether the renderer survived the createPlugin() call.
(This WeakPtr pattern is also used in RenderWidget to avoid dangling pointers.)

Speculative fix. Not reproducible.

* loader/SubframeLoader.cpp:
(WebCore::SubframeLoader::loadPlugin):


  Commit: 7549f9839d7daefac5a5ecbf8437be6c0e53d42a
      https://github.com/WebKit/WebKit/commit/7549f9839d7daefac5a5ecbf8437be6c0e53d42a
  Author: Daniel Bates <dbates at webkit.org>
  Date:   2016-02-28 (Sun, 28 Feb 2016)

  Changed paths:
    M LayoutTests/ChangeLog
    M LayoutTests/http/tests/cookies/resources/setCookies.cgi
    A LayoutTests/http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-expected.txt
    A LayoutTests/http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-when-private-browsing-enabled-expected.txt
    A LayoutTests/http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-when-private-browsing-enabled.html
    A LayoutTests/http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-when-private-browsing-toggled-expected.txt
    A LayoutTests/http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-when-private-browsing-toggled.html
    A LayoutTests/http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies.html
    A LayoutTests/http/tests/security/contentSecurityPolicy/report-same-origin-no-cookies-when-private-browsing-toggled-expected.txt
    A LayoutTests/http/tests/security/contentSecurityPolicy/report-same-origin-no-cookies-when-private-browsing-toggled.html
    A LayoutTests/http/tests/security/contentSecurityPolicy/report-same-origin-with-cookies-expected.txt
    A LayoutTests/http/tests/security/contentSecurityPolicy/report-same-origin-with-cookies-when-private-browsing-enabled-expected.txt
    A LayoutTests/http/tests/security/contentSecurityPolicy/report-same-origin-with-cookies-when-private-browsing-enabled.html
    A LayoutTests/http/tests/security/contentSecurityPolicy/report-same-origin-with-cookies.html
    M LayoutTests/http/tests/security/contentSecurityPolicy/resources/save-report.php
    M Source/WebCore/ChangeLog
    M Source/WebCore/loader/PingLoader.cpp

  Log Message:
  -----------
  Merge r186663 - Fetching Content Security Policy report URL should respect same origin policy
https://bugs.webkit.org/show_bug.cgi?id=146754
<rdar://problem/18860259>

Reviewed by Brady Eidson.

Inspired by Blink r149791 (by Mike West <mkwst at chromium.org>):
<https://src.chromium.org/viewvc/blink?revision=149791&view=revision>

Source/WebCore:

As per <http://www.w3.org/TR/2015/CR-CSP2-20150219/#send-violation-reports>, fetching the
Content Security Policy report URL should include cookies if and only if the origin of
the protected resource is equal to the origin of the report URL.

Tests: http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-when-private-browsing-enabled.html
       http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-when-private-browsing-toggled.html
       http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies.html
       http/tests/security/contentSecurityPolicy/report-same-origin-no-cookies-when-private-browsing-toggled.html
       http/tests/security/contentSecurityPolicy/report-same-origin-with-cookies-when-private-browsing-enabled.html
       http/tests/security/contentSecurityPolicy/report-same-origin-with-cookies.html

* loader/PingLoader.cpp:
(WebCore::PingLoader::sendViolationReport):

LayoutTests:

Added additional tests for private browsing mode.

* http/tests/cookies/resources/setCookies.cgi:
* http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-when-private-browsing-enabled-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-when-private-browsing-enabled.html: Added.
* http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-when-private-browsing-toggled-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-when-private-browsing-toggled.html: Added.
* http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies.html: Added.
* http/tests/security/contentSecurityPolicy/report-same-origin-no-cookies-when-private-browsing-toggled-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/report-same-origin-no-cookies-when-private-browsing-toggled.html: Added.
* http/tests/security/contentSecurityPolicy/report-same-origin-with-cookies-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/report-same-origin-with-cookies-when-private-browsing-enabled-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/report-same-origin-with-cookies-when-private-browsing-enabled.html: Added.
* http/tests/security/contentSecurityPolicy/report-same-origin-with-cookies.html: Added.
* http/tests/security/contentSecurityPolicy/resources/save-report.php:
* platform/wk2/TestExpectations: Skip private browsing mode tests in WebKit2 until we fix <https://bugs.webkit.org/show_bug.cgi?id=115274>.


  Commit: 9b7db21c8526883c87405e3fa6250035ea8f577c
      https://github.com/WebKit/WebKit/commit/9b7db21c8526883c87405e3fa6250035ea8f577c
  Author: Daniel Bates <dbates at webkit.org>
  Date:   2016-02-28 (Sun, 28 Feb 2016)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/scrollbars/custom-scrollbars-paint-outside-iframe-expected.html
    A LayoutTests/scrollbars/custom-scrollbars-paint-outside-iframe.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/ScrollView.cpp

  Log Message:
  -----------
  Merge r173046 - Scrollbar corner can be drawn outside containing frame
https://bugs.webkit.org/show_bug.cgi?id=133131
<rdar://problem/16382769>

Reviewed by Simon Fraser.

Source/WebCore:

Merged from Blink (patch by Levi Weintraub):
<https://src.chromium.org/viewvc/blink?revision=170625&view=revision>

Fixes an issue where the scroll corner may be painted outside the rectangle of
its associated frame by setting a clip rectangle before painting the scroll bar(s)
and scroll corner.

Test: scrollbars/custom-scrollbars-paint-outside-iframe.html

* platform/ScrollView.cpp:
(WebCore::ScrollView::paint):

LayoutTests:

Add DRT test that was derived from the test included in
<https://src.chromium.org/viewvc/blink?revision=170625&view=revision>.

* scrollbars/custom-scrollbars-paint-outside-iframe-expected.html: Added.
* scrollbars/custom-scrollbars-paint-outside-iframe.html: Added.


  Commit: 14a20f32407f474e4fa9c36a6811c0739a8079fd
      https://github.com/WebKit/WebKit/commit/14a20f32407f474e4fa9c36a6811c0739a8079fd
  Author: Alexey Proskuryakov <ap at webkit.org>
  Date:   2016-02-28 (Sun, 28 Feb 2016)

  Changed paths:
    M LayoutTests/ChangeLog
    M LayoutTests/http/tests/security/cross-frame-access-call-expected.txt
    M LayoutTests/http/tests/security/cross-frame-access-call.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/bindings/js/JSHistoryCustom.cpp

  Log Message:
  -----------
  Merge r182284 - Clean up access checks in JSHistoryCustom.cpp
https://bugs.webkit.org/show_bug.cgi?id=143227

Reviewed by Sam Weinig.

Source/WebCore:

* bindings/js/JSHistoryCustom.cpp:
(WebCore::JSHistory::putDelegate):
(WebCore::JSHistory::deleteProperty):
(WebCore::JSHistory::deletePropertyByIndex):
(WebCore::JSHistory::getOwnPropertyNames):
(WebCore::JSHistory::pushState):
(WebCore::JSHistory::replaceState):

LayoutTests:

* http/tests/security/cross-frame-access-call-expected.txt:
* http/tests/security/cross-frame-access-call.html:


  Commit: ae2643df523df7a63ef329b53a35747bc7b76f05
      https://github.com/WebKit/WebKit/commit/ae2643df523df7a63ef329b53a35747bc7b76f05
  Author: Said Abou-Hallawa <sabouhallawa at apple.com>
  Date:   2016-02-28 (Sun, 28 Feb 2016)

  Changed paths:
    M LayoutTests/ChangeLog
    M LayoutTests/svg/dom/SVGLengthList-basics-expected.txt
    M LayoutTests/svg/dom/SVGLengthList-basics.xhtml
    M Source/WebCore/ChangeLog
    M Source/WebCore/svg/properties/SVGListPropertyTearOff.h

  Log Message:
  -----------
  Merge r180128 - Crash when accessing an item in SVGLengthList and then replacing it with a previous item in the list.
https://bugs.webkit.org/show_bug.cgi?id=141552.

Reviewed by Darin Adler.

Source/WebCore:

Tests: LayoutTests/svg/dom/SVGLengthList-basics.xhtml: This test is modified to
include a new test case.

* svg/properties/SVGListPropertyTearOff.h: Commit the removal of the replacing item
before trying to detach the wrapper of the item which going to be replaced.

LayoutTests:

* svg/dom/SVGLengthList-basics-expected.txt:
* svg/dom/SVGLengthList-basics.xhtml: Add a new test case to this test. Have a
reference to an SVGLength in an SVGLengthList and then replace this SVGLength
with another one which comes before it in the SVGLengthList.


  Commit: 009cc5809cafb7891173e91b2264a4cb985c84ff
      https://github.com/WebKit/WebKit/commit/009cc5809cafb7891173e91b2264a4cb985c84ff
  Author: Maciej Stachowiak <mjs at apple.com>
  Date:   2016-02-28 (Sun, 28 Feb 2016)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/text/remove-text-node-linebox-not-dirty-crash-expected.txt
    A LayoutTests/fast/text/remove-text-node-linebox-not-dirty-crash.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/rendering/RenderLineBoxList.cpp

  Log Message:
  -----------
  Merge r179706 - Crash due to failing to dirty a removed text node's line box
https://bugs.webkit.org/show_bug.cgi?id=136544

Reviewed by David Hyatt.
Source/WebCore:

Test: fast/text/remove-text-node-linebox-not-dirty-crash.html

* rendering/RenderLineBoxList.cpp:
(WebCore::RenderLineBoxList::dirtyLinesFromChangedChild): Make the check for dirtying the next
line box a bit more inclusive to avoid a case of a line box for a destroyed render object not
being dirtied. In particular, when the text node's parent has no line boxes but contains BRs.

LayoutTests:

* fast/text/remove-text-node-linebox-not-dirty-crash-expected.txt: Added.
* fast/text/remove-text-node-linebox-not-dirty-crash.html: Added.


  Commit: 4065c79aba82c5d746e5cdb5b5dd0da2660a04ff
      https://github.com/WebKit/WebKit/commit/4065c79aba82c5d746e5cdb5b5dd0da2660a04ff
  Author: Maciej Stachowiak <mjs at apple.com>
  Date:   2016-02-28 (Sun, 28 Feb 2016)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/rendering/RenderLineBoxList.cpp

  Log Message:
  -----------
  Merge r179750 - REGRESSION(r179706): Caused memory corruption on some tests (Requested by _ap_ on #webkit).
https://bugs.webkit.org/show_bug.cgi?id=141324

Reviewed by Alexey Proskuryakov.

No new tests. This is caught by existing tests under ASAN, and I don't know how to reproduce
it without ASAN.

* rendering/RenderLineBoxList.cpp:
(WebCore::RenderLineBoxList::dirtyLinesFromChangedChild): Give up
and just always invalidate the next line. It's too hard to come up
with the condition that catches all needed cases, doesn't itself
cause a crash, and isn't overzealous. And we do this for the
previous line anyway.  Also clean up the code a bit since it
confusingly reuses a variable, and declares it uninitialized, for
no good reason.


  Commit: 2c0f0bd8fa50651d6f4b93aa7280af4249837b0f
      https://github.com/WebKit/WebKit/commit/2c0f0bd8fa50651d6f4b93aa7280af4249837b0f
  Author: Geoffrey Garen <ggaren at apple.com>
  Date:   2016-02-28 (Sun, 28 Feb 2016)

  Changed paths:
    M Source/JavaScriptCore/ChangeLog
    M Source/JavaScriptCore/parser/ParserArena.h

  Log Message:
  -----------
  Merge r178311 - Out of bounds read in IdentifierArena::makeIdentifier
https://bugs.webkit.org/show_bug.cgi?id=140376

Patch by Alexey Proskuryakov.

Reviewed and ChangeLogged by Geoffrey Garen.

No test, since this is a small past-the-end read, which is very
difficult to turn into a reproducible failing test -- and existing tests
crash reliably using ASan.

* parser/ParserArena.h:
(JSC::IdentifierArena::makeIdentifier):
(JSC::IdentifierArena::makeIdentifierLCharFromUChar): Check for a
zero-length string input, like we do in the literal parser, since it is
not valid to dereference characters in a zero-length string.

A zero-length string is allowed in JavaScript -- for example, "".


  Commit: 13d807d1800f75618fb2567e0c5c90547014a35d
      https://github.com/WebKit/WebKit/commit/13d807d1800f75618fb2567e0c5c90547014a35d
  Author: Andreas Kling <akling at apple.com>
  Date:   2016-02-28 (Sun, 28 Feb 2016)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/dom/Element/normalize-crash2-expected.txt
    A LayoutTests/fast/dom/Element/normalize-crash2.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/dom/Element.cpp

  Log Message:
  -----------
  Merge r178363 - Element::normalizeAttributes() needs to handle arbitrary JS executing between loop iterations.
<https://webkit.org/b/140379>
<rdar://problem/19446901>

Reviewed by Benjamin Poulain.

Source/WebCore:

Since DOM mutation events may arise below the call to Node::normalize(),
have the loop in Element::normalizeAttributes() make a copy of the Attr nodes
beforehand, to guard against mutations.

Based on a patch by Chris "Chris Dumez" Dumez.

Test: fast/dom/Element/normalize-crash2.html

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

LayoutTests:

* fast/dom/Element/normalize-crash2-expected.txt: Added.
* fast/dom/Element/normalize-crash2.html: Added.


  Commit: ca702efe7e76922984f359557c413463468afe46
      https://github.com/WebKit/WebKit/commit/ca702efe7e76922984f359557c413463468afe46
  Author: Alan Bujtas <zalan at apple.com>
  Date:   2016-02-28 (Sun, 28 Feb 2016)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/compositing/repaint-container-assertion-when-toggling-compositing-expected.txt
    A LayoutTests/compositing/repaint-container-assertion-when-toggling-compositing.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/rendering/RenderObject.cpp

  Log Message:
  -----------
  Merge r179776 - ASSERT repaintContainer->hasLayer() in WebCore::RenderObject::repaintUsingContainer
https://bugs.webkit.org/show_bug.cgi?id=140750

Reviewed by Simon Fraser.

There's a short period of time when RenderObject::layer() still returns a valid pointer
even though we already cleared the hasLayer() flag.
Do not use the layer as repaint container in such cases.

Source/WebCore:

Test: compositing/repaint-container-assertion-when-toggling-compositing.html

* rendering/RenderObject.cpp:
(WebCore::RenderObject::enclosingLayer):

LayoutTests:

* compositing/repaint-container-assertion-when-toggling-compositing-expected.txt: Added.
* compositing/repaint-container-assertion-when-toggling-compositing.html: Added.


  Commit: 322d526f7555f4550672bc278c52d2f4dfc52701
      https://github.com/WebKit/WebKit/commit/322d526f7555f4550672bc278c52d2f4dfc52701
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2016-02-29 (Mon, 29 Feb 2016)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/gtk/ScrollbarThemeGtk3.cpp

  Log Message:
  -----------
  Unreviewed. Fix the build with GTK+ < 3.19.

* platform/gtk/ScrollbarThemeGtk3.cpp:
(WebCore::ScrollbarThemeGtk::paintScrollbarBackground):
(WebCore::ScrollbarThemeGtk::paintThumb):
(WebCore::ScrollbarThemeGtk::paintButton):


  Commit: 2c01e21f294acdad783b502daad0e9b2394a197c
      https://github.com/WebKit/WebKit/commit/2c01e21f294acdad783b502daad0e9b2394a197c
  Author: Milan Crha <mcrha at redhat.com>
  Date:   2016-03-02 (Wed, 02 Mar 2016)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/gtk/RenderThemeGtk2.cpp
    M Source/WebCore/platform/gtk/RenderThemeGtk3.cpp

  Log Message:
  -----------
  Fix the build with VIDEO disabled.

Patch by Milan Crha <mcrha at redhat.com> on 2016-03-02
Reviewed by Carlos Garcia Campos.

* platform/gtk/RenderThemeGtk2.cpp:
* platform/gtk/RenderThemeGtk3.cpp:


  Commit: 57b0ca6f510ef55a4c531e9ce8f5ce7f4dcf9484
      https://github.com/WebKit/WebKit/commit/57b0ca6f510ef55a4c531e9ce8f5ce7f4dcf9484
  Author: Alberto Garcia <berto at igalia.com>
  Date:   2016-03-04 (Fri, 04 Mar 2016)

  Changed paths:
    M Tools/ChangeLog
    M Tools/gtk/gtkdoc.py

  Log Message:
  -----------
  Merge r164794 - [gtk-doc] UnicodeEncodeError: 'ascii' codec can't encode character
https://bugs.webkit.org/show_bug.cgi?id=128927

Reviewed by Philippe Normand.

Encode manually the data for sys.{stdout,stderr}.write.

* gtk/gtkdoc.py:
(GTKDoc._run_command):


  Commit: 870dee98b03e825688f5cfa9455da20bbc33fa21
      https://github.com/WebKit/WebKit/commit/870dee98b03e825688f5cfa9455da20bbc33fa21
  Author: Gabor Rapcsanyi <rgabor at webkit.org>
  Date:   2016-03-04 (Fri, 04 Mar 2016)

  Changed paths:
    M CMakeLists.txt
    M ChangeLog
    M Source/ThirdParty/ChangeLog
    M Source/ThirdParty/leveldb/port/atomic_pointer.h
    M Source/WTF/ChangeLog
    M Source/WTF/wtf/Platform.h
    M Tools/ChangeLog
    M Tools/Scripts/webkitdirs.pm

  Log Message:
  -----------
  Merge r166232 - [EFL] Add ARM64 build support
https://bugs.webkit.org/show_bug.cgi?id=130506

Rubber stamped by Gyuyoung Kim.

.:

* CMakeLists.txt: Set WTF_CPU_ARM64 when aarch64 is defined.

Source/ThirdParty:

* leveldb/port/atomic_pointer.h: Set ARCH_CPU_ARM_FAMILY when __aarch64__ is defined.

Source/WTF:

* wtf/Platform.h: Set WTF_CPU_ARM64 when __aarch64__ is defined.

Tools:

* Scripts/webkitdirs.pm:
(isARM): Detect aarch64 as ARM.


  Commit: 509a42d058f739446a96e3ebb91645187a6cb1cf
      https://github.com/WebKit/WebKit/commit/509a42d058f739446a96e3ebb91645187a6cb1cf
  Author: Alberto Garcia <berto at igalia.com>
  Date:   2016-03-04 (Fri, 04 Mar 2016)

  Changed paths:
    M Source/WebKit2/ChangeLog
    M Source/WebKit2/PlatformGTK.cmake
    M Source/autotools/SetupCompilerFlags.m4

  Log Message:
  -----------
  Merge r176519 - Webkit2 doesnt build on powerpc 32 bits
https://bugs.webkit.org/show_bug.cgi?id=130837

Reviewed by Carlos Garcia Campos.

Check if libatomic is needed in order to use std::atomic, and add
it to the list of WebKit2 libraries.

* PlatformGTK.cmake:


  Commit: 9f2daf1591626771dc4688a0293e63f666b338bf
      https://github.com/WebKit/WebKit/commit/9f2daf1591626771dc4688a0293e63f666b338bf
  Author: Mark Lam <mark.lam at apple.com>
  Date:   2016-03-04 (Fri, 04 Mar 2016)

  Changed paths:
    M Source/JavaScriptCore/ChangeLog
    M Source/JavaScriptCore/interpreter/ProtoCallFrame.h
    M Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm
    M Source/JavaScriptCore/llint/LowLevelInterpreter64.asm

  Log Message:
  -----------
  Merge r167031 - Ensure that LLINT accessing of the ProtoCallFrame is big endian friendly.
<https://webkit.org/b/131449>

Reviewed by Mark Hahnenberg.

Change ProtoCallFrame::paddedArgCount to be of type uint32_t.  The argCount
that it pads is of type int anyway.  It doesn't need to be 64 bit.  This
also makes it work with the LLINT which is loading it with a loadi
instruction.

We should add the PayLoadOffset to ProtoCallFrame::argCountAndCodeOriginValue
when loading the argCount.

* interpreter/ProtoCallFrame.h:
(JSC::ProtoCallFrame::setPaddedArgCount):
* llint/LowLevelInterpreter32_64.asm:
* llint/LowLevelInterpreter64.asm:


  Commit: 2cb72b786da13303571ad5353f5e5a765252bab2
      https://github.com/WebKit/WebKit/commit/2cb72b786da13303571ad5353f5e5a765252bab2
  Author: Brady Eidson <beidson at apple.com>
  Date:   2016-03-04 (Fri, 04 Mar 2016)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/sql/SQLiteStatement.cpp

  Log Message:
  -----------
  Merge r169665 - Initialize a char* that needs to be initialized.
<rdar://problem/15840022> and https://bugs.webkit.org/show_bug.cgi?id=133585

Reviewed by Mark Rowe.

r152134 (erroneously) removed this initialization.

* platform/sql/SQLiteStatement.cpp:
(WebCore::SQLiteStatement::prepare): tail should start out initialized to 0.


  Commit: e66ca37a50bf1b671ed20fddd9ac43c536226c7f
      https://github.com/WebKit/WebKit/commit/e66ca37a50bf1b671ed20fddd9ac43c536226c7f
  Author: YunQiang Su <wzssyqa at gmail.com>
  Date:   2016-03-04 (Fri, 04 Mar 2016)

  Changed paths:
    M Source/WTF/ChangeLog
    M Source/WTF/wtf/Platform.h

  Log Message:
  -----------
  Merge r185863 - [WTF] Platform.h: use _ABI64 instead of _MIPS_SIM_ABI64 to determine MIPS N64
https://bugs.webkit.org/show_bug.cgi?id=145113

Patch by YunQiang Su <wzssyqa at gmail.com> on 2015-06-22
Reviewed by Csaba Osztrogonác.

* wtf/Platform.h:


  Commit: 94314f0497a2066ac33ef5e7ed6548c1053bd068
      https://github.com/WebKit/WebKit/commit/94314f0497a2066ac33ef5e7ed6548c1053bd068
  Author: Alberto Garcia <berto at igalia.com>
  Date:   2016-03-04 (Fri, 04 Mar 2016)

  Changed paths:
    M Source/JavaScriptCore/ChangeLog
    M Source/JavaScriptCore/interpreter/JSStack.cpp
    M Source/JavaScriptCore/interpreter/JSStack.h

  Log Message:
  -----------
  Merge r193648 - Crashes on PPC64 due to mprotect() on address not aligned to the page size
https://bugs.webkit.org/show_bug.cgi?id=130237

Reviewed by Mark Lam.

Make sure that commitSize is at least as big as the page size.

* interpreter/JSStack.cpp:
(JSC::commitSize):
(JSC::JSStack::JSStack):
(JSC::JSStack::growSlowCase):
* interpreter/JSStack.h:


  Commit: b2cf85136b1a85a30c397124e9bcfc86d7e499c6
      https://github.com/WebKit/WebKit/commit/b2cf85136b1a85a30c397124e9bcfc86d7e499c6
  Author: Alberto Garcia <berto at igalia.com>
  Date:   2016-03-04 (Fri, 04 Mar 2016)

  Changed paths:
    M Source/JavaScriptCore/interpreter/JSStack.cpp

  Log Message:
  -----------
  Merge r193648 - Crashes on PPC64 due to mprotect() on address not aligned to the page size
https://bugs.webkit.org/show_bug.cgi?id=130237

Reviewed by Mark Lam.

Make sure that commitSize is at least as big as the page size.

* interpreter/JSStack.cpp:
(JSC::commitSize):
(JSC::JSStack::JSStack):
(JSC::JSStack::growSlowCase):
* interpreter/JSStack.h:


  Commit: 285bf020f064f795a68c3c3053807d5e076f04ca
      https://github.com/WebKit/WebKit/commit/285bf020f064f795a68c3c3053807d5e076f04ca
  Author: Tomáš Popela <tpopela at redhat.com>
  Date:   2016-03-07 (Mon, 07 Mar 2016)

  Changed paths:
    M Source/JavaScriptCore/ChangeLog
    M Source/JavaScriptCore/llint/LLIntSlowPaths.cpp
    M Source/JavaScriptCore/llint/LowLevelInterpreter.asm
    M Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm
    M Source/JavaScriptCore/llint/LowLevelInterpreter64.asm

  Log Message:
  -----------
  Merge r173886 - [CLoop] - Fix CLoop on the 32-bit Big-Endians
https://bugs.webkit.org/show_bug.cgi?id=137020

Patch by Tomas Popela <tpopela at redhat.com> on 2014-09-23
Reviewed by Mark Lam.

* llint/LowLevelInterpreter.asm:
* llint/LowLevelInterpreter32_64.asm:


  Commit: 73594284d0c96fe3a8c4504b247dfd0985618026
      https://github.com/WebKit/WebKit/commit/73594284d0c96fe3a8c4504b247dfd0985618026
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2016-03-10 (Thu, 10 Mar 2016)

  Changed paths:
    M Source/JavaScriptCore/ChangeLog
    M Source/JavaScriptCore/interpreter/JSStack.cpp

  Log Message:
  -----------
  Fix the build in Windows.

Reviewed by Alberto Garcia.

* interpreter/JSStack.cpp:
(JSC::commitSize):


  Commit: e237ee12189f615fff3faeaf0f7ddaf92216a404
      https://github.com/WebKit/WebKit/commit/e237ee12189f615fff3faeaf0f7ddaf92216a404
  Author: Tomáš Popela <tpopela at redhat.com>
  Date:   2016-03-12 (Sat, 12 Mar 2016)

  Changed paths:
    M Source/JavaScriptCore/ChangeLog
    M Source/JavaScriptCore/llint/LLIntSlowPaths.cpp
    M Source/JavaScriptCore/llint/LowLevelInterpreter.asm
    M Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm
    M Source/JavaScriptCore/llint/LowLevelInterpreter64.asm

  Log Message:
  -----------
  Revert "Merge r173886 - [CLoop] - Fix CLoop on the 32-bit Big-Endians"

This reverts commit 5eed35f00c8f26efa2bd5084dc5009563c307e7f.


  Commit: 33e582f04ea78bab8c44d1bd284c650939e7d6bf
      https://github.com/WebKit/WebKit/commit/33e582f04ea78bab8c44d1bd284c650939e7d6bf
  Author: Tomáš Popela <tpopela at redhat.com>
  Date:   2016-03-12 (Sat, 12 Mar 2016)

  Changed paths:
    M Source/JavaScriptCore/ChangeLog
    M Source/JavaScriptCore/llint/LLIntSlowPaths.cpp
    M Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm
    M Source/JavaScriptCore/llint/LowLevelInterpreter64.asm

  Log Message:
  -----------
  LLINT op_put_to_scope and op_get_from_scope should use loadpFromInstruction to get operand from instruction
https://bugs.webkit.org/show_bug.cgi?id=132333

Unreviewed.

When loading operand variable from instruction in
_llint_op_get_from_scope and _llint_op_put_to_scope use
loadpFromInstruction instead of loadisFromInstruction. Also when
saving the operand in LLIntSlowPaths.cpp use the same way as in
CodeBlock.cpp.

Patch by Tomas Popela <tpopela at redhat.com> on 2016-03-12

* llint/LLIntSlowPaths.cpp:
* llint/LowLevelInterpreter32_64.asm:
* llint/LowLevelInterpreter64.asm:


  Commit: 4d2e147811d4c64b09d369b6cd70304eba7891b1
      https://github.com/WebKit/WebKit/commit/4d2e147811d4c64b09d369b6cd70304eba7891b1
  Author: Tomáš Popela <tpopela at redhat.com>
  Date:   2016-03-12 (Sat, 12 Mar 2016)

  Changed paths:
    M Source/JavaScriptCore/ChangeLog
    M Source/JavaScriptCore/llint/LowLevelInterpreter.asm
    M Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm

  Log Message:
  -----------
  Merge r173886 - [CLoop] - Fix CLoop on the 32-bit Big-Endians
https://bugs.webkit.org/show_bug.cgi?id=137020

Patch by Tomas Popela <tpopela at redhat.com> on 2016-03-12
Reviewed by Mark Lam.

* llint/LowLevelInterpreter.asm:
* llint/LowLevelInterpreter32_64.asm:


  Commit: 05ab0e7b5d3c9339decb6e011ba5a472c5d248b9
      https://github.com/WebKit/WebKit/commit/05ab0e7b5d3c9339decb6e011ba5a472c5d248b9
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2016-03-14 (Mon, 14 Mar 2016)

  Changed paths:
    M Source/WebCore/platform/gtk/po/de.po
    M Source/WebCore/platform/gtk/po/es.po
    M Source/WebCore/platform/gtk/po/fr.po
    M Source/WebCore/platform/gtk/po/it.po
    M Source/WebCore/platform/gtk/po/ko.po
    M Source/WebCore/platform/gtk/po/pt_BR.po
    M Source/WebCore/platform/gtk/po/ru.po
    M Source/WebCore/platform/gtk/po/zh_CN.po

  Log Message:
  -----------
  Translation updates: German, Spanish, French, Italian, Korean, Brazilian Portuguese, Russian, Chinese


  Commit: 362aac11471d2ce11682d19ba2d0b602842030e4
      https://github.com/WebKit/WebKit/commit/362aac11471d2ce11682d19ba2d0b602842030e4
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2016-03-14 (Mon, 14 Mar 2016)

  Changed paths:
    M ChangeLog
    M Source/WebKit/gtk/ChangeLog
    M Source/WebKit/gtk/NEWS
    M Source/autotools/Versions.m4

  Log Message:
  -----------
  Unreviewed. Update NEWS and Versions.m4 for 2.4.10 release.

.:

* Source/autotools/Versions.m4: Bump version numbers.

Source/WebKit/gtk:

* NEWS: Added release notes for 2.4.10.


  Commit: bdea8104510411e2d7ddf7a2d96d160e3e052b09
      https://github.com/WebKit/WebKit/commit/bdea8104510411e2d7ddf7a2d96d160e3e052b09
  Author: Gabor Rapcsanyi <rgabor at webkit.org>
  Date:   2016-04-10 (Sun, 10 Apr 2016)

  Changed paths:
    M Source/WTF/ChangeLog
    M Source/WTF/wtf/Atomics.h

  Log Message:
  -----------
  Merge r166234 - [ARM64] GCC generates wrong code with -O2 flag in WTF::weakCompareAndSwap
https://bugs.webkit.org/show_bug.cgi?id=130500

Reviewed by Filip Pizlo.

Set the first operand to the exact register in the inline assembly with GCC.

* wtf/Atomics.h:
(WTF::weakCompareAndSwap):


  Commit: fa240d488ad98091da7a3cfbfc16665327d043c1
      https://github.com/WebKit/WebKit/commit/fa240d488ad98091da7a3cfbfc16665327d043c1
  Author: Gabor Rapcsanyi <rgabor at webkit.org>
  Date:   2016-04-10 (Sun, 10 Apr 2016)

  Changed paths:
    M Source/WebCore/ChangeLog
    M Source/WebCore/platform/graphics/transforms/TransformationMatrix.cpp

  Log Message:
  -----------
  Merge r166233 - [ARM64] GNU assembler fails in TransformationMatrix::multiply
https://bugs.webkit.org/show_bug.cgi?id=130454

Reviewed by Zoltan Herczeg.

Change the NEON intstructions to the proper style.

* platform/graphics/transforms/TransformationMatrix.cpp:
(WebCore::TransformationMatrix::multiply):


  Commit: d8d9f12f93dc69d6b48d3b881cd79ffc2dbec5bf
      https://github.com/WebKit/WebKit/commit/d8d9f12f93dc69d6b48d3b881cd79ffc2dbec5bf
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2016-04-10 (Sun, 10 Apr 2016)

  Changed paths:
    M LayoutTests/ChangeLog
    A LayoutTests/fast/dom/uniquing-attributes-via-setAttribute-expected.txt
    A LayoutTests/fast/dom/uniquing-attributes-via-setAttribute.html
    M Source/WebCore/ChangeLog
    M Source/WebCore/dom/Element.cpp

  Log Message:
  -----------
  Merge r165044 - REGRESSION(r164856): Use after free in WebCore::QualifiedName::operator== / WebCore::StyledElement::attributeChanged
https://bugs.webkit.org/show_bug.cgi?id=129550

Reviewed by Andreas Kling.

Source/WebCore:

We can't store a reference to QualifiedName here because ensureUniqueElementData could delete QualifiedName inside Attribute.

Test: fast/dom/uniquing-attributes-via-setAttribute.html

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

LayoutTests:

Added a regression test.

* fast/dom/uniquing-attributes-via-setAttribute-expected.txt: Added.
* fast/dom/uniquing-attributes-via-setAttribute.html: Added.


  Commit: 8aaff6f8a4d204cc209733aa5784e929ec4c9d5c
      https://github.com/WebKit/WebKit/commit/8aaff6f8a4d204cc209733aa5784e929ec4c9d5c
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2016-04-10 (Sun, 10 Apr 2016)

  Changed paths:
    A Source/WebCore/platform/gtk/po/ja.po
    A Source/WebCore/platform/gtk/po/zh_TW.po

  Log Message:
  -----------
  Translation updates: Chinese, Japanese


  Commit: dff4344e72936e4b7f59e05bad2376a76ed943cc
      https://github.com/WebKit/WebKit/commit/dff4344e72936e4b7f59e05bad2376a76ed943cc
  Author: Carlos Garcia Campos <carlosgc at webkit.org>
  Date:   2016-04-10 (Sun, 10 Apr 2016)

  Changed paths:
    M ChangeLog
    M Source/WebKit/gtk/ChangeLog
    M Source/WebKit/gtk/NEWS
    M Source/autotools/Versions.m4

  Log Message:
  -----------
  Unreviewed. Update NEWS and Versions.m4 for 2.4.11 release.

.:

* Source/autotools/Versions.m4: Bump version numbers.

Source/WebKit/gtk:

* NEWS: Added release notes for 2.4.11.


Compare: https://github.com/WebKit/WebKit/compare/13eba6f2125d%5E...dff4344e7293


More information about the webkit-changes mailing list