[FFmpeg-trac] #2364(avformat:new): matroska_read_header() leaks memory on failure

FFmpeg trac at avcodec.org
Thu Mar 14 22:05:22 CET 2013


#2364: matroska_read_header() leaks memory on failure
-------------------------------------+-------------------------------------
             Reporter:  wolenetz     |                     Type:  defect
               Status:  new          |                 Priority:  normal
            Component:  avformat     |                  Version:  git-
             Keywords:  matroska     |  master
  leak                               |               Blocked By:
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
 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.

-- 
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/2364>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list