[SCM] WebKit Debian packaging branch, webkit-1.1, updated. upstream/1.1.22-985-g3c00f00
kov at webkit.org
kov at webkit.org
Wed Mar 17 18:43:40 UTC 2010
The following commit has been merged in the webkit-1.1 branch:
commit 2a616b102639bb90595c6637dfc24a85c2b357a4
Author: kov at webkit.org <kov at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Tue Mar 16 11:57:39 2010 +0000
2010-03-10 Gustavo Noronha Silva <gustavo.noronha at collabora.co.uk>
Reviewed by Eric Seidel.
[GTK] Position queries are lagging
https://bugs.webkit.org/show_bug.cgi?id=34372
Normalize timeout priorities through the GStreamer media player as
a whole. This should help avoid that any of them is starved.
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivate::volumeChanged):
(WebCore::MediaPlayerPrivate::processBufferingStats):
(WebCore::MediaPlayerPrivate::muteChanged):
* platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
(webkit_video_sink_render):
* platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
(webKitWebSrcNeedDataCb):
(webKitWebSrcEnoughDataCb):
(webKitWebSrcSeekDataCb):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@56055 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 082b6de..8f511ad 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -5,6 +5,27 @@
[GTK] Position queries are lagging
https://bugs.webkit.org/show_bug.cgi?id=34372
+ Normalize timeout priorities through the GStreamer media player as
+ a whole. This should help avoid that any of them is starved.
+
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
+ (WebCore::MediaPlayerPrivate::volumeChanged):
+ (WebCore::MediaPlayerPrivate::processBufferingStats):
+ (WebCore::MediaPlayerPrivate::muteChanged):
+ * platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
+ (webkit_video_sink_render):
+ * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
+ (webKitWebSrcNeedDataCb):
+ (webKitWebSrcEnoughDataCb):
+ (webKitWebSrcSeekDataCb):
+
+2010-03-10 Gustavo Noronha Silva <gustavo.noronha at collabora.co.uk>
+
+ Reviewed by Eric Seidel.
+
+ [GTK] Position queries are lagging
+ https://bugs.webkit.org/show_bug.cgi?id=34372
+
Use default priority also for parsing data: URIs.
* platform/network/soup/ResourceHandleSoup.cpp:
diff --git a/WebCore/platform/graphics/gstreamer/VideoSinkGStreamer.cpp b/WebCore/platform/graphics/gstreamer/VideoSinkGStreamer.cpp
index 5e0f8e2..dd8c3ee 100644
--- a/WebCore/platform/graphics/gstreamer/VideoSinkGStreamer.cpp
+++ b/WebCore/platform/graphics/gstreamer/VideoSinkGStreamer.cpp
@@ -213,8 +213,10 @@ webkit_video_sink_render(GstBaseSink* bsink, GstBuffer* buffer)
buffer = priv->buffer = newBuffer;
}
- // Use HIGH_IDLE+20 priority, like Gtk+ for redrawing operations.
- priv->timeout_id = g_timeout_add_full(G_PRIORITY_HIGH_IDLE + 20, 0,
+ // This should likely use a lower priority, but glib currently starves
+ // lower priority sources.
+ // See: https://bugzilla.gnome.org/show_bug.cgi?id=610830.
+ priv->timeout_id = g_timeout_add_full(G_PRIORITY_DEFAULT, 0,
webkit_video_sink_timeout_func,
gst_object_ref(sink),
(GDestroyNotify)gst_object_unref);
diff --git a/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp b/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp
index 6b8499c..8462ad1 100644
--- a/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp
+++ b/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp
@@ -553,7 +553,7 @@ static void webKitWebSrcNeedDataCb(GstAppSrc* appsrc, guint length, gpointer use
if (priv->needDataID || !priv->paused)
return;
- priv->needDataID = g_timeout_add_full(G_PRIORITY_HIGH, 0, (GSourceFunc) webKitWebSrcNeedDataMainCb, gst_object_ref(src), (GDestroyNotify) gst_object_unref);
+ priv->needDataID = g_timeout_add_full(G_PRIORITY_DEFAULT, 0, (GSourceFunc) webKitWebSrcNeedDataMainCb, gst_object_ref(src), (GDestroyNotify) gst_object_unref);
}
static gboolean webKitWebSrcEnoughDataMainCb(WebKitWebSrc* src)
@@ -577,7 +577,7 @@ static void webKitWebSrcEnoughDataCb(GstAppSrc* appsrc, gpointer userData)
if (priv->enoughDataID || priv->paused)
return;
- priv->enoughDataID = g_timeout_add_full(G_PRIORITY_HIGH, 0, (GSourceFunc) webKitWebSrcEnoughDataMainCb, gst_object_ref(src), (GDestroyNotify) gst_object_unref);
+ priv->enoughDataID = g_timeout_add_full(G_PRIORITY_DEFAULT, 0, (GSourceFunc) webKitWebSrcEnoughDataMainCb, gst_object_ref(src), (GDestroyNotify) gst_object_unref);
}
static gboolean webKitWebSrcSeekMainCb(WebKitWebSrc* src)
@@ -606,7 +606,7 @@ static gboolean webKitWebSrcSeekDataCb(GstAppSrc* appsrc, guint64 offset, gpoint
priv->requestedOffset = offset;
if (priv->seekID)
g_source_remove(priv->seekID);
- priv->seekID = g_timeout_add_full(G_PRIORITY_HIGH, 0, (GSourceFunc) webKitWebSrcSeekMainCb, gst_object_ref(src), (GDestroyNotify) gst_object_unref);
+ priv->seekID = g_timeout_add_full(G_PRIORITY_DEFAULT, 0, (GSourceFunc) webKitWebSrcSeekMainCb, gst_object_ref(src), (GDestroyNotify) gst_object_unref);
return TRUE;
}
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list