From 0588222925fd4f945f51231751d593829a7fd8df Mon Sep 17 00:00:00 2001 From: =?utf8?q?Olivier=20Cr=C3=AAte?= Date: Wed, 21 Jan 2015 18:41:43 -0500 Subject: [PATCH] aggregator: Document locking of GstAggregatorPrivate members Most of them are protected by the object lock, specify which ones use a different lock. https://bugzilla.gnome.org/show_bug.cgi?id=742684 --- libs/gst/base/gstaggregator.c | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/libs/gst/base/gstaggregator.c b/libs/gst/base/gstaggregator.c index ba4bc85..5dfac6c 100644 --- a/libs/gst/base/gstaggregator.c +++ b/libs/gst/base/gstaggregator.c @@ -192,6 +192,8 @@ gst_aggregator_pad_flush (GstAggregatorPad * aggpad, GstAggregator * agg) *************************************/ static GstElementClass *aggregator_parent_class = NULL; +/* All members are protected by the object lock unless otherwise noted */ + struct _GstAggregatorPrivate { gint padcount; @@ -200,23 +202,15 @@ struct _GstAggregatorPrivate gboolean running; /* protected by SRC_STREAM_LOCK */ gint seqnum; - gboolean send_stream_start; + gboolean send_stream_start; /* protected by srcpad stream lock */ gboolean send_segment; gboolean flush_seeking; gboolean pending_flush_start; - gboolean send_eos; - GstFlowReturn flow_return; - - gboolean send_stream_start; /* protected by srcpad stream lock */ - gboolean send_segment; /* protected by object lock */ - gboolean flush_seeking; /* protected by object lock */ - gboolean pending_flush_start; /* protected by object lock */ gboolean send_eos; /* protected by srcpad stream lock */ - GstFlowReturn flow_return; /* protected by object lock */ + GstFlowReturn flow_return; GstCaps *srccaps; /* protected by the srcpad stream lock */ - /* protected by object lock */ GstTagList *tags; gboolean tags_changed; @@ -228,7 +222,7 @@ struct _GstAggregatorPrivate GstClockTime sub_latency_max; /* aggregate */ - GstClockID aggregate_id; + GstClockID aggregate_id; /* protected by src_lock */ GMutex src_lock; GCond src_cond; -- 2.7.4