[oss-fuzz 42538556] Direct-leak in vlc_css_declaration_New
Ref:
xeon ~/work/git/vlc/build-asan $ ./test/vlc-demux-dec-run /home/tom/Downloads/clusterfuzz-testcase-minimized-vlc-demux-dec-libfuzzer-6459576713543680
=================================================================
==2923674==ERROR: LeakSanitizer: detected memory leaks
Direct leak of 24 byte(s) in 1 object(s) allocated from:
#0 0x7fb8bf4f4630 in calloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:77
#1 0x7fb8b90610db in vlc_css_declaration_New ../../modules/codec/webvtt/css_parser.c:152
#2 0x7fb8b9059626 in cssparse ../../modules/codec/webvtt/CSSGrammar.y:580
#3 0x7fb8b90615c6 in vlc_css_parser_ParseBytes ../../modules/codec/webvtt/css_parser.c:264
#4 0x7fb8b904e264 in ParserHeaderHandler ../../modules/codec/webvtt/subsvtt.c:2034
#5 0x7fb8b904e65a in LoadExtradata ../../modules/codec/webvtt/subsvtt.c:2102
#6 0x7fb8b904e903 in webvtt_OpenDecoder ../../modules/codec/webvtt/subsvtt.c:2189
#7 0x7fb8bf0d6b4f in generic_start ../../src/modules/modules.c:261
#8 0x7fb8bf0d7531 in vlc_module_load ../../src/modules/modules.c:230
#9 0x7fb8bf0d77d6 in module_need ../../src/modules/modules.c:272
#10 0x55e55e705cdd in decoder_load ../../test/src/input/decoder.c:115
#11 0x55e55e705f8f in test_decoder_create ../../test/src/input/decoder.c:205
#12 0x55e55e704c3c in EsOutAdd ../../test/src/input/demux-run.c:86
#13 0x7fb8b90539eb in es_out_Add ../../include/vlc_es_out.h:144
#14 0x7fb8b90539eb in webvtt_OpenDemux ../../modules/demux/webvtt.c:667
#15 0x7fb8bf118aec in demux_Probe ../../src/input/demux.c:112
#16 0x7fb8bf0d7531 in vlc_module_load ../../src/modules/modules.c:230
#17 0x7fb8bf11989b in demux_NewAdvanced ../../src/input/demux.c:196
#18 0x7fb8bf119baa in demux_New ../../src/input/demux.c:77
#19 0x55e55e7052fb in demux_process_stream ../../test/src/input/demux-run.c:294
#20 0x55e55e705668 in vlc_demux_process_url ../../test/src/input/demux-run.c:348
#21 0x55e55e705707 in vlc_demux_process_path ../../test/src/input/demux-run.c:362
#22 0x55e55e704559 in main ../../test/vlc-demux-run.c:50
#23 0x7fb8becf6d67 in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58
Indirect leak of 40 byte(s) in 1 object(s) allocated from:
#0 0x7fb8bf4f3b78 in realloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:85
#1 0x7fb8b9060b98 in vlc_css_expression_AddTerm ../../modules/codec/webvtt/css_parser.c:76
#2 0x7fb8b9060f9f in vlc_css_expression_New ../../modules/codec/webvtt/css_parser.c:117
#3 0x7fb8b9059935 in cssparse ../../modules/codec/webvtt/CSSGrammar.y:646
#4 0x7fb8b90615c6 in vlc_css_parser_ParseBytes ../../modules/codec/webvtt/css_parser.c:264
#5 0x7fb8b904e264 in ParserHeaderHandler ../../modules/codec/webvtt/subsvtt.c:2034
#6 0x7fb8b904e65a in LoadExtradata ../../modules/codec/webvtt/subsvtt.c:2102
#7 0x7fb8b904e903 in webvtt_OpenDecoder ../../modules/codec/webvtt/subsvtt.c:2189
#8 0x7fb8bf0d6b4f in generic_start ../../src/modules/modules.c:261
#9 0x7fb8bf0d7531 in vlc_module_load ../../src/modules/modules.c:230
#10 0x7fb8bf0d77d6 in module_need ../../src/modules/modules.c:272
#11 0x55e55e705cdd in decoder_load ../../test/src/input/decoder.c:115
#12 0x55e55e705f8f in test_decoder_create ../../test/src/input/decoder.c:205
#13 0x55e55e704c3c in EsOutAdd ../../test/src/input/demux-run.c:86
#14 0x7fb8b90539eb in es_out_Add ../../include/vlc_es_out.h:144
#15 0x7fb8b90539eb in webvtt_OpenDemux ../../modules/demux/webvtt.c:667
#16 0x7fb8bf118aec in demux_Probe ../../src/input/demux.c:112
#17 0x7fb8bf0d7531 in vlc_module_load ../../src/modules/modules.c:230
#18 0x7fb8bf11989b in demux_NewAdvanced ../../src/input/demux.c:196
#19 0x7fb8bf119baa in demux_New ../../src/input/demux.c:77
#20 0x55e55e7052fb in demux_process_stream ../../test/src/input/demux-run.c:294
#21 0x55e55e705668 in vlc_demux_process_url ../../test/src/input/demux-run.c:348
#22 0x55e55e705707 in vlc_demux_process_path ../../test/src/input/demux-run.c:362
#23 0x55e55e704559 in main ../../test/vlc-demux-run.c:50
#24 0x7fb8becf6d67 in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58
Indirect leak of 24 byte(s) in 1 object(s) allocated from:
#0 0x7fb8bf4f4630 in calloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:77
#1 0x7fb8b9060f78 in vlc_css_expression_New ../../modules/codec/webvtt/css_parser.c:116
#2 0x7fb8b9059935 in cssparse ../../modules/codec/webvtt/CSSGrammar.y:646
#3 0x7fb8b90615c6 in vlc_css_parser_ParseBytes ../../modules/codec/webvtt/css_parser.c:264
#4 0x7fb8b904e264 in ParserHeaderHandler ../../modules/codec/webvtt/subsvtt.c:2034
#5 0x7fb8b904e65a in LoadExtradata ../../modules/codec/webvtt/subsvtt.c:2102
#6 0x7fb8b904e903 in webvtt_OpenDecoder ../../modules/codec/webvtt/subsvtt.c:2189
#7 0x7fb8bf0d6b4f in generic_start ../../src/modules/modules.c:261
#8 0x7fb8bf0d7531 in vlc_module_load ../../src/modules/modules.c:230
#9 0x7fb8bf0d77d6 in module_need ../../src/modules/modules.c:272
#10 0x55e55e705cdd in decoder_load ../../test/src/input/decoder.c:115
#11 0x55e55e705f8f in test_decoder_create ../../test/src/input/decoder.c:205
#12 0x55e55e704c3c in EsOutAdd ../../test/src/input/demux-run.c:86
#13 0x7fb8b90539eb in es_out_Add ../../include/vlc_es_out.h:144
#14 0x7fb8b90539eb in webvtt_OpenDemux ../../modules/demux/webvtt.c:667
#15 0x7fb8bf118aec in demux_Probe ../../src/input/demux.c:112
#16 0x7fb8bf0d7531 in vlc_module_load ../../src/modules/modules.c:230
#17 0x7fb8bf11989b in demux_NewAdvanced ../../src/input/demux.c:196
#18 0x7fb8bf119baa in demux_New ../../src/input/demux.c:77
#19 0x55e55e7052fb in demux_process_stream ../../test/src/input/demux-run.c:294
#20 0x55e55e705668 in vlc_demux_process_url ../../test/src/input/demux-run.c:348
#21 0x55e55e705707 in vlc_demux_process_path ../../test/src/input/demux-run.c:362
#22 0x55e55e704559 in main ../../test/vlc-demux-run.c:50
#23 0x7fb8becf6d67 in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58
Indirect leak of 2 byte(s) in 1 object(s) allocated from:
#0 0x7fb8bf4eed80 in strdup ../../../../src/libsanitizer/asan/asan_interceptors.cpp:578
#1 0x7fb8b90610e6 in vlc_css_declaration_New ../../modules/codec/webvtt/css_parser.c:153
#2 0x7fb8b9059626 in cssparse ../../modules/codec/webvtt/CSSGrammar.y:580
#3 0x7fb8b90615c6 in vlc_css_parser_ParseBytes ../../modules/codec/webvtt/css_parser.c:264
#4 0x7fb8b904e264 in ParserHeaderHandler ../../modules/codec/webvtt/subsvtt.c:2034
#5 0x7fb8b904e65a in LoadExtradata ../../modules/codec/webvtt/subsvtt.c:2102
#6 0x7fb8b904e903 in webvtt_OpenDecoder ../../modules/codec/webvtt/subsvtt.c:2189
#7 0x7fb8bf0d6b4f in generic_start ../../src/modules/modules.c:261
#8 0x7fb8bf0d7531 in vlc_module_load ../../src/modules/modules.c:230
#9 0x7fb8bf0d77d6 in module_need ../../src/modules/modules.c:272
#10 0x55e55e705cdd in decoder_load ../../test/src/input/decoder.c:115
#11 0x55e55e705f8f in test_decoder_create ../../test/src/input/decoder.c:205
#12 0x55e55e704c3c in EsOutAdd ../../test/src/input/demux-run.c:86
#13 0x7fb8b90539eb in es_out_Add ../../include/vlc_es_out.h:144
#14 0x7fb8b90539eb in webvtt_OpenDemux ../../modules/demux/webvtt.c:667
#15 0x7fb8bf118aec in demux_Probe ../../src/input/demux.c:112
#16 0x7fb8bf0d7531 in vlc_module_load ../../src/modules/modules.c:230
#17 0x7fb8bf11989b in demux_NewAdvanced ../../src/input/demux.c:196
#18 0x7fb8bf119baa in demux_New ../../src/input/demux.c:77
#19 0x55e55e7052fb in demux_process_stream ../../test/src/input/demux-run.c:294
#20 0x55e55e705668 in vlc_demux_process_url ../../test/src/input/demux-run.c:348
#21 0x55e55e705707 in vlc_demux_process_path ../../test/src/input/demux-run.c:362
#22 0x55e55e704559 in main ../../test/vlc-demux-run.c:50
#23 0x7fb8becf6d67 in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58
Indirect leak of 2 byte(s) in 1 object(s) allocated from:
#0 0x7fb8bf4eed80 in strdup ../../../../src/libsanitizer/asan/asan_interceptors.cpp:578
#1 0x7fb8b9061bb1 in vlc_css_unescaped ../../modules/codec/webvtt/css_parser.c:403
#2 0x7fb8b905e3ad in csslex ../../modules/codec/webvtt/CSSLexer.l:76
#3 0x7fb8b9057aec in cssparse codec/webvtt/CSSGrammar.c:1690
#4 0x7fb8b90615c6 in vlc_css_parser_ParseBytes ../../modules/codec/webvtt/css_parser.c:264
#5 0x7fb8b904e264 in ParserHeaderHandler ../../modules/codec/webvtt/subsvtt.c:2034
#6 0x7fb8b904e65a in LoadExtradata ../../modules/codec/webvtt/subsvtt.c:2102
#7 0x7fb8b904e903 in webvtt_OpenDecoder ../../modules/codec/webvtt/subsvtt.c:2189
#8 0x7fb8bf0d6b4f in generic_start ../../src/modules/modules.c:261
#9 0x7fb8bf0d7531 in vlc_module_load ../../src/modules/modules.c:230
#10 0x7fb8bf0d77d6 in module_need ../../src/modules/modules.c:272
#11 0x55e55e705cdd in decoder_load ../../test/src/input/decoder.c:115
#12 0x55e55e705f8f in test_decoder_create ../../test/src/input/decoder.c:205
#13 0x55e55e704c3c in EsOutAdd ../../test/src/input/demux-run.c:86
#14 0x7fb8b90539eb in es_out_Add ../../include/vlc_es_out.h:144
#15 0x7fb8b90539eb in webvtt_OpenDemux ../../modules/demux/webvtt.c:667
#16 0x7fb8bf118aec in demux_Probe ../../src/input/demux.c:112
#17 0x7fb8bf0d7531 in vlc_module_load ../../src/modules/modules.c:230
#18 0x7fb8bf11989b in demux_NewAdvanced ../../src/input/demux.c:196
#19 0x7fb8bf119baa in demux_New ../../src/input/demux.c:77
#20 0x55e55e7052fb in demux_process_stream ../../test/src/input/demux-run.c:294
#21 0x55e55e705668 in vlc_demux_process_url ../../test/src/input/demux-run.c:348
#22 0x55e55e705707 in vlc_demux_process_path ../../test/src/input/demux-run.c:362
#23 0x55e55e704559 in main ../../test/vlc-demux-run.c:50
#24 0x7fb8becf6d67 in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58
SUMMARY: AddressSanitizer: 92 byte(s) leaked in 5 allocation(s).
Sample: clusterfuzz-testcase-minimized-vlc-demux-dec-libfuzzer-6459576713543680