event: Require writable events for setting the running-time-offset and sequence number
authorSebastian Dröge <sebastian@centricular.com>
Mon, 18 Jun 2018 06:17:36 +0000 (09:17 +0300)
committerSebastian Dröge <sebastian@centricular.com>
Mon, 18 Jun 2018 07:30:51 +0000 (10:30 +0300)
Otherwise multiple code paths with the same event could change the
values on each other.

https://bugzilla.gnome.org/show_bug.cgi?id=796615

gst/gstevent.c

index bf9b59f..a47d573 100644 (file)
@@ -449,6 +449,7 @@ gst_event_set_seqnum (GstEvent * event, guint32 seqnum)
 {
   g_return_if_fail (GST_IS_EVENT (event));
   g_return_if_fail (seqnum != GST_SEQNUM_INVALID);
+  g_return_if_fail (gst_event_is_writable (event));
 
   GST_EVENT_SEQNUM (event) = seqnum;
 }
@@ -497,6 +498,7 @@ void
 gst_event_set_running_time_offset (GstEvent * event, gint64 offset)
 {
   g_return_if_fail (GST_IS_EVENT (event));
+  g_return_if_fail (gst_event_is_writable (event));
 
   ((GstEventImpl *) event)->running_time_offset = offset;
 }