[farsight2/master] rtpsession: Don't double-unlock

Olivier Crête olivier.crete at collabora.co.uk
Tue Sep 1 16:38:01 PDT 2009


---
 gst/fsrtpconference/fs-rtp-session.c |    9 ++++++---
 1 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/gst/fsrtpconference/fs-rtp-session.c b/gst/fsrtpconference/fs-rtp-session.c
index 52fbf50..b73f19b 100644
--- a/gst/fsrtpconference/fs-rtp-session.c
+++ b/gst/fsrtpconference/fs-rtp-session.c
@@ -3557,7 +3557,7 @@ fs_rtp_session_add_send_codec_bin_unlock (FsRtpSession *session,
           (GFunc) g_object_unref, NULL);
       g_list_free (session->priv->transmitters_add_sink);
       session->priv->transmitters_add_sink = NULL;
-      goto error;
+      goto error_locked;
     }
 
     g_object_unref (transmitter);
@@ -3590,9 +3590,12 @@ fs_rtp_session_add_send_codec_bin_unlock (FsRtpSession *session,
  error:
   fs_rtp_session_remove_send_codec_bin (session, NULL, FALSE);
   fs_codec_list_destroy (codecs);
-  FS_RTP_SESSION_UNLOCK (session);
-
   return NULL;
+
+ error_locked:
+
+  FS_RTP_SESSION_UNLOCK (session);
+  goto error;
 }
 
 static void
-- 
1.5.6.5



More information about the farsight-commits mailing list