Make sure gstreamer source element is thread-safe
https://bugs.webkit.org/show_bug.cgi?id=115352

Patch by Andre Moreira Magalhaes <andre.magalhaes@collabora.co.uk> on 2013-05-31
Reviewed by Philippe Normand.

GStreamer source element may be created by any gstreamer element on any thread by calling
gst_element_make_from_uri with the URIs handled by the source element.
This patch makes sure the gstreamer source element is thread-safe to avoid issues with it
being created outside the main thread.

* platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
(_WebKitWebSrcPrivate):
(webkit_web_src_init):
(webKitWebSrcFinalize):
(webKitWebSrcSetProperty):
(webKitWebSrcGetProperty):
(webKitWebSrcStop):
(webKitWebSrcStart):
(webKitWebSrcChangeState):
(webKitWebSrcQueryWithParent):
(webKitWebSrcGetUri):
(webKitWebSrcSetUri):
(webKitWebSrcNeedDataMainCb):
(webKitWebSrcEnoughDataMainCb):
(webKitWebSrcSeekMainCb):
(webKitWebSrcSeekDataCb):
(webKitWebSrcSetMediaPlayer):
(StreamingClient::StreamingClient):
(StreamingClient::~StreamingClient):
(StreamingClient::didReceiveResponse):
(StreamingClient::didReceiveData):
(StreamingClient::didFinishLoading):
(StreamingClient::wasBlocked):
(StreamingClient::cannotShowURL):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151021 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Windows] Unreviewed build fix after r151012

* TestWebKitAPI/Configurations/TestWebKitAPICommon.vsprops: Add dependency on
WTF library to support SHA tests



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151022 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Windows] Unreviewed build fix to NRWT

* Scripts/webkitpy/port/win.py:
(WinPort.create_debugger_command_file): Use proper argument for _filesystem.write_text_file.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151023 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, rolling out r151022.
http://trac.webkit.org/changeset/151022
https://bugs.webkit.org/show_bug.cgi?id=117084

Also breaks build by introducing duplicate symbols (Requested
by bfulgham on #webkit).

* TestWebKitAPI/Configurations/TestWebKitAPICommon.vsprops:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151024 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Windows] Unreviewed build fix for VS2005 builders.

* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreExports.def: Add
missing export for WTF::SHA1::computeHexDigest



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151025 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Don't create an accelerated compositing layer unless we have to for snapshotting plug-ins
https://bugs.webkit.org/show_bug.cgi?id=117076
<rdar://problem/14030364>

Reviewed by Beth Dakin and Anders Carlsson.

If a plug-in can support software snapshotting, then don't create an
accelerated compositing layer for it while in snapshot mode. This is a
better user experience -- otherwise the page/plug-in looks like it broke.

* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::isAcceleratedCompositingEnabled): If we are in snapshotting mode
and we are a Flash plugin (the only one that supports software snapshots at the moment)
then do not create an accelerated compositing layer.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@151026 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Update CheckedInt.h to latest version from Mozilla
https://bugs.webkit.org/show_bug.cgi?id=117009

Reviewed by Darin Adler.

Mozilla have updated their version of CheckedInt and suggested
we sync. Here are the improvements:

- CheckedInt now consistently rejects unsupported types. Before, you
could sometimes construct a CheckedInt from an unsupported type (like,
float) or multiply a CheckedInt by a float, and have it not caught! See
https://bugzilla.mozilla.org/show_bug.cgi?id=869194
 - Fixed a possibility of undefined behavior in unary operator-. See bug
https://bugzilla.mozilla.org/show_bug.cgi?id=849666
 - CheckedInt now supports the "long long" and "unsigned long long"
types. We don't like "long long" (and neither does the Google C++ style
guide!) but we had to do that because libogg exposes typedefs to those
types. See Bug https://bugzilla.mozilla.org/show_bug.cgi?id=869685
 - CheckedInt also now supports "signed char" in addition to "char" ---
they are not the same type! See Bug https://bugzilla.mozilla.org/show_bug.cgi?id=847521
 - Fixed and simplified usage of CheckedInt outside of Mozilla. You'll
like this one! See Bug https://bugzilla.mozilla.org/show_bug.cgi?id=849667
 - Fixed compilation with the Intel C++ compiler. See bug https://bugzilla.mozilla.org/show_bug.cgi?id=784309

* html/canvas/CheckedInt.h: Updated.

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