Opened 11 years ago

Closed 11 years ago

#2766 closed defect (fixed)

bitstream: crash in low mem situation

Reported by: ami_stuff Owned by:
Priority: important Component: avcodec
Version: git-master Keywords: ralf
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

I will send a patch soon.

http://www1.datafilehost.com/d/77865ebb

knoppix@Microknoppix:/media/sdb1$ ulimit -Sv 20500 -c unlimited
knoppix@Microknoppix:/media/sdb1$ ./ffmpeg_g -i asamples/ralf.ra -f null -
ffmpeg version 1.1.git Copyright (c) 2000-2013 the FFmpeg developers
  built on Jul  9 2013 10:16:01 with gcc 4.7 (Debian 4.7.2-4)
  configuration: --disable-asm --enable-gpl --disable-ffprobe --disable-ffserver
  libavutil      52. 38.100 / 52. 38.100
  libavcodec     55. 18.102 / 55. 18.102
  libavformat    55. 11.101 / 55. 11.101
  libavdevice    55.  2.100 / 55.  2.100
  libavfilter     3. 79.100 /  3. 79.100
  libswscale      2.  3.100 /  2.  3.100
  libswresample   0. 17.102 /  0. 17.102
  libpostproc    52.  3.100 / 52.  3.100
[rm @ 0x9077c50] Invalid stream index 1 for index at pos 3341430
[rm @ 0x9077c50] Invalid stream index 2 for index at pos 3341450
Segmentation fault (core dumped)
knoppix@Microknoppix:/media/sdb1$ ulimit -Sv 205000000 -c unlimited
knoppix@Microknoppix:/media/sdb1$ gdb -c core ffmpeg_g
GNU gdb (GDB) 7.4.1-debian
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i486-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /media/sdb1/ffmpeg_g...done.
[New LWP 24210]

warning: Can't read pathname for load map: Input/output error.
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1".
Failed to read a valid object file image from memory.
Core was generated by `./ffmpeg_g -i asamples/ralf.ra -f null -'.
Program terminated with signal 11, Segmentation fault.
#0  0x0827e37e in ff_init_vlc_sparse (vlc=vlc@entry=0x9088c38, 
    nb_bits=nb_bits@entry=9, nb_codes=441, bits=0xbff950f4, bits_wrap=1, 
    bits_size=1, codes=0xbff95378, codes_wrap=2, codes_size=2, symbols=0x0, 
    symbols_wrap=0, symbols_size=0, flags=0) at libavcodec/bitstream.c:331

warning: Source file is more recent than executable.
331	    COPY(buf[j].bits > nb_bits);
(gdb) bt
#0  0x0827e37e in ff_init_vlc_sparse (vlc=vlc@entry=0x9088c38, 
    nb_bits=nb_bits@entry=9, nb_codes=441, bits=0xbff950f4, bits_wrap=1, 
    bits_size=1, codes=0xbff95378, codes_wrap=2, codes_size=2, symbols=0x0, 
    symbols_wrap=0, symbols_size=0, flags=0) at libavcodec/bitstream.c:331
#1  0x0807c819 in init_ralf_vlc (vlc=vlc@entry=0x9088c38, 
    data=<optimized out>, 
    data@entry=0x890a5c0 "\253\272\252\231\231\231\232\252\273̻̺\252\251\231\232\252\273\314ݼ\272\251\231\231\231\231\252\273\314ʺ\251\230\210\210\210\211\232\273˫\251\230\210ww\210\211\232\273\272\251\230\207wwwx\211\232\273\232\230\207wffwx\211\252\251\251\210wfffgx\232\252\231\230wffffw\211\232\251\231\207vfUVgx\211\252\231\230wfeVfw\210\232\251\231\207vfUfgx\211\252\232\230wffffw\211\232\252\251\210wfffw\210\232\252\252\231\210wwww\210\231\253\252\272\231\210www\210\211\252\273\273\252\231\210\210\210\210\231\252\273\273˪\231\231\210\211\231\252\273\313\314˺\251\231\231\231\252\273\314", <incomplete sequence \314>..., 
    elems=elems@entry=441) at libavcodec/ralf.c:102
#2  0x0807cafb in decode_init (avctx=0x90786c0) at libavcodec/ralf.c:201
#3  0x0866cb29 in avcodec_open2 (avctx=0x90786c0, codec=codec@entry=0x8a7aba0, 
    options=0x9078380) at libavcodec/utils.c:1309
#4  0x0823430d in avformat_find_stream_info (ic=0x9077c50, options=0x9078380)
    at libavformat/utils.c:2693
#5  0x080a3b85 in open_input_file (o=o@entry=0xbff95fb0, 
    filename=<optimized out>) at ffmpeg_opt.c:815
#6  0x080a23e9 in open_files (inout=<optimized out>, 
---Type <return> to continue, or q <return> to quit---
    inout@entry=0x887d25b "input", 
    open_file=open_file@entry=0x80a37a0 <open_input_file>, 
    l=<error reading variable: Unhandled dwarf expression opcode 0xfa>, 
    l=<error reading variable: Unhandled dwarf expression opcode 0xfa>)
    at ffmpeg_opt.c:2495
#7  0x080aa5f9 in ffmpeg_parse_options (argc=argc@entry=6, 
    argv=argv@entry=0xbff96434) at ffmpeg_opt.c:2532
#8  0x0809faca in main (argc=6, argv=0xbff96434) at ffmpeg.c:3367
(gdb)

Change History (1)

comment:1 by Carl Eugen Hoyos, 11 years ago

Component: undeterminedavcodec
Keywords: ralf added
Priority: normalimportant
Reproduced by developer: set
Resolution: fixed
Status: newclosed
Version: unspecifiedgit-master

Fixed by you.

Note: See TracTickets for help on using tickets.