1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-23 12:43:46 +02:00
FFmpeg/libavutil
Aaron Levinson 0c1c514643 avutil/hwcontext_dxva2: Don't improperly free IDirect3DSurface9 objects
Add dxva2_pool_release_dummy() and use it in call to
av_buffer_create() in dxva2_pool_alloc().

Prior to this change, av_buffer_create() was called with NULL for the
third argument, which indicates that av_buffer_default_free() should
be used to free the buffer's data.  Eventually, it gets to
buffer_pool_free() and calls buf->free() on a surface object (which is
av_buffer_default_free()).

This can result in a crash when the debug version of the C-runtime is
used on Windows.  While it doesn't appear to result in a crash when
the release version of the C-runtime is used on Windows, it likely
results in memory corruption, since av_free() is being called on
memory that was allocated using
IDirectXVideoAccelerationService::CreateSurface().

Signed-off-by: Aaron Levinson <alevinsn@aracnet.com>
Reviewed-by: wm4 <nfxjfg@googlemail.com>
Reviewed-by: Steven Liu <lingjiujianke@gmail.com>
Reviewed-by: Mark Thompson <sw@jkqxz.net>
2017-05-16 21:45:52 +01:00
..
aarch64 aarch64: Add parentheses around the offset parameter in movrel 2017-03-11 13:14:50 +02:00
arm Merge commit '6a1ea4ec932f4fc9fdc00ec51ee070b298ddb35f' 2017-04-04 16:04:29 -03:00
avr32 Merge commit '41ed7ab45fc693f7d7fc35664c0233f4c32d69bb' 2016-06-21 21:55:34 +02:00
bfin
mips avutil/mips: loongson add mmi utils header file 2016-10-23 03:23:09 +02:00
ppc Merge commit '05a603a94e4b3eeefa5e18ae653a848001461e89' 2017-04-26 16:27:24 +02:00
sh4
tests avutil/avstring: improve av_strreplace implement 2017-04-11 10:54:35 +08:00
tomi
x86 x86/float_dsp: remove usage of integer instructions 2017-05-12 23:34:49 -03:00
.gitignore Merge commit '257f00ec1ab06a2a161f535036c6512f3fc8e801' 2016-06-22 11:28:51 +02:00
adler32.c
adler32.h avutil: Group hash functions separately in Doxygen 2016-08-02 07:48:08 -07:00
aes_ctr.c
aes_ctr.h
aes_internal.h
aes.c
aes.h
atomic_gcc.h Revert "lavu/atomic: add support for the new memory model aware gcc built-ins" 2017-03-08 00:48:37 -03:00
atomic_suncc.h lavu: remove the custom atomic API 2016-10-02 19:35:55 +02:00
atomic_win32.h lavu: remove the custom atomic API 2016-10-02 19:35:55 +02:00
atomic.c lavu: remove the custom atomic API 2016-10-02 19:35:55 +02:00
atomic.h lavu: remove the custom atomic API 2016-10-02 19:35:55 +02:00
attributes.h Merge commit 'f637046d3134a331e4b5a7243ac3dfb92735b8a5' 2017-02-02 11:26:05 +01:00
audio_fifo.c Merge commit '0456e684394dc5a7b98ab9ebb48396d743bf3730' 2017-03-24 13:17:55 +01:00
audio_fifo.h
avassert.h avutil/avassert: Add av_assertX_fpu() 2016-10-22 13:50:09 +02:00
avstring.c avutil/avstring: improve av_strreplace implement 2017-04-11 10:54:35 +08:00
avstring.h avutil/avstring: improve av_strreplace implement 2017-04-11 10:54:35 +08:00
avutil.h lavu: add av_fourcc_make_string() and av_fourcc2str() 2017-03-29 14:49:29 +02:00
avutilres.rc
base64.c
base64.h
blowfish.c
blowfish.h
bprint.c
bprint.h
bswap.h
buffer_internal.h Merge commit '27079a426c9d3db918b158976e44b9b143d78e1c' 2017-03-22 17:46:01 +01:00
buffer.c Merge commit '27079a426c9d3db918b158976e44b9b143d78e1c' 2017-03-22 17:46:01 +01:00
buffer.h Merge commit 'ec021d48445a414325ad59a73f9cde3212b173e4' 2017-03-18 19:22:30 +01:00
camellia.c
camellia.h
cast5.c
cast5.h
channel_layout.c avutil/channel_layout: add av_get_extended_channel_layout 2017-01-24 23:51:36 +01:00
channel_layout.h avutil/channel_layout: add av_get_extended_channel_layout 2017-01-24 23:51:36 +01:00
color_utils.c lavu: Adding ARIB STD-B67 (hybrid log-gamma) enum value and transfer function. 2016-06-01 16:32:08 +02:00
color_utils.h
colorspace.h Merge commit '1f77e634bb838f71ff21923b5e9fe3104c831c52' 2016-06-21 22:16:16 +02:00
common.h
cpu_internal.h
cpu.c avutil: fix data race in av_get_cpu_flags() 2016-12-13 00:07:20 +01:00
cpu.h Merge commit '7d7355aa92bb36ca0765c49a569a999bcb96f332' 2017-01-31 15:17:19 -03:00
crc.c
crc.h avutil: Add detailed Doxygen description to a few hashes 2016-08-02 07:48:21 -07:00
des.c Merge commit 'a6a750c7ef240b72ce01e9653343a0ddf247d196' 2016-06-22 13:44:34 +02:00
des.h
dict.c avformat: factorize iso 8601 timestamp writer to a dictionary avutil function 2016-08-17 23:45:41 +02:00
dict.h
display.c
display.h Merge commit '075acbb6ff5740b2eea1bb7dd3afbc8e66e2ebf8' 2017-04-13 17:31:15 -03:00
downmix_info.c
downmix_info.h
dynarray.h dynarray: Change AV_ to FF_ for AV_DYNARRAY_ADD 2016-07-31 10:19:03 -07:00
error.c
error.h
eval.c avutil/eval: add atan2 function 2017-01-30 11:04:31 +01:00
eval.h
ffmath.h
fifo.c libavutil/fifo: Fix fifo grow step 2016-06-03 14:49:56 +02:00
fifo.h
file_open.c lavu/file_open: Use current directory for temporary files also on Android. 2016-06-11 22:41:18 +02:00
file.c
file.h
fixed_dsp.c
fixed_dsp.h
float_dsp.c avutil/float_dsp: add vector_dmac_scalar() 2017-04-10 12:04:14 +02:00
float_dsp.h avutil/float_dsp: add vector_dmac_scalar() 2017-04-10 12:04:14 +02:00
frame.c Merge commit '52627248e49e58eb4b78e4fcda90a64f4c476ea3' 2017-05-08 13:08:02 -03:00
frame.h Merge commit '52627248e49e58eb4b78e4fcda90a64f4c476ea3' 2017-05-08 13:08:02 -03:00
hash.c
hash.h avutil/hash: Add more detailed Doxygen documentation 2016-08-02 21:49:52 -07:00
hmac.c Merge commit '00b6a765430e5c5cacf0bd1be8b318d631cd4e14' 2017-05-05 13:27:03 +02:00
hmac.h
hwcontext_cuda_internal.h avutil/hwcontext_cuda: use dynamically loaded CUDA 2016-11-22 10:34:27 +01:00
hwcontext_cuda.c hwcontext_cuda: implement frames_get_constraints 2017-01-23 16:21:18 +01:00
hwcontext_cuda.h avutil/hwcontext_cuda: use dynamically loaded CUDA 2016-11-22 10:34:27 +01:00
hwcontext_dxva2.c avutil/hwcontext_dxva2: Don't improperly free IDirect3DSurface9 objects 2017-05-16 21:45:52 +01:00
hwcontext_dxva2.h Merge commit 'c46db38cde8e8fd8ecb1c6602f10ec0e002f29a8' 2016-06-22 22:38:49 +02:00
hwcontext_internal.h videotoolbox: add hwcontext support 2017-05-15 11:30:36 +02:00
hwcontext_qsv.c Merge commit 'e8bbacbf529049c401bfeea70d5e0b5d2c8b6de6' 2017-03-30 21:54:46 +01:00
hwcontext_qsv.h Merge commit '59e7361cc791e5103be1712dc59a2055f118d0da' 2016-09-28 13:30:27 -03:00
hwcontext_vaapi.c Merge commit '8ad9f9d675eab139aa2208722009eeed981460dd' 2017-03-30 10:55:32 +02:00
hwcontext_vaapi.h hwcontext_vaapi: add a quirk for the missing MemoryType attribute 2016-11-13 20:39:49 +00:00
hwcontext_vdpau.c Merge commit '09a145b3c837273b1379321e44386a3233156e75' 2017-03-20 16:05:51 +01:00
hwcontext_vdpau.h
hwcontext_videotoolbox.c videotoolbox: add hwcontext support 2017-05-15 11:30:36 +02:00
hwcontext_videotoolbox.h hwcontext_videotoolbox: fix fate-source 2017-05-15 18:50:04 +02:00
hwcontext.c videotoolbox: add hwcontext support 2017-05-15 11:30:36 +02:00
hwcontext.h videotoolbox: add hwcontext support 2017-05-15 11:30:36 +02:00
imgutils_internal.h Merge commit 'd7bc52bf456deba0f32d9fe5c288ec441f1ebef5' 2017-03-20 08:34:10 +01:00
imgutils.c Merge commit 'd7bc52bf456deba0f32d9fe5c288ec441f1ebef5' 2017-03-20 08:34:10 +01:00
imgutils.h Merge commit 'a1d9de304fe63614e3aa8117fef17491fa80093d' 2017-04-03 20:41:16 +02:00
integer.c
integer.h
internal.h avutil/internal: Do not enable CHECKED with DEBUG 2017-04-11 01:05:05 +02:00
intfloat.h
intmath.c
intmath.h
intreadwrite.h Merge commit 'f79d847400d218cfd0b95f10358fe6e65ec3c9c4' 2017-03-15 21:20:44 -03:00
lfg.c libavutil: add av_lfg_init_from_data() function 2017-01-22 02:28:53 +01:00
lfg.h libavutil: add av_lfg_init_from_data() function 2017-01-22 02:28:53 +01:00
libavutil.v build: Change structure of the linker version script templates 2016-05-29 16:43:11 +02:00
libm.h
lls.c
lls.h
log2_tab.c
log.c Fix all -Wformat warnings raised by DJGPP 2017-03-29 14:49:29 +02:00
log.h lavu: remove comma at final enumeration items to fix pedantic warnings 2016-10-26 19:36:09 +02:00
lzo.c avutil/lzo: split test out into a separate file 2016-05-13 22:48:56 -03:00
lzo.h
macros.h
Makefile videotoolbox: add hwcontext support 2017-05-15 11:30:36 +02:00
mastering_display_metadata.c lavu: add support for Content Light Level side metadata 2017-04-06 11:26:25 -03:00
mastering_display_metadata.h lavu: add support for Content Light Level side metadata 2017-04-06 11:26:25 -03:00
mathematics.c lavu/mathematics: split closing bracket out of ifdefery 2017-03-18 23:50:05 +01:00
mathematics.h mathematics: Extend and edit Doxygen 2016-08-02 21:53:34 -07:00
md5.c Merge commit 'e435beb1ea5380a90774dbf51fdc8c941e486551' 2017-05-05 13:04:38 +02:00
md5.h Merge commit 'e435beb1ea5380a90774dbf51fdc8c941e486551' 2017-05-05 13:04:38 +02:00
mem_internal.h
mem.c Merge commit '4fb311c804098d78e5ce5f527f9a9c37536d3a08' 2017-03-20 08:54:44 +01:00
mem.h lavu/mem: clamp alignment to 16 for DJGPP 2017-03-29 14:49:29 +02:00
motion_vector.h
murmur3.c
murmur3.h murmur3: Add Doxygen documentation 2016-08-02 07:50:44 -07:00
opencl_internal.c
opencl_internal.h
opencl.c libavutil/opencl: fixed uninitialized var warning 2016-05-23 11:28:03 +02:00
opencl.h
opt.c Merge commit '67351924fa91dea4339109100a4c0689f006581f' 2017-03-30 10:26:29 +02:00
opt.h avutil/opt: Add AV_OPT_TYPE_UINT64 2016-11-23 02:01:05 +01:00
parseutils.c add locale month names to av_small_strptime 2017-02-26 17:16:22 +01:00
parseutils.h
pca.c
pca.h
pixdesc.c Merge commit '17dac56b8fdd80c594c39b76de3f27a7949afbde' 2017-03-31 09:46:51 +02:00
pixdesc.h lavu: add AV_PIX_FMT_FLAG_BAYER 2017-03-20 08:02:30 +01:00
pixelutils.c
pixelutils.h
pixfmt.h Merge commit '706af9227b58657c73e3a4df3689da734f010500' 2017-04-08 14:50:12 +02:00
qsort.h
random_seed.c libavutil/random_seed: Ensure that get_generic_seed() spends at least 1/32 sec gathering entropy 2016-12-31 17:20:06 +01:00
random_seed.h
rational.c
rational.h rational: Extend Doxygen 2016-08-02 21:52:40 -07:00
rc4.c
rc4.h
replaygain.h
reverse.c
reverse.h avutil/reverse: move the ff_reverse declaration to a separate header 2017-01-12 19:59:37 -03:00
ripemd.c
ripemd.h avutil: Group hash functions separately in Doxygen 2016-08-02 07:48:08 -07:00
samplefmt.c swresample: add int64 sample format 2016-08-18 15:30:05 +02:00
samplefmt.h swresample: add int64 sample format 2016-08-18 15:30:05 +02:00
sha512.c lavu/sha512: update length argument following sha+md5 changes 2017-05-05 13:24:35 +02:00
sha512.h lavu/sha512: update length argument following sha+md5 changes 2017-05-05 13:24:35 +02:00
sha.c Merge commit 'e435beb1ea5380a90774dbf51fdc8c941e486551' 2017-05-05 13:04:38 +02:00
sha.h Merge commit 'e435beb1ea5380a90774dbf51fdc8c941e486551' 2017-05-05 13:04:38 +02:00
softfloat_ieee754.h avutil/softfloat_ieee754: make all functions inline 2016-11-05 17:53:26 -03:00
softfloat_tables.h
softfloat.h avutil/softfloat: Fix overflow in av_div_sf() 2017-05-06 23:23:39 +02:00
spherical.c avutil/spherical: add av_spherical_projection_name() 2017-03-31 13:26:56 -03:00
spherical.h avutil/spherical: add av_spherical_projection_name() 2017-03-31 13:26:56 -03:00
stereo3d.c Merge commit '0c4468dc185fa8b9e7d6add914595c5e928b24fd' 2016-06-23 12:38:51 +02:00
stereo3d.h Merge commit '075acbb6ff5740b2eea1bb7dd3afbc8e66e2ebf8' 2017-04-13 17:31:15 -03:00
tablegen.h
tea.c
tea.h
thread.h libavutil/thread.h: Fixed g++ build error when ASSERT_LEVEL is greater than 1 2017-04-22 23:32:41 +02:00
threadmessage.c
threadmessage.h avutil/threadmessage.h: Fix swapped comments 2016-06-16 23:54:51 +02:00
time_internal.h
time.c avutil/tile: check clock_gettime at runtime for apple platforms 2017-01-09 11:52:06 +08:00
time.h
timecode.c Fix all -Wformat warnings raised by DJGPP 2017-03-29 14:49:29 +02:00
timecode.h lavu/timecode: Increase AV_TIMECODE_STR_SIZE. 2017-05-05 10:09:12 +02:00
timer.h
timestamp.h lavu/timestamp: Avoid C++-unfriendly code in user header 2016-09-01 20:01:28 +01:00
tree.c
tree.h doc: fix spelling errors 2016-10-21 23:58:47 +02:00
twofish.c
twofish.h
utils.c lavu: add av_fourcc_make_string() and av_fourcc2str() 2017-03-29 14:49:29 +02:00
version.h videotoolbox: add hwcontext support 2017-05-15 11:30:36 +02:00
wchar_filename.h
xga_font_data.c
xga_font_data.h
xtea.c
xtea.h