From f7b9b1773ef18474fef314115f03a6a0077d6234 Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Tue, 28 Oct 2003 16:01:26 +0000 Subject: [PATCH] filesrc needs to be reffed by buffers that use its mmaped data directly Original commit message from CVS: filesrc needs to be reffed by buffers that use its mmaped data directly --- gst/elements/gstfilesrc.c | 2 ++ plugins/elements/gstfilesrc.c | 2 ++ 2 files changed, 4 insertions(+) diff --git a/gst/elements/gstfilesrc.c b/gst/elements/gstfilesrc.c index 96589e1718..d3288d6b36 100644 --- a/gst/elements/gstfilesrc.c +++ b/gst/elements/gstfilesrc.c @@ -370,6 +370,7 @@ gst_filesrc_free_parent_mmap (GstBuffer *buf) GST_BUFFER_DATA (buf) = NULL; + g_object_unref (src); gst_buffer_default_free (buf); } @@ -414,6 +415,7 @@ gst_filesrc_map_region (GstFileSrc *src, off_t offset, size_t size) GST_BUFFER_OFFSET (buf) = offset; GST_BUFFER_TIMESTAMP (buf) = GST_CLOCK_TIME_NONE; GST_BUFFER_POOL_PRIVATE (buf) = src; + g_object_ref (src); GST_BUFFER_FREE_FUNC (buf) = (GstDataFreeFunction) gst_filesrc_free_parent_mmap; g_mutex_lock (src->map_regions_lock); diff --git a/plugins/elements/gstfilesrc.c b/plugins/elements/gstfilesrc.c index 96589e1718..d3288d6b36 100644 --- a/plugins/elements/gstfilesrc.c +++ b/plugins/elements/gstfilesrc.c @@ -370,6 +370,7 @@ gst_filesrc_free_parent_mmap (GstBuffer *buf) GST_BUFFER_DATA (buf) = NULL; + g_object_unref (src); gst_buffer_default_free (buf); } @@ -414,6 +415,7 @@ gst_filesrc_map_region (GstFileSrc *src, off_t offset, size_t size) GST_BUFFER_OFFSET (buf) = offset; GST_BUFFER_TIMESTAMP (buf) = GST_CLOCK_TIME_NONE; GST_BUFFER_POOL_PRIVATE (buf) = src; + g_object_ref (src); GST_BUFFER_FREE_FUNC (buf) = (GstDataFreeFunction) gst_filesrc_free_parent_mmap; g_mutex_lock (src->map_regions_lock);