[SCM] WebKit Debian packaging branch, webkit-1.1, updated. upstream/1.1.22-985-g3c00f00
philn at webkit.org
philn at webkit.org
Wed Mar 17 18:42:00 UTC 2010
The following commit has been merged in the webkit-1.1 branch:
commit f978b259c11ae6320dab3ae74991d6413f52e1fb
Author: philn at webkit.org <philn at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Mon Mar 15 20:11:55 2010 +0000
2010-03-15 Philippe Normand <pnormand at igalia.com>
Reviewed by Gustavo Noronha Silva.
[GStreamer] updateStates called for all elements posting a state-change
https://bugs.webkit.org/show_bug.cgi?id=36115
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::mediaPlayerPrivateMessageCallback): Update player state
only for state-change messages coming from playbin2 directly.
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
(WebCore::MediaPlayerPrivate::pipeline): public accessor for the
playbin element.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@56009 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 5b06cee..37ebcd9 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -44,6 +44,20 @@
2010-03-15 Philippe Normand <pnormand at igalia.com>
+ Reviewed by Gustavo Noronha Silva.
+
+ [GStreamer] updateStates called for all elements posting a state-change
+ https://bugs.webkit.org/show_bug.cgi?id=36115
+
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
+ (WebCore::mediaPlayerPrivateMessageCallback): Update player state
+ only for state-change messages coming from playbin2 directly.
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
+ (WebCore::MediaPlayerPrivate::pipeline): public accessor for the
+ playbin element.
+
+2010-03-15 Philippe Normand <pnormand at igalia.com>
+
Reviewed by Gustavo Noronha Silva.
[GTK] video playback position query flood when mouse over the video element
diff --git a/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp b/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp
index c58f705..ea268ed 100644
--- a/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp
+++ b/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp
@@ -93,6 +93,7 @@ gboolean mediaPlayerPrivateMessageCallback(GstBus* bus, GstMessage* message, gpo
MediaPlayerPrivate* mp = reinterpret_cast<MediaPlayerPrivate*>(data);
bool issueError = true;
bool attemptNextLocation = false;
+ GstElement* pipeline = mp->pipeline();
if (message->structure) {
const gchar* messageTypeName = gst_structure_get_name(message->structure);
@@ -137,7 +138,10 @@ gboolean mediaPlayerPrivateMessageCallback(GstBus* bus, GstMessage* message, gpo
mp->didEnd();
break;
case GST_MESSAGE_STATE_CHANGED:
- mp->updateStates();
+ // Ignore state changes from internal elements. They are
+ // forwarded to playbin2 anyway.
+ if (GST_MESSAGE_SRC(message) == reinterpret_cast<GstObject*>(pipeline))
+ mp->updateStates();
break;
case GST_MESSAGE_BUFFERING:
mp->processBufferingStats(message);
diff --git a/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h b/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h
index a7daf00..4389b28 100644
--- a/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h
+++ b/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h
@@ -118,6 +118,7 @@ class MediaPlayerPrivate : public MediaPlayerPrivateInterface {
bool supportsFullscreen() const;
+ GstElement* pipeline() const { return m_playBin; }
bool pipelineReset() const { return m_resetPipeline; }
private:
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list