diff options
author | Seungha Yang <seungha@centricular.com> | 2023-05-10 00:51:31 +0900 |
---|---|---|
committer | GStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org> | 2023-05-10 16:20:41 +0000 |
commit | ebcebe548dcaed9d5250f6c29492d8e09c74e04c (patch) | |
tree | 0ff0925ea88950c2dccacfcbd43f9eb513065f63 | |
parent | b05659859ab83b4739f2640d313383058ea3089f (diff) | |
download | gstreamer-ebcebe548dcaed9d5250f6c29492d8e09c74e04c.tar.gz |
d3d11videosink: Don't clear prepared buffer on unlock_stop()
That can be called between prepare() and render() which results in
unexpected error flow return
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4583>
-rw-r--r-- | subprojects/gst-plugins-bad/sys/d3d11/gstd3d11videosink.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/subprojects/gst-plugins-bad/sys/d3d11/gstd3d11videosink.cpp b/subprojects/gst-plugins-bad/sys/d3d11/gstd3d11videosink.cpp index 7a9755c72b..4fec7878ca 100644 --- a/subprojects/gst-plugins-bad/sys/d3d11/gstd3d11videosink.cpp +++ b/subprojects/gst-plugins-bad/sys/d3d11/gstd3d11videosink.cpp @@ -1228,8 +1228,6 @@ gst_d3d11_video_sink_unlock_stop (GstBaseSink * sink) if (self->window) gst_d3d11_window_unlock_stop (self->window); - gst_clear_buffer (&self->prepared_buffer); - return TRUE; } @@ -1442,6 +1440,8 @@ gst_d3d11_video_sink_show_frame (GstVideoSink * sink, GstBuffer * buf) ret = GST_FLOW_ERROR; } + gst_clear_buffer (&self->prepared_buffer); + return ret; } |