summaryrefslogtreecommitdiffstats
path: root/gst/rtpmanager/rtpsession.c
diff options
context:
space:
mode:
Diffstat (limited to 'gst/rtpmanager/rtpsession.c')
-rw-r--r--gst/rtpmanager/rtpsession.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/gst/rtpmanager/rtpsession.c b/gst/rtpmanager/rtpsession.c
index 2b3bcb82..9ab3b4a0 100644
--- a/gst/rtpmanager/rtpsession.c
+++ b/gst/rtpmanager/rtpsession.c
@@ -251,39 +251,51 @@ rtp_session_get_property (GObject * object, guint prop_id,
static void
on_new_ssrc (RTPSession * sess, RTPSource * source)
{
+ RTP_SESSION_UNLOCK (sess);
g_signal_emit (sess, rtp_session_signals[SIGNAL_ON_NEW_SSRC], 0, source);
+ RTP_SESSION_LOCK (sess);
}
static void
on_ssrc_collision (RTPSession * sess, RTPSource * source)
{
+ RTP_SESSION_UNLOCK (sess);
g_signal_emit (sess, rtp_session_signals[SIGNAL_ON_SSRC_COLLISION], 0,
source);
+ RTP_SESSION_LOCK (sess);
}
static void
on_ssrc_validated (RTPSession * sess, RTPSource * source)
{
+ RTP_SESSION_UNLOCK (sess);
g_signal_emit (sess, rtp_session_signals[SIGNAL_ON_SSRC_VALIDATED], 0,
source);
+ RTP_SESSION_LOCK (sess);
}
static void
on_bye_ssrc (RTPSession * sess, RTPSource * source)
{
+ RTP_SESSION_UNLOCK (sess);
g_signal_emit (sess, rtp_session_signals[SIGNAL_ON_BYE_SSRC], 0, source);
+ RTP_SESSION_LOCK (sess);
}
static void
on_bye_timeout (RTPSession * sess, RTPSource * source)
{
+ RTP_SESSION_UNLOCK (sess);
g_signal_emit (sess, rtp_session_signals[SIGNAL_ON_BYE_TIMEOUT], 0, source);
+ RTP_SESSION_LOCK (sess);
}
static void
on_timeout (RTPSession * sess, RTPSource * source)
{
+ RTP_SESSION_UNLOCK (sess);
g_signal_emit (sess, rtp_session_signals[SIGNAL_ON_TIMEOUT], 0, source);
+ RTP_SESSION_LOCK (sess);
}
/**