mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-01-22 07:08:23 +00:00
72ffee6355
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/6710> |
||
---|---|---|
.. | ||
hlsl | ||
gstd3d11av1dec.cpp | ||
gstd3d11av1dec.h | ||
gstd3d11basefilter.cpp | ||
gstd3d11basefilter.h | ||
gstd3d11compositor.cpp | ||
gstd3d11compositor.h | ||
gstd3d11convert.cpp | ||
gstd3d11convert.h | ||
gstd3d11decoder.cpp | ||
gstd3d11decoder.h | ||
gstd3d11deinterlace.cpp | ||
gstd3d11deinterlace.h | ||
gstd3d11download.cpp | ||
gstd3d11download.h | ||
gstd3d11dxgicapture.cpp | ||
gstd3d11dxgicapture.h | ||
gstd3d11h264dec.cpp | ||
gstd3d11h264dec.h | ||
gstd3d11h265dec.cpp | ||
gstd3d11h265dec.h | ||
gstd3d11ipc.cpp | ||
gstd3d11ipc.h | ||
gstd3d11ipcclient.cpp | ||
gstd3d11ipcclient.h | ||
gstd3d11ipcserver.cpp | ||
gstd3d11ipcserver.h | ||
gstd3d11ipcsink.cpp | ||
gstd3d11ipcsink.h | ||
gstd3d11ipcsrc.cpp | ||
gstd3d11ipcsrc.h | ||
gstd3d11mpeg2dec.cpp | ||
gstd3d11mpeg2dec.h | ||
gstd3d11overlay.cpp | ||
gstd3d11overlay.h | ||
gstd3d11overlaycompositor.cpp | ||
gstd3d11overlaycompositor.h | ||
gstd3d11pluginutils.cpp | ||
gstd3d11pluginutils.h | ||
gstd3d11screencapture.cpp | ||
gstd3d11screencapture.h | ||
gstd3d11screencapturedevice.cpp | ||
gstd3d11screencapturedevice.h | ||
gstd3d11screencapturesrc.cpp | ||
gstd3d11screencapturesrc.h | ||
gstd3d11testsrc.cpp | ||
gstd3d11testsrc.h | ||
gstd3d11upload.cpp | ||
gstd3d11upload.h | ||
gstd3d11videosink.cpp | ||
gstd3d11videosink.h | ||
gstd3d11vp8dec.cpp | ||
gstd3d11vp8dec.h | ||
gstd3d11vp9dec.cpp | ||
gstd3d11vp9dec.h | ||
gstd3d11window.cpp | ||
gstd3d11window.h | ||
gstd3d11window_corewindow.cpp | ||
gstd3d11window_corewindow.h | ||
gstd3d11window_dummy.cpp | ||
gstd3d11window_dummy.h | ||
gstd3d11window_swapchainpanel.cpp | ||
gstd3d11window_swapchainpanel.h | ||
gstd3d11window_win32.cpp | ||
gstd3d11window_win32.h | ||
gstd3d11winrtcapture.cpp | ||
gstd3d11winrtcapture.h | ||
meson.build | ||
plugin.cpp |