[farsight2/master] msn: check if the fd has to properly set
Olivier Crête
olivier.crete at collabora.co.uk
Tue Jul 14 09:50:43 PDT 2009
---
gst/fsmsnconference/fs-msn-stream.c | 17 ++++++++++++++++-
1 files changed, 16 insertions(+), 1 deletions(-)
diff --git a/gst/fsmsnconference/fs-msn-stream.c b/gst/fsmsnconference/fs-msn-stream.c
index 0ad4864..483c103 100644
--- a/gst/fsmsnconference/fs-msn-stream.c
+++ b/gst/fsmsnconference/fs-msn-stream.c
@@ -582,6 +582,7 @@ _connected (
gpointer user_data)
{
FsMsnStream *self = FS_MSN_STREAM (user_data);
+ int checkfd;
GST_DEBUG ("******** CONNECTED %d**********", fd);
if (self->priv->media_fd_src) {
@@ -591,13 +592,27 @@ _connected (
mimic_codec);
fs_codec_destroy (mimic_codec);
- g_object_set (G_OBJECT (self->priv->media_fd_src), "fd", fd, NULL);
+ g_object_set (self->priv->media_fd_src, "fd", fd, NULL);
+ g_object_get (self->priv->media_fd_src, "fd", &checkfd, NULL);
+ if (fd != checkfd)
+ {
+ GST_ERROR ("Failed to set fd");
+ return;
+ }
gst_element_set_locked_state(self->priv->media_fd_src, FALSE);
gst_element_sync_state_with_parent (self->priv->media_fd_src);
}
else if (self->priv->media_fd_sink)
{
g_object_set (G_OBJECT (self->priv->media_fd_sink), "fd", fd, NULL);
+ g_object_get (self->priv->media_fd_src, "fd", &checkfd, NULL);
+ if (fd != checkfd)
+ {
+ GST_ERROR ("Failed to set fd");
+ return;
+ }
+ gst_element_set_locked_state(self->priv->media_fd_src, FALSE);
+
gst_element_set_locked_state(self->priv->media_fd_sink,FALSE);
gst_element_sync_state_with_parent (self->priv->media_fd_sink);
g_object_set (G_OBJECT (self->priv->session_valve), "drop", FALSE, NULL);
--
1.5.6.5
More information about the farsight-commits
mailing list