Unreviewed, rolling out r128280.
http://trac.webkit.org/changeset/128280
https://bugs.webkit.org/show_bug.cgi?id=96498

it broke compilation on windows debug bot (Requested by loislo
on #webkit).

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

Source/WebKit2:

* Shared/APIClientTraits.cpp:
(WebKit):
* Shared/APIClientTraits.h:
* WebProcess/InjectedBundle/API/c/WKBundle.cpp:
(WKBundleSetApplicationCacheOriginQuota):
* WebProcess/InjectedBundle/API/c/WKBundlePage.h:
* WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
* WebProcess/InjectedBundle/InjectedBundle.cpp:
* WebProcess/InjectedBundle/InjectedBundle.h:
(InjectedBundle):
* WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
* WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
(WebKit):
(InjectedBundlePageUIClient):
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::reachedApplicationCacheOriginQuota):

Tools:

* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::InjectedBundlePage::InjectedBundlePage):
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.h:
(InjectedBundlePage):
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::TestRunner):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
(TestRunner):

LayoutTests:

* platform/efl-wk1/TestExpectations:
* platform/efl/Skipped:
* platform/wk2/Skipped:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128296 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Fix the build with ENABLE_NETSCAPE_PLUGIN_API=0
https://bugs.webkit.org/show_bug.cgi?id=96494

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-12
Reviewed by Tor Arne Vestbø.

WK2's ENABLE_PLUGIN_PROCESS uses the NPAPI functions unconditionally, so disable the
plugin process feature if we don't have NPAPI.

* qmake/mkspecs/features/features.prf:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128297 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GStreamer] Audio device not closed after playing sound
https://bugs.webkit.org/show_bug.cgi?id=89122

Reviewed by Martin Robinson.

Set the GStreamer pipeline to NULL instead of PAUSED on EOS. This
allows the audio-sink to release its connection to the audio
device. This is done only if the Media element is not
looping. To make the MediaPlayerPrivate layer aware of that
information the MediaPlayerClient interface was updated with a new
method mediaPlayerIsLooping, implemented by the HTMLMediaElement.

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::mediaPlayerIsLooping): Implementation of
MediaPlayerClient::mediaPlayerLoop, proxies to ::loop();
* html/HTMLMediaElement.h:
(HTMLMediaElement):
* platform/graphics/MediaPlayer.h:
(WebCore::MediaPlayerClient::mediaPlayerIsLooping): New method allowing
the MediaPlayer and its backend to know if a playback loop is
requested by the client.
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
(WebCore::MediaPlayerPrivateGStreamer::playbackPosition): Report
seek time or media duration if EOS was reached. These early
returns are needed because the position query doesn't work on a
NULL pipeline.
(WebCore::MediaPlayerPrivateGStreamer::changePipelineState):
Refactored to use an early return.
(WebCore::MediaPlayerPrivateGStreamer::prepareToPlay): Reset the
seeking flag.
(WebCore::MediaPlayerPrivateGStreamer::play): reset m_isEndReached.
(WebCore::MediaPlayerPrivateGStreamer::pause): Don't pause on EOS.
(WebCore::MediaPlayerPrivateGStreamer::seek): Refactor, call
currentTime() after we're sure playbin is valid and no error occured.
(WebCore::MediaPlayerPrivateGStreamer::paused): Fake paused state
on EOS.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128298 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Depend on {base,net} GYP targets rather than {base,net}_java.
https://bugs.webkit.org/show_bug.cgi?id=95690

Patch by Philippe Liard <pliard@google.com> on 2012-09-12
Reviewed by Adam Barth.

Source/WebKit/chromium:

{base,net}_java became 'private' targets on the Chromium side that
clients should not depend on (see
https://chromiumcodereview.appspot.com/10913083/).
This also adds the missing 'chromium_net.jar' to |input_jars_paths|
that was magically included in Chrome for Android downstream but not
upstream. It's needed to register JNI for 'net' in webkit_unit_tests.

* WebKitUnitTests.gyp:

Tools:

{base,net}_java became 'private' targets on the Chromium side that
clients should not depend on (see
https://chromiumcodereview.appspot.com/10913083/).
This removes a bunch of trailing white spaces additionally in
TestWebkitAPI.gyp (which includes non-trailing white space changes).

* DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
* TestWebKitAPI/TestWebKitAPI.gyp/TestWebKitAPI.gyp:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128299 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: NMI move String* instrumentation to wtf.
https://bugs.webkit.org/show_bug.cgi?id=96405

Reviewed by Yury Semikhatsky.

This instrumentation is solving the problem with substrings and removes traits based code which is hard to upstream.

Source/WebCore:

* dom/WebCoreMemoryInstrumentation.cpp:
(WebCore):
* dom/WebCoreMemoryInstrumentation.h:
(WebCore):

Source/WebKit/chromium:

Tested by webkit_unit_tests.

* tests/MemoryInstrumentationTest.cpp:
(WebCore::TEST):

Source/WTF:

Tested by webkit_unit_tests.

* wtf/text/AtomicString.h:
(AtomicString):
(WTF::AtomicString::reportMemoryUsage):
* wtf/text/StringImpl.h:
(StringImpl):
(WTF::StringImpl::reportMemoryUsage):
* wtf/text/WTFString.h:
(String):
(WTF::String::reportMemoryUsage):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128300 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed. Touch two files for fixing broken compile dependency on Apple Windows Debug bot.

* css/StyleResolver.cpp:
* loader/FrameLoader.cpp:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128301 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, rolling out r128221.
http://trac.webkit.org/changeset/128221
https://bugs.webkit.org/show_bug.cgi?id=96504

The rollout was incorrect. (Requested by zdobersek on
#webkit).

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

Source/WebCore: 

* platform/network/soup/ResourceResponseSoup.cpp:
(WebCore::ResourceResponse::updateFromSoupMessage):

LayoutTests: 

* http/tests/misc/non-utf8-header-name-expected.txt: Added.
* http/tests/misc/non-utf8-header-name.php: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128302 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove last call to numberToString() from WebCore code
https://bugs.webkit.org/show_bug.cgi?id=96484

Reviewed by Kentaro Hara.

Replace WTF::numberToString() with String::numberToStringECMAScript() to remove duplicated
code. Using the new function allows us to improve and/or remove numberToString() without
changing all caller sides later. Also remove an unneeded strlen() in the touched code.

* bindings/v8/V8DOMWrapper.cpp:
(WebCore::V8DOMWrapper::setNamedHiddenReference):
* bindings/v8/V8DependentRetained.h:
(WebCore::V8DependentRetained::createPropertyName):
* bindings/v8/V8HiddenPropertyName.cpp:
(WebCore::V8HiddenPropertyName::hiddenReferenceName):
* bindings/v8/V8HiddenPropertyName.h:
(V8HiddenPropertyName):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128303 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Teach addStrictSubdirOrderBetween to handle more than two targets

By hard-coding the names of the targets we defined we ended up just
redefining the previous target when using addStrictSubdirOrderBetween
more than once in a single project file.

We now embed the two base targets into the target names.

Reviewed by Simon Hausmann.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128304 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Update build-jsc after r128174

Reviewed by Ossy.

* Scripts/build-jsc:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128305 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed gardening. These tests should have been unskipped when fixed.
https://bugs.webkit.org/show_bug.cgi?id=93246

* platform/qt/Skipped:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128306 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Drastically shorten length of commandline needed for JS bindings generator
https://bugs.webkit.org/show_bug.cgi?id=96266

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-12
Reviewed by Tor Arne Vestbø.

The generate-bindings script supports the SOURCE_ROOT environment variable for IDL include file
lookups, which allows specifying relative include search directories.

* DerivedSources.pri:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128307 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Build on Windows requires bison/flex in PATH
https://bugs.webkit.org/show_bug.cgi?id=96358

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-12
Reviewed by Tor Arne Vestbø.

Source/ThirdParty/ANGLE:

Use MAKEFILE_NOOP_COMMAND instead of the \n\t trick to generate a dummy command. Otherwise
the PATH prepend trick will break because it generates a command line along the lines of
(set PATH="...") && with just that trailing ampersand pair.

* DerivedSources.pri:

Tools:

The build requires flex, bison, etc. and they need to be in the PATH when building. On Mac OS X
and Linux that is rarely a problem given how easily available the tools are. On Windows however
a separate installation of various GNU tools is required as the operating system doesn't come with
them. To make the development more convenient, Qt 5 provides a copy of the most essential tools in
the gnuwin32 directory of the qt5.git top-level repository.

This patch tries to detect the presence of those tools and prepends them to the PATH if found.

This is required in preparation for the elimination of qt5/qtwebkit.pri, which currently expands
PATH before calling build-webkit. It it also required for the upcoming introduction of win_flex
as dependency over flex, which can be done with less hassle when qt5's gnuwin32 directory has been
updated with the new tool.

* Scripts/webkitdirs.pm:
(checkRequiredSystemConfig):
* qmake/mkspecs/features/default_post.prf:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128308 268f45cc-cd09-0410-ab3c-d52691b4dbfc
getScreenCTM returns different values depending on zoom
https://bugs.webkit.org/show_bug.cgi?id=96361

Reviewed by Dirk Schulze.

Source/WebCore:

SVGSVGElement::localCoordinateSpaceTransform() needs to adjust for the
zoom level (which is already factored into CSS coordinates) at the
SVG/HTML boundary.

Test: svg/zoom/page/zoom-get-screen-ctm.html

* svg/SVGSVGElement.cpp:
(WebCore::SVGSVGElement::localCoordinateSpaceTransform):

LayoutTests:

* svg/zoom/page/zoom-get-screen-ctm-expected.txt: Added.
* svg/zoom/page/zoom-get-screen-ctm.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128309 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed GTK gardening.

Adding baseline for an accessibility test introduced in r128227.

Adding a text mismatch failure expectation for fast/events/popup-blocking-timers.html
that started failing after the test was refactored in r128270.

* platform/gtk/TestExpectations:
* platform/gtk/accessibility/img-fallsback-to-title-expected.txt: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128310 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL] Avoid manual memory management in RenderThemeEfl
https://bugs.webkit.org/show_bug.cgi?id=96501

Reviewed by Simon Hausmann.

Use OwnPtr as it works for Evas_Object and Evas_Ecore objects.

* platform/efl/RenderThemeEfl.cpp:
(WebCore::RenderThemeEfl::ThemePartCacheEntry::ThemePartCacheEntry):
(WebCore::RenderThemeEfl::ThemePartCacheEntry::~ThemePartCacheEntry):
(WebCore::RenderThemeEfl::ThemePartCacheEntry::create):
(WebCore::RenderThemeEfl::ThemePartCacheEntry::reuse):
(WebCore::RenderThemeEfl::paintThemePart):
(WebCore::RenderThemeEfl::setColorFromThemeClass):
(WebCore::RenderThemeEfl::themePath):
(WebCore::RenderThemeEfl::loadTheme):
(WebCore::RenderThemeEfl::applyPartDescriptionsFrom):
(WebCore::RenderThemeEfl::RenderThemeEfl):
(WebCore::RenderThemeEfl::~RenderThemeEfl):
(WebCore::RenderThemeEfl::emitMediaButtonSignal):
* platform/efl/RenderThemeEfl.h:
(WebCore::RenderThemeEfl::canvas):
(WebCore::RenderThemeEfl::edje):
(RenderThemeEfl):
(WebCore::RenderThemeEfl::ThemePartCacheEntry::canvas):
(WebCore::RenderThemeEfl::ThemePartCacheEntry::edje):
(ThemePartCacheEntry):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128311 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] Use own instance of CertMgrWrapper in BlackBerry CredentialBackingStore.
https://bugs.webkit.org/show_bug.cgi?id=96457
Internal PR: 205769

Internally reviewed by George Staikos, Jonathan Dong.
Patch by Lianghui Chen <liachen@rim.com> on 2012-09-12
Reviewed by George Staikos.

CertMgrWrapper in BlackBerry platform layer has been changed from
singleton to normal class, every user of it need to create its own
instance now.

No new tests for platform specific interface change.

* platform/network/blackberry/CredentialBackingStore.cpp:
(WebCore::CredentialBackingStore::CredentialBackingStore):
(WebCore::CredentialBackingStore::~CredentialBackingStore):
(WebCore::CredentialBackingStore::addLogin):
(WebCore::CredentialBackingStore::updateLogin):
(WebCore::CredentialBackingStore::getLogin):
(WebCore::CredentialBackingStore::certMgrWrapper):
(WebCore):
* platform/network/blackberry/CredentialBackingStore.h:
(Platform):
(CredentialBackingStore):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128312 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL] Fix build break when netscape-plugin-api is enebled after r126971
https://bugs.webkit.org/show_bug.cgi?id=96513

Unreviewed build fix.


* plugins/efl/PluginViewEfl.cpp:
(WebCore::PluginView::platformGetValue):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128313 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Mark new test fast/filesystem/workers/detached-frame-crash.html
as flakily crashing in cr-win & cr-linux debug builds.

Unreviewed gardening.

* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128314 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Segmentation fault when closing QtTestBrowser
https://bugs.webkit.org/show_bug.cgi?id=95003

Patch by Roland Takacs <rtakacs@inf.u-szeged.hu> on 2012-09-12
Reviewed by Simon Hausmann.

Source/WebCore:

Defined a new QObject* variable.
If WebKit1 is used, it points to the QGLWidget that was
created in 'createPlatformGraphicsContext3DFromWidget'.
If WebKit2 is used, it points to the QWindow that was
created in GraphicsContext3DPrivate's constructor.
It is neccessary for deallocating them.

* platform/graphics/qt/GraphicsContext3DQt.cpp:
(GraphicsContext3DPrivate):
(WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
(WebCore::GraphicsContext3DPrivate::~GraphicsContext3DPrivate):
* platform/qt/QWebPageClient.h:
(QWebPageClient):

Source/WebKit/qt:

Defined a new QObject* variable that points to the QGLWidget that was created
in 'createPlatformGraphicsContext3DFromWidget'.
It is neccessary for deallocating it.

* WebCoreSupport/PageClientQt.cpp:
(createPlatformGraphicsContext3DFromWidget):
(WebCore::PageClientQWidget::createPlatformGraphicsContext3D):
(WebCore::PageClientQGraphicsWidget::createPlatformGraphicsContext3D):
* WebCoreSupport/PageClientQt.h:
(PageClientQWidget):
(PageClientQGraphicsWidget):

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