diff options
author | Matthew Waters <matthew@centricular.com> | 2020-10-02 12:06:59 +1000 |
---|---|---|
committer | GStreamer Merge Bot <gitlab-merge-bot@gstreamer-foundation.org> | 2020-10-13 08:48:05 +0000 |
commit | b84c8821de6bccd242d524c28d68503571382706 (patch) | |
tree | 28c38cdbd2a04f3c7e3b9ee10111925195732691 /ext/wpe/WPEThreadedView.cpp | |
parent | 4eeff95f92bb92dd8ad992fd94cd416eff8de3b9 (diff) | |
download | gstreamer-plugins-bad-b84c8821de6bccd242d524c28d68503571382706.tar.gz |
wpe: free a previous pending image/shm buffer
Don't blindly overwrite a possibly previously set buffer.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1663>
Diffstat (limited to 'ext/wpe/WPEThreadedView.cpp')
-rw-r--r-- | ext/wpe/WPEThreadedView.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/ext/wpe/WPEThreadedView.cpp b/ext/wpe/WPEThreadedView.cpp index de05e3c83..a4e4d1c97 100644 --- a/ext/wpe/WPEThreadedView.cpp +++ b/ext/wpe/WPEThreadedView.cpp @@ -494,6 +494,7 @@ void WPEView::handleExportedImage(gpointer image) GMutexHolder lock(images_mutex); GST_TRACE("EGLImage %p wrapped in GstEGLImage %" GST_PTR_FORMAT, eglImage, gstImage); + gst_clear_mini_object ((GstMiniObject **) &egl.pending); egl.pending = gstImage; notifyLoadFinished(); @@ -552,6 +553,7 @@ void WPEView::handleExportedBuffer(struct wpe_fdo_shm_exported_buffer* buffer) { GMutexHolder lock(images_mutex); GST_TRACE("SHM buffer %p wrapped in buffer %" GST_PTR_FORMAT, buffer, gstBuffer); + gst_clear_buffer (&shm.pending); shm.pending = gstBuffer; notifyLoadFinished(); } |