[longomatch] Try to get the sink element from the message emitter
- From: Andoni Morales Alastruey <amorales src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [longomatch] Try to get the sink element from the message emitter
- Date: Sun, 25 Jul 2010 21:00:43 +0000 (UTC)
commit 89d67104e9de144f3e84c690e09bea34135fd573
Author: Andoni Morales Alastruey <ylatuya gmail com>
Date: Sun Jul 25 20:22:46 2010 +0200
Try to get the sink element from the message emitter
set_window_id might not be called from the GUI thread, so
bwv_update_interfaces will set sink->xoverlay=NULL. In this case
we try to get the xoverlay from the message emitter
libcesarplayer/src/bacon-video-widget-gst-0.10.c | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)
---
diff --git a/libcesarplayer/src/bacon-video-widget-gst-0.10.c b/libcesarplayer/src/bacon-video-widget-gst-0.10.c
index a2695e4..24bafc9 100644
--- a/libcesarplayer/src/bacon-video-widget-gst-0.10.c
+++ b/libcesarplayer/src/bacon-video-widget-gst-0.10.c
@@ -5356,6 +5356,12 @@ bvw_element_msg_sync (GstBus * bus, GstMessage * msg, gpointer data)
g_mutex_lock (bvw->priv->lock);
bvw_update_interface_implementations (bvw);
g_mutex_unlock (bvw->priv->lock);
+
+ if (bvw->priv->xoverlay == NULL) {
+ GstObject *sender = GST_MESSAGE_SRC (msg);
+ if (sender && GST_IS_X_OVERLAY (sender))
+ bvw->priv->xoverlay = GST_X_OVERLAY (gst_object_ref (sender));
+ }
g_return_if_fail (bvw->priv->xoverlay != NULL);
g_return_if_fail (bvw->priv->video_window != NULL);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]