From e4b7e06a20cb53c8b85f1a5d40d3883e5776580f Mon Sep 17 00:00:00 2001 From: =?utf8?q?Olivier=20Cr=C3=AAte?= Date: Thu, 12 Feb 2009 14:42:31 +0000 Subject: [PATCH] Lock src when modifying idle_source --- gst/gstnicesrc.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/gst/gstnicesrc.c b/gst/gstnicesrc.c index e83eade..37aabbf 100644 --- a/gst/gstnicesrc.c +++ b/gst/gstnicesrc.c @@ -213,10 +213,15 @@ gst_nice_src_unlock_idler (gpointer data) { GstNiceSrc *nicesrc = GST_NICE_SRC (data); - g_main_loop_quit (nicesrc->mainloop); + GST_OBJECT_LOCK (nicesrc); + if (nicesrc->unlocked) + g_main_loop_quit (nicesrc->mainloop); - g_source_unref (nicesrc->idle_source); - nicesrc->idle_source = NULL; + if (nicesrc->idle_source) { + g_source_unref (nicesrc->idle_source); + nicesrc->idle_source = NULL; + } + GST_OBJECT_UNLOCK (nicesrc); return FALSE; } -- 2.11.4.GIT