Commits on Source (2)
-
By using the new `vlc_encoder_Delete` call that closes the module properly. Caught with asan: Direct leak of 104 byte(s) in 1 object(s) allocated from: #0 0x7ff80d66891f in __interceptor_malloc (/lib64/libasan.so.6+0xae91f) #1 0x7ff7f75daa14 in OpenEncoder ../../modules/codec/flac.c:809 #2 0x7ff80c8a946f in generic_start ../../src/modules/modules.c:275 #3 0x7ff80c8a9083 in vlc_module_load ../../src/modules/modules.c:243 #4 0x7ff80c8a95a5 in module_need ../../src/modules/modules.c:286 #5 0x7ff800fce802 in transcode_encoder_audio_test ../../modules/stream_out/transcode/encoder/audio.c:175 #6 0x7ff800fcb583 in transcode_encoder_test ../../modules/stream_out/transcode/encoder/encoder.c:246 #7 0x7ff800fe0484 in transcode_audio_init ../../modules/stream_out/transcode/audio.c:168 #8 0x7ff800fc6995 in Add ../../modules/stream_out/transcode/transcode.c:631 #9 0x7ff80cc3fe5a in sout_StreamIdAdd ../../src/stream_output/stream_output.c:699 #10 0x7ff80cc39913 in sout_InputNew ../../src/stream_output/stream_output.c:134 #11 0x7ff80c9405a5 in DecoderThread_ProcessSout ../../src/input/decoder.c:1006 #12 0x7ff80c94685d in DecoderThread_ProcessInput ../../src/input/decoder.c:1518 #13 0x7ff80c95142d in vlc_input_decoder_Decode ../../src/input/decoder.c:2295 #14 0x7ff80c995b52 in EsOutSend ../../src/input/es_out.c:3017 #15 0x7ff80c9ad499 in es_out_Send ../../include/vlc_es_out.h:161 #16 0x7ff80c9beca6 in CmdExecuteSend ../../src/input/es_out_timeshift.c:1484 #17 0x7ff80c9af854 in Send ../../src/input/es_out_timeshift.c:486 #18 0x7ff7ffd8eab2 in es_out_Send ../../include/vlc_es_out.h:161 #19 0x7ff7ffd9db18 in Demux ../../modules/demux/mpeg/es.c:400 #20 0x7ff80c960edd in demux_Demux ../../src/input/demux.c:212 #21 0x7ff80c9d0abb in MainLoopDemux ../../src/input/input.c:498 #22 0x7ff80c9d30a6 in MainLoop ../../src/input/input.c:645 #23 0x7ff80c9d024b in Run ../../src/input/input.c:428 #24 0x7ff80b66b821 in start_thread (/lib64/libc.so.6+0x9f821)
4c530717 -
Instead of cleaning the encoder manually. This fixes some memory leaks due to the `close()` module callback being forgotten here.
fe54d2eb