diff options
author | Sebastian Dröge <sebastian.droege@collabora.co.uk> | 2012-12-24 16:23:55 +0100 |
---|---|---|
committer | Sebastian Dröge <sebastian.droege@collabora.co.uk> | 2012-12-31 15:59:07 +0100 |
commit | 817d30f13054addcb9c7f95ee39d8b3e69f4cfb3 (patch) | |
tree | f5d5126296f8bb55f32bf485140a4eedb3a36100 /sys/mfc | |
parent | 21258a52cdf4540e80139bffa93f46fd3b2e679c (diff) | |
download | gstreamer-plugins-bad-817d30f13054addcb9c7f95ee39d8b3e69f4cfb3.tar.gz |
mfc: Don't leak buffers when setting new dest settings for a direct buffer
Diffstat (limited to 'sys/mfc')
-rw-r--r-- | sys/mfc/fimc/fimc.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/sys/mfc/fimc/fimc.c b/sys/mfc/fimc/fimc.c index 011dd066c..a5990b686 100644 --- a/sys/mfc/fimc/fimc.c +++ b/sys/mfc/fimc/fimc.c @@ -439,6 +439,13 @@ fimc_set_dst_format_direct (Fimc * fimc, FimcColorFormat format, int width, crop_top, crop_width, crop_height) < 0) return -1; + for (i = 0; i < 3; i++) { + if (fimc->dst_buffer_data[i]) + munmap (fimc->dst_buffer_data[i], fimc->dst_buffer_size[i]); + fimc->dst_buffer_data[i] = NULL; + fimc->dst_buffer_size[i] = 0; + } + buffer.type = V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE; buffer.memory = V4L2_MEMORY_MMAP; buffer.index = 0; |