rtsp-client: do not free main context before rtsp watch
authorOgnyan Tonchev <ognyan@axis.com>
Mon, 22 Sep 2014 11:32:06 +0000 (13:32 +0200)
committerSebastian Dröge <sebastian@centricular.com>
Wed, 24 Sep 2014 07:42:16 +0000 (10:42 +0300)
https://bugzilla.gnome.org/show_bug.cgi?id=737110

gst/rtsp-server/rtsp-client.c

index 40295fe..df02258 100644 (file)
@@ -750,6 +750,8 @@ gst_rtsp_client_close (GstRTSPClient * client)
     g_source_destroy ((GSource *) priv->watch);
     priv->watch = NULL;
     gst_rtsp_client_set_send_func (client, NULL, NULL, NULL);
+    g_main_context_unref (priv->watch_context);
+    priv->watch_context = NULL;
   }
 }
 
@@ -3301,8 +3303,6 @@ client_watch_notify (GstRTSPClient * client)
 
   GST_INFO ("client %p: watch destroyed", client);
   priv->watch = NULL;
-  g_main_context_unref (priv->watch_context);
-  priv->watch_context = NULL;
   /* remove all sessions and so drop the extra client ref */
   gst_rtsp_client_session_filter (client, cleanup_session, NULL);
   g_signal_emit (client, gst_rtsp_client_signals[SIGNAL_CLOSED], 0, NULL);