diff --git a/ext/dash/gstdashsink.c b/ext/dash/gstdashsink.c index 625750fa8e..027e069694 100644 --- a/ext/dash/gstdashsink.c +++ b/ext/dash/gstdashsink.c @@ -584,6 +584,7 @@ gst_dash_sink_generate_mpd_content (GstDashSink * sink, gst_mpd_client_set_root_node (sink->mpd_client, "type", GST_MPD_FILE_TYPE_DYNAMIC, "availability-start-time", now, "publish-time", now, NULL); + gst_date_time_unref (now); } if (sink->minimum_update_period) gst_mpd_client_set_root_node (sink->mpd_client, diff --git a/ext/dash/gstmpdrootnode.c b/ext/dash/gstmpdrootnode.c index bb8acda510..2cac539da3 100644 --- a/ext/dash/gstmpdrootnode.c +++ b/ext/dash/gstmpdrootnode.c @@ -83,17 +83,17 @@ gst_mpd_root_node_set_property (GObject * object, guint prop_id, case PROP_MPD_ROOT_AVAILABILTY_START_TIME: if (self->availabilityStartTime) gst_date_time_unref (self->availabilityStartTime); - self->availabilityStartTime = g_value_get_boxed (value); + self->availabilityStartTime = g_value_dup_boxed (value); break; case PROP_MPD_ROOT_AVAILABILTY_END_TIME: if (self->availabilityEndTime) gst_date_time_unref (self->availabilityEndTime); - self->availabilityEndTime = g_value_get_boxed (value); + self->availabilityEndTime = g_value_dup_boxed (value); break; case PROP_MPD_ROOT_PUBLISH_TIME: if (self->publishTime) gst_date_time_unref (self->publishTime); - self->publishTime = g_value_get_boxed (value); + self->publishTime = g_value_dup_boxed (value); break; case PROP_MPD_ROOT_MEDIA_PRESENTATION_DURATION: self->mediaPresentationDuration = g_value_get_uint64 (value);