gstreamer/subprojects/gst-plugins-bad/sys/d3d11
Seungha Yang b9e51facdd d3d11decoder: Fix potential use after free
A DPB buffer held by codec picture object may not be writable
at the moment, then gst_buffer_make_writable() will unref passed buffer.

Specifically, the use after free or double free can happen if:
* Crop meta of buffer copy is required because of non-zero
  top-left crop position
* zero-copy is possible with crop meta
* A picture was duplicated, interlaced h264 stream for example

Interlaced h264 stream with non-zero top-left crop position
is not very common but it's possible configuration in theory.

Thus gst_buffer_make_writable() should be called with
GstVideoCodecFrame.output_buffer directly.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6706>
2024-04-22 13:28:06 +00:00
..
gstd3d11av1dec.cpp d3d11decoder: Port to GstDxva 2023-09-17 18:30:07 +09:00
gstd3d11av1dec.h d3d11decoder: Port to GstDxva 2023-09-17 18:30:07 +09:00
gstd3d11basefilter.cpp d3d11basefilter: Forward video related metas if needed 2023-06-02 00:33:52 +00:00
gstd3d11basefilter.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11compositor.cpp d3d11: Rework memory allocation params signalling 2023-11-27 15:14:09 +00:00
gstd3d11compositor.h d3d11compositor: Performance optimization 2022-06-20 19:18:53 +00:00
gstd3d11convert.cpp d3d11: Add support for more packed formats using compute shader 2023-11-27 15:14:09 +00:00
gstd3d11convert.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11decoder.cpp d3d11decoder: Fix potential use after free 2024-04-22 13:28:06 +00:00
gstd3d11decoder.h d3d11decoder: Port to GstDxva 2023-09-17 18:30:07 +09:00
gstd3d11deinterlace.cpp d3d11: Rework memory allocation params signalling 2023-11-27 15:14:09 +00:00
gstd3d11deinterlace.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11download.cpp d3d11: Update element meta 2023-05-12 20:13:58 +00:00
gstd3d11download.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11dxgicapture.cpp d3d11screencapturesrc: Hide symbols 2024-01-05 21:27:35 +09:00
gstd3d11dxgicapture.h d3d11screencapture: Subclassing capture implementation 2022-10-21 14:21:28 +00:00
gstd3d11h264dec.cpp d3d11decoder: Port to GstDxva 2023-09-17 18:30:07 +09:00
gstd3d11h264dec.h d3d11decoder: Port to GstDxva 2023-09-17 18:30:07 +09:00
gstd3d11h265dec.cpp d3d11decoder: Port to GstDxva 2023-09-17 18:30:07 +09:00
gstd3d11h265dec.h d3d11decoder: Port to GstDxva 2023-09-17 18:30:07 +09:00
gstd3d11ipc.cpp d3d11: Use gst_util_get_timestamp() 2023-06-08 01:02:45 +00:00
gstd3d11ipc.h d3d11: Use gst_util_get_timestamp() 2023-06-08 01:02:45 +00:00
gstd3d11ipcclient.cpp d3d11: Update plugin docs 2023-08-30 15:45:12 +00:00
gstd3d11ipcclient.h d3d11ipcsrc: Stop asynchronously in case of io-mode=import 2023-06-06 17:54:44 +00:00
gstd3d11ipcserver.cpp d3d11ipcsink: Fix deadlock on stop 2023-12-06 16:09:27 +00:00
gstd3d11ipcserver.h d3d11ipc: Use unnamed shareable handle 2023-06-06 17:54:44 +00:00
gstd3d11ipcsink.cpp d3d11: Use gst_util_get_timestamp() 2023-06-08 01:02:45 +00:00
gstd3d11ipcsink.h d3d11: Add support for IPC 2023-05-06 03:19:09 +09:00
gstd3d11ipcsrc.cpp d3d11: Use gst_util_get_timestamp() 2023-06-08 01:02:45 +00:00
gstd3d11ipcsrc.h d3d11: Add support for IPC 2023-05-06 03:19:09 +09:00
gstd3d11mpeg2dec.cpp d3d11decoder: Port to GstDxva 2023-09-17 18:30:07 +09:00
gstd3d11mpeg2dec.h d3d11decoder: Port to GstDxva 2023-09-17 18:30:07 +09:00
gstd3d11overlay.cpp d3d11: Rework memory allocation params signalling 2023-11-27 15:14:09 +00:00
gstd3d11overlay.h d3d11: Add d3d11overlay element 2023-04-17 23:22:57 +09:00
gstd3d11overlaycompositor.cpp d3d11: Avoid ID3D11DeviceContext::Map if possible 2023-11-15 23:38:59 +09:00
gstd3d11overlaycompositor.h d3d11overlaycompositor: Objectify overlay render implementation 2022-07-02 05:37:27 +09:00
gstd3d11pluginutils.cpp d3d11: Port to d3dshader library 2024-03-24 22:28:14 +09:00
gstd3d11pluginutils.h d3d11: Enable DirectXMath SIMD 2023-11-07 11:19:31 +00:00
gstd3d11screencapture.cpp d3d11screencapturesrc: Fix wrong color with HDR enabled 2023-11-16 19:00:24 +09:00
gstd3d11screencapture.h d3d11screencapturesrc: Fix wrong color with HDR enabled 2023-11-16 19:00:24 +09:00
gstd3d11screencapturedevice.cpp d3d11screencapturesrc: Fix wrong color with HDR enabled 2023-11-16 19:00:24 +09:00
gstd3d11screencapturedevice.h d3d11: Update build-time dependency 2022-02-11 20:01:52 +00:00
gstd3d11screencapturesrc.cpp d3d11: Rework memory allocation params signalling 2023-11-27 15:14:09 +00:00
gstd3d11screencapturesrc.h d3d11: Rename screen capture element 2021-10-14 15:15:56 +00:00
gstd3d11testsrc.cpp d3d11: Add support for more packed formats using compute shader 2023-11-27 15:14:09 +00:00
gstd3d11testsrc.h d3d11: Add d3d11testsrc element 2022-06-09 05:08:41 +09:00
gstd3d11upload.cpp d3d11: Rework memory allocation params signalling 2023-11-27 15:14:09 +00:00
gstd3d11upload.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11videosink.cpp d3d11videosink: Handle double click and modifier 2024-04-18 20:19:38 +00:00
gstd3d11videosink.h d3d11videosink: Protect window with lock at every place 2022-07-02 20:40:37 +00:00
gstd3d11vp8dec.cpp d3d11decoder: Port to GstDxva 2023-09-17 18:30:07 +09:00
gstd3d11vp8dec.h d3d11decoder: Port to GstDxva 2023-09-17 18:30:07 +09:00
gstd3d11vp9dec.cpp d3d11vp9dec: Fix critical warning 2023-09-19 13:09:57 +00:00
gstd3d11vp9dec.h d3d11decoder: Port to GstDxva 2023-09-17 18:30:07 +09:00
gstd3d11window.cpp d3d11videosink: Handle double click and modifier 2024-04-18 20:19:38 +00:00
gstd3d11window.h d3d11videosink: Handle double click and modifier 2024-04-18 20:19:38 +00:00
gstd3d11window_corewindow.cpp d3d11: Use correct ref/unref methods 2022-11-28 18:50:03 +00:00
gstd3d11window_corewindow.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11window_dummy.cpp d3d11videosink: Fix rendering on keyed mutex enabled handle 2024-04-12 14:46:20 +00:00
gstd3d11window_dummy.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11window_swapchainpanel.cpp d3d11: Use correct ref/unref methods 2022-11-28 18:50:03 +00:00
gstd3d11window_swapchainpanel.h Move files from gst-plugins-bad into the "subprojects/gst-plugins-bad/" subdir 2021-09-24 16:14:36 -03:00
gstd3d11window_win32.cpp d3d11videosink: Handle double click and modifier 2024-04-18 20:19:38 +00:00
gstd3d11window_win32.h d3d11videosink: post "have-window-handle" element message on the bus 2023-10-24 16:32:36 +02:00
gstd3d11winrtcapture.cpp d3d11screencapturesrc: Fix wrong color with HDR enabled 2023-11-16 19:00:24 +09:00
gstd3d11winrtcapture.h d3d11screencapturesrc: Add "window-capture-mode" property 2023-04-03 15:06:47 +00:00
meson.build d3d11: Port to d3dshader library 2024-03-24 22:28:14 +09:00
plugin.cpp d3d11: Drop legacy device support 2023-11-25 20:27:43 +09:00