transcode/audio: memory-leaks in transcode_audio_process
If transcode_audio_initialize_encoder
or transcode_audio_initialize_filters
fails within modules/stream_out/transcode/audio.c
it will leak some of its owned resources.
The leak report that follows is related to transcode_audio_initialize_encoders
, but the behavior is the same for both mentioned functions.
leak report
Direct leak of 280 byte(s) in 1 object(s) allocated from:
[#0](https://code.videolan.org/videolan/vlc/-/issues/0) 0x7fbca6d75e60 in __interceptor_malloc /build/gcc/src/gcc/libsanitizer/asan/asan_malloc_linux.cc:62
[#1](https://code.videolan.org/videolan/vlc/-/issues/1) 0x7fbca673746d in block_Alloc /home/refp/work/videolan/vlc/git/src/misc/block.c:135
[#2](https://code.videolan.org/videolan/vlc/-/issues/2) 0x7fbc84a6c3d0 in GetSoutBuffer /home/refp/work/videolan/vlc/git/modules/codec/mpeg_audio.c:591
[#3](https://code.videolan.org/videolan/vlc/-/issues/3) 0x7fbc84a6c3d0 in GetOutBuffer /home/refp/work/videolan/vlc/git/modules/codec/mpeg_audio.c:550
[#4](https://code.videolan.org/videolan/vlc/-/issues/4) 0x7fbc84a6c3d0 in DecodeBlock /home/refp/work/videolan/vlc/git/modules/codec/mpeg_audio.c:463
[#5](https://code.videolan.org/videolan/vlc/-/issues/5) 0x7fbc8e46933d in Parse /home/refp/work/videolan/vlc/git/modules/demux/mpeg/es.c:509
[#6](https://code.videolan.org/videolan/vlc/-/issues/6) 0x7fbc8e46a110 in OpenCommon /home/refp/work/videolan/vlc/git/modules/demux/mpeg/es.c:267
[#7](https://code.videolan.org/videolan/vlc/-/issues/7) 0x7fbc8e46a3fd in OpenAudio /home/refp/work/videolan/vlc/git/modules/demux/mpeg/es.c:282
[#8](https://code.videolan.org/videolan/vlc/-/issues/8) 0x7fbca663ecf9 in module_load /home/refp/work/videolan/vlc/git/src/modules/modules.c:185
[#9](https://code.videolan.org/videolan/vlc/-/issues/9) 0x7fbca663f72d in vlc_module_load /home/refp/work/videolan/vlc/git/src/modules/modules.c:277
[#10](https://code.videolan.org/videolan/vlc/-/issues/10) 0x7fbca6698b3f in demux_NewAdvanced /home/refp/work/videolan/vlc/git/src/input/demux.c:259
[#11](https://code.videolan.org/videolan/vlc/-/issues/11) 0x7fbca669964d in input_DemuxNew /home/refp/work/videolan/vlc/git/src/input/demux.c:361
[#12](https://code.videolan.org/videolan/vlc/-/issues/12) 0x7fbca66c67ac in InputSourceNew /home/refp/work/videolan/vlc/git/src/input/input.c:2288
[#13](https://code.videolan.org/videolan/vlc/-/issues/13) 0x7fbca66ce6b3 in Init /home/refp/work/videolan/vlc/git/src/input/input.c:1293
[#14](https://code.videolan.org/videolan/vlc/-/issues/14) 0x7fbca66d2ff6 in Run /home/refp/work/videolan/vlc/git/src/input/input.c:487
[#15](https://code.videolan.org/videolan/vlc/-/issues/15) 0x7fbca5a0b453 in start_thread (/usr/lib/libpthread.so.0+0x7453)
[#16](https://code.videolan.org/videolan/vlc/-/issues/16) 0x7fbca574e7de in __GI___clone (/usr/lib/libc.so.6+0xe87de)
Direct leak of 1229 byte(s) in 1 object(s) allocated from:
[#0](https://code.videolan.org/videolan/vlc/-/issues/0) 0x7fbca6d75e60 in __interceptor_malloc /build/gcc/src/gcc/libsanitizer/asan/asan_malloc_linux.cc:62
[#1](https://code.videolan.org/videolan/vlc/-/issues/1) 0x7fbca673746d in block_Alloc /home/refp/work/videolan/vlc/git/src/misc/block.c:135
[#2](https://code.videolan.org/videolan/vlc/-/issues/2) 0x7fbca66910eb in decoder_NewAudioBuffer /home/refp/work/videolan/vlc/git/src/input/decoder.c:602
[#3](https://code.videolan.org/videolan/vlc/-/issues/3) 0x7fbc84a6b065 in GetAoutBuffer /home/refp/work/videolan/vlc/git/modules/codec/mpeg_audio.c:566
[#4](https://code.videolan.org/videolan/vlc/-/issues/4) 0x7fbc84a6b065 in GetOutBuffer /home/refp/work/videolan/vlc/git/modules/codec/mpeg_audio.c:543
[#5](https://code.videolan.org/videolan/vlc/-/issues/5) 0x7fbc84a6b065 in DecodeBlock /home/refp/work/videolan/vlc/git/modules/codec/mpeg_audio.c:463
[#6](https://code.videolan.org/videolan/vlc/-/issues/6) 0x7fbc834696d4 in transcode_audio_process /home/refp/work/videolan/vlc/git/modules/stream_out/transcode/audio.c:222
[#7](https://code.videolan.org/videolan/vlc/-/issues/7) 0x7fbc8346232e in Send /home/refp/work/videolan/vlc/git/modules/stream_out/transcode/transcode.c:652
[#8](https://code.videolan.org/videolan/vlc/-/issues/8) 0x7fbca677f558 in sout_InputSendBuffer /home/refp/work/videolan/vlc/git/src/stream_output/stream_output.c:251
[#9](https://code.videolan.org/videolan/vlc/-/issues/9) 0x7fbca6693131 in DecoderPlaySout /home/refp/work/videolan/vlc/git/src/input/decoder.c:782
[#10](https://code.videolan.org/videolan/vlc/-/issues/10) 0x7fbca6693131 in DecoderProcessSout /home/refp/work/videolan/vlc/git/src/input/decoder.c:834
[#11](https://code.videolan.org/videolan/vlc/-/issues/11) 0x7fbca6693131 in DecoderProcess /home/refp/work/videolan/vlc/git/src/input/decoder.c:1431
[#12](https://code.videolan.org/videolan/vlc/-/issues/12) 0x7fbca6693131 in DecoderThread /home/refp/work/videolan/vlc/git/src/input/decoder.c:1588
[#13](https://code.videolan.org/videolan/vlc/-/issues/13) 0x7fbca5a0b453 in start_thread (/usr/lib/libpthread.so.0+0x7453)
[#14](https://code.videolan.org/videolan/vlc/-/issues/14) 0x7fbca574e7de in __GI___clone (/usr/lib/libc.so.6+0xe87de)