Opened 12 years ago
Closed 12 years ago
#2364 closed defect (invalid)
matroska_read_header() leaks memory on failure
Reported by: | Matt Wolenetz | Owned by: | |
---|---|---|---|
Priority: | normal | Component: | avformat |
Version: | git-master | Keywords: | mkv leak |
Cc: | Dale Curtis, Ronald S. Bultje | Blocked By: | |
Blocking: | Reproduced by developer: | no | |
Analyzed by developer: | no |
Description
matroska_read_header() leaks memory in two places on failure:
57 bytes in 1 blocks are definitely lost in loss record 4 of 12
at 0x4C2B292: posix_memalign (vg_replace_malloc.c:878)
by 0x61D350: av_malloc (mem.c:93)
by 0x61D467: av_mallocz (mem.c:203)
by 0x53AACC: ff_fast_malloc (utils.c:87)
by 0x53AD89: av_fast_padded_malloc (utils.c:107)
by 0x452A92: ebml_read_binary (matroskadec.c:786)
by 0x453BBE: ebml_parse_elem (matroskadec.c:963)
by 0x453D6B: ebml_parse_id (matroskadec.c:874)
by 0x4538F3: ebml_parse (matroskadec.c:887)
by 0x4539A9: ebml_parse_nest (matroskadec.c:910)
by 0x453BA2: ebml_parse_elem (matroskadec.c:968)
by 0x453D6B: ebml_parse_id (matroskadec.c:874)
by 0x4538F3: ebml_parse (matroskadec.c:887)
by 0x4539A9: ebml_parse_nest (matroskadec.c:910)
by 0x453BA2: ebml_parse_elem (matroskadec.c:968)
by 0x453D6B: ebml_parse_id (matroskadec.c:874)
by 0x4538F3: ebml_parse (matroskadec.c:887)
by 0x45465C: matroska_read_header (matroskadec.c:1514)
by 0x46ED6E: avformat_open_input (utils.c:626)
by 0x42CB26: open_input_file (ffmpeg_opt.c:769)
by 0x42A33D: open_files.isra.1 (ffmpeg_opt.c:2304)
by 0x42EA75: ffmpeg_parse_options (ffmpeg_opt.c:2341)
by 0x4272E5: main (ffmpeg.c:3299)
and:
969 (704 direct, 265 indirect) bytes in 2 blocks are definitely lost in loss record 10 of 12
at 0x4C2EEE2: realloc (vg_replace_malloc.c:661)
by 0x61D395: av_realloc (mem.c:160)
by 0x453B04: ebml_parse_elem (matroskadec.c:937)
by 0x453D6B: ebml_parse_id (matroskadec.c:874)
by 0x4538F3: ebml_parse (matroskadec.c:887)
by 0x4539A9: ebml_parse_nest (matroskadec.c:910)
by 0x453BA2: ebml_parse_elem (matroskadec.c:968)
by 0x453D6B: ebml_parse_id (matroskadec.c:874)
by 0x4538F3: ebml_parse (matroskadec.c:887)
by 0x4539A9: ebml_parse_nest (matroskadec.c:910)
by 0x453BA2: ebml_parse_elem (matroskadec.c:968)
by 0x453D6B: ebml_parse_id (matroskadec.c:874)
by 0x4538F3: ebml_parse (matroskadec.c:887)
by 0x45465C: matroska_read_header (matroskadec.c:1514)
by 0x46ED6E: avformat_open_input (utils.c:626)
by 0x42CB26: open_input_file (ffmpeg_opt.c:769)
by 0x42A33D: open_files.isra.1 (ffmpeg_opt.c:2304)
by 0x42EA75: ffmpeg_parse_options (ffmpeg_opt.c:2341)
by 0x4272E5: main (ffmpeg.c:3299)
Found via valgrind + the attached case.
Attachments (1)
Change History (4)
by , 12 years ago
Attachment: | 110849.mkv added |
---|
comment:1 by , 12 years ago
Keywords: | mkv added; matroska removed |
---|
comment:2 by , 12 years ago
I had a repro, but it is apparently introduced in my local merge and does not repro when I take a fresh clone of ffmpeg. This likely is not a current bug in ffmpeg.
comment:3 by , 12 years ago
Resolution: | → invalid |
---|---|
Status: | new → closed |
Thank you for the clarification!
Please provide the command line that produces the memleak together with the complete, uncut console output. (I cannot reproduce the problem here.)