mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-27 17:33:09 +00:00
qt53: fix qtwebkit build with new glib
This commit is contained in:
parent
88f7b04b5e
commit
7094ae27da
@ -0,0 +1,232 @@
|
||||
From f8485382e319da57abea99797387ee9f6f94d32e Mon Sep 17 00:00:00 2001
|
||||
From: Thomas Tuegel <ttuegel@gmail.com>
|
||||
Date: Wed, 13 May 2015 12:42:07 -0500
|
||||
Subject: [PATCH] glib mutexlocker
|
||||
|
||||
---
|
||||
.../gstreamer/WebKitWebSourceGStreamer.cpp | 48 +++++++++++-----------
|
||||
1 file changed, 24 insertions(+), 24 deletions(-)
|
||||
|
||||
diff --git a/qtwebkit/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp b/qtwebkit/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp
|
||||
index 5625873..a6d961f 100644
|
||||
--- a/qtwebkit/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp
|
||||
+++ b/qtwebkit/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp
|
||||
@@ -354,7 +354,7 @@ static void webKitWebSrcSetProperty(GObject* object, guint propID, const GValue*
|
||||
|
||||
switch (propID) {
|
||||
case PROP_IRADIO_MODE: {
|
||||
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
priv->iradioMode = g_value_get_boolean(value);
|
||||
break;
|
||||
}
|
||||
@@ -376,7 +376,7 @@ static void webKitWebSrcGetProperty(GObject* object, guint propID, GValue* value
|
||||
WebKitWebSrc* src = WEBKIT_WEB_SRC(object);
|
||||
WebKitWebSrcPrivate* priv = src->priv;
|
||||
|
||||
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
switch (propID) {
|
||||
case PROP_IRADIO_MODE:
|
||||
g_value_set_boolean(value, priv->iradioMode);
|
||||
@@ -429,7 +429,7 @@ static gboolean webKitWebSrcStop(WebKitWebSrc* src)
|
||||
|
||||
ASSERT(isMainThread());
|
||||
|
||||
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
|
||||
bool seeking = priv->seekID;
|
||||
|
||||
@@ -493,7 +493,7 @@ static gboolean webKitWebSrcStart(WebKitWebSrc* src)
|
||||
|
||||
ASSERT(isMainThread());
|
||||
|
||||
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
|
||||
priv->startID = 0;
|
||||
|
||||
@@ -584,7 +584,7 @@ static GstStateChangeReturn webKitWebSrcChangeState(GstElement* element, GstStat
|
||||
return ret;
|
||||
}
|
||||
|
||||
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
switch (transition) {
|
||||
case GST_STATE_CHANGE_READY_TO_PAUSED:
|
||||
GST_DEBUG_OBJECT(src, "READY->PAUSED");
|
||||
@@ -615,7 +615,7 @@ static gboolean webKitWebSrcQueryWithParent(GstPad* pad, GstObject* parent, GstQ
|
||||
gst_query_parse_duration(query, &format, NULL);
|
||||
|
||||
GST_DEBUG_OBJECT(src, "duration query in format %s", gst_format_get_name(format));
|
||||
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
if (format == GST_FORMAT_BYTES && src->priv->size > 0) {
|
||||
gst_query_set_duration(query, format, src->priv->size);
|
||||
result = TRUE;
|
||||
@@ -623,7 +623,7 @@ static gboolean webKitWebSrcQueryWithParent(GstPad* pad, GstObject* parent, GstQ
|
||||
break;
|
||||
}
|
||||
case GST_QUERY_URI: {
|
||||
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
gst_query_set_uri(query, src->priv->uri);
|
||||
result = TRUE;
|
||||
break;
|
||||
@@ -668,7 +668,7 @@ static gchar* webKitWebSrcGetUri(GstURIHandler* handler)
|
||||
WebKitWebSrc* src = WEBKIT_WEB_SRC(handler);
|
||||
gchar* ret;
|
||||
|
||||
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
ret = g_strdup(src->priv->uri);
|
||||
return ret;
|
||||
}
|
||||
@@ -683,7 +683,7 @@ static gboolean webKitWebSrcSetUri(GstURIHandler* handler, const gchar* uri, GEr
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
|
||||
g_free(priv->uri);
|
||||
priv->uri = 0;
|
||||
@@ -719,7 +719,7 @@ static const gchar* webKitWebSrcGetUri(GstURIHandler* handler)
|
||||
WebKitWebSrc* src = WEBKIT_WEB_SRC(handler);
|
||||
gchar* ret;
|
||||
|
||||
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
ret = g_strdup(src->priv->uri);
|
||||
return ret;
|
||||
}
|
||||
@@ -734,7 +734,7 @@ static gboolean webKitWebSrcSetUri(GstURIHandler* handler, const gchar* uri)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
|
||||
g_free(priv->uri);
|
||||
priv->uri = 0;
|
||||
@@ -772,7 +772,7 @@ static gboolean webKitWebSrcNeedDataMainCb(WebKitWebSrc* src)
|
||||
|
||||
ASSERT(isMainThread());
|
||||
|
||||
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
// already stopped
|
||||
if (!priv->needDataID)
|
||||
return FALSE;
|
||||
@@ -793,7 +793,7 @@ static void webKitWebSrcNeedDataCb(GstAppSrc*, guint length, gpointer userData)
|
||||
|
||||
GST_DEBUG_OBJECT(src, "Need more data: %u", length);
|
||||
|
||||
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
if (priv->needDataID || !priv->paused) {
|
||||
return;
|
||||
}
|
||||
@@ -807,7 +807,7 @@ static gboolean webKitWebSrcEnoughDataMainCb(WebKitWebSrc* src)
|
||||
|
||||
ASSERT(isMainThread());
|
||||
|
||||
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
// already stopped
|
||||
if (!priv->enoughDataID)
|
||||
return FALSE;
|
||||
@@ -828,7 +828,7 @@ static void webKitWebSrcEnoughDataCb(GstAppSrc*, gpointer userData)
|
||||
|
||||
GST_DEBUG_OBJECT(src, "Have enough data");
|
||||
|
||||
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
if (priv->enoughDataID || priv->paused) {
|
||||
return;
|
||||
}
|
||||
@@ -842,7 +842,7 @@ static gboolean webKitWebSrcSeekMainCb(WebKitWebSrc* src)
|
||||
|
||||
ASSERT(isMainThread());
|
||||
|
||||
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
// already stopped
|
||||
if (!priv->seekID)
|
||||
return FALSE;
|
||||
@@ -860,7 +860,7 @@ static gboolean webKitWebSrcSeekDataCb(GstAppSrc*, guint64 offset, gpointer user
|
||||
WebKitWebSrcPrivate* priv = src->priv;
|
||||
|
||||
GST_DEBUG_OBJECT(src, "Seeking to offset: %" G_GUINT64_FORMAT, offset);
|
||||
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
if (offset == priv->offset && priv->requestedOffset == priv->offset)
|
||||
return TRUE;
|
||||
|
||||
@@ -879,7 +879,7 @@ static gboolean webKitWebSrcSeekDataCb(GstAppSrc*, guint64 offset, gpointer user
|
||||
void webKitWebSrcSetMediaPlayer(WebKitWebSrc* src, WebCore::MediaPlayer* player)
|
||||
{
|
||||
ASSERT(player);
|
||||
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
src->priv->player = player;
|
||||
s_cachedResourceLoader = player->cachedResourceLoader();
|
||||
}
|
||||
@@ -906,7 +906,7 @@ char* StreamingClient::createReadBuffer(size_t requestedSize, size_t& actualSize
|
||||
mapGstBuffer(buffer);
|
||||
#endif
|
||||
|
||||
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
priv->buffer = adoptGRef(buffer);
|
||||
locker.unlock();
|
||||
|
||||
@@ -921,7 +921,7 @@ void StreamingClient::handleResponseReceived(const ResourceResponse& response)
|
||||
|
||||
GST_DEBUG_OBJECT(src, "Received response: %d", response.httpStatusCode());
|
||||
|
||||
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
|
||||
// If we seeked we need 206 == PARTIAL_CONTENT
|
||||
if (priv->requestedOffset && response.httpStatusCode() != 206) {
|
||||
@@ -1020,7 +1020,7 @@ void StreamingClient::handleDataReceived(const char* data, int length)
|
||||
WebKitWebSrc* src = WEBKIT_WEB_SRC(m_src.get());
|
||||
WebKitWebSrcPrivate* priv = src->priv;
|
||||
|
||||
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
|
||||
GST_LOG_OBJECT(src, "Have %d bytes of data", priv->buffer ? getGstBufferSize(priv->buffer.get()) : length);
|
||||
|
||||
@@ -1074,7 +1074,7 @@ void StreamingClient::handleNotifyFinished()
|
||||
|
||||
GST_DEBUG_OBJECT(src, "Have EOS");
|
||||
|
||||
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
if (!priv->seekID) {
|
||||
locker.unlock();
|
||||
gst_app_src_end_of_stream(priv->appsrc);
|
||||
@@ -1210,7 +1210,7 @@ void ResourceHandleStreamingClient::wasBlocked(ResourceHandle*)
|
||||
|
||||
GST_ERROR_OBJECT(src, "Request was blocked");
|
||||
|
||||
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
uri.set(g_strdup(src->priv->uri));
|
||||
locker.unlock();
|
||||
|
||||
@@ -1224,7 +1224,7 @@ void ResourceHandleStreamingClient::cannotShowURL(ResourceHandle*)
|
||||
|
||||
GST_ERROR_OBJECT(src, "Cannot show URL");
|
||||
|
||||
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
|
||||
uri.set(g_strdup(src->priv->uri));
|
||||
locker.unlock();
|
||||
|
||||
--
|
||||
2.3.6
|
||||
|
@ -78,6 +78,7 @@ stdenv.mkDerivation rec {
|
||||
(substituteAll { src = ./0010-dlopen-libXcursor.patch; inherit libXcursor; })
|
||||
(substituteAll { src = ./0011-dlopen-openssl.patch; inherit openssl; })
|
||||
(substituteAll { src = ./0012-dlopen-dbus.patch; dbus_libs = dbus; })
|
||||
./0013-qtwebkit-glib-2.44.patch
|
||||
];
|
||||
|
||||
preConfigure = ''
|
||||
|
Loading…
Reference in New Issue
Block a user