Opened 11 years ago

Closed 11 years ago

#2728 closed defect (fixed)

smk crash with low mem

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

Description

http://www1.datafilehost.com/d/e142793a

C:\>ffmpeg -max_alloc 79300 -i test.smk -an -f null -
ffmpeg version N-54249-gfc736a9 Copyright (c) 2000-2013 the FFmpeg developers
  built on Jun 29 2013 02:23:07 with gcc 4.5.0 (GCC) 20100414 (Fedora MinGW 4.5.
0-1.fc14)
  configuration: --prefix=/var/www/users/research/ffmpeg/snapshots/build --arch=
x86 --target-os=mingw32 --cross-prefix=i686-pc-mingw32- --cc='ccache i686-pc-min
gw32-gcc' --enable-w32threads --enable-memalign-hack --enable-runtime-cpudetect
--enable-cross-compile --enable-static --disable-shared --extra-libs='-lws2_32 -
lwinmm -lpthread' --extra-cflags='--static -I/var/www/users/research/ffmpeg/snap
shots/build/include' --extra-ldflags='-static -L/var/www/users/research/ffmpeg/s
napshots/build/lib' --enable-bzlib --enable-zlib --enable-gpl --enable-version3
--enable-nonfree --enable-libx264 --enable-libspeex --enable-libtheora --enable-
libvorbis --enable-libfaac --enable-libxvid --enable-libopencore-amrnb --enable-
libopencore-amrwb --enable-libmp3lame --enable-libvpx --disable-decoder=libvpx
  libavutil      52. 37.101 / 52. 37.101
  libavcodec     55. 17.100 / 55. 17.100
  libavformat    55. 10.100 / 55. 10.100
  libavdevice    55.  2.100 / 55.  2.100
  libavfilter     3. 77.101 /  3. 77.101
  libswscale      2.  3.100 /  2.  3.100
  libswresample   0. 17.102 /  0. 17.102
  libpostproc    52.  3.100 / 52.  3.100

Change History (2)

comment:1 by Carl Eugen Hoyos, 11 years ago

Component: undeterminedavcodec
Keywords: crash SIGSEGV smacker added
Priority: normalimportant
Reproduced by developer: set
Status: newopen
Version: unspecifiedgit-master

Patch sent.

(gdb) r -max_alloc 80000 -i test.smk
Starting program: ffmpeg_g -max_alloc 80000 -i test.smk
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
ffmpeg version N-54249-gfc736a9 Copyright (c) 2000-2013 the FFmpeg developers
  built on Jun 29 2013 12:22:00 with gcc 4.7 (SUSE Linux)
  configuration:
  libavutil      52. 37.101 / 52. 37.101
  libavcodec     55. 17.100 / 55. 17.100
  libavformat    55. 10.100 / 55. 10.100
  libavdevice    55.  2.100 / 55.  2.100
  libavfilter     3. 77.101 /  3. 77.101
  libswscale      2.  3.100 /  2.  3.100
  libswresample   0. 17.102 /  0. 17.102

Program received signal SIGSEGV, Segmentation fault.
0x0000000000941a6d in smacker_decode_bigtree (gb=gb@entry=0x7fffffffcec0,
    hc=hc@entry=0x7fffffffcd80, ctx=ctx@entry=0x7fffffffce40) at libavcodec/smacker.c:158
158             hc->values[hc->current++] = val;
(gdb) bt
#0  0x0000000000941a6d in smacker_decode_bigtree (gb=gb@entry=0x7fffffffcec0,
    hc=hc@entry=0x7fffffffcd80, ctx=ctx@entry=0x7fffffffce40) at libavcodec/smacker.c:158
#1  0x0000000000941ab3 in smacker_decode_bigtree (gb=gb@entry=0x7fffffffcec0,
    hc=hc@entry=0x7fffffffcd80, ctx=ctx@entry=0x7fffffffce40) at libavcodec/smacker.c:164
#2  0x0000000000941ab3 in smacker_decode_bigtree (gb=gb@entry=0x7fffffffcec0,
    hc=hc@entry=0x7fffffffcd80, ctx=ctx@entry=0x7fffffffce40) at libavcodec/smacker.c:164
#3  0x0000000000941ab3 in smacker_decode_bigtree (gb=gb@entry=0x7fffffffcec0,
    hc=hc@entry=0x7fffffffcd80, ctx=ctx@entry=0x7fffffffce40) at libavcodec/smacker.c:164
#4  0x0000000000941ab3 in smacker_decode_bigtree (gb=gb@entry=0x7fffffffcec0,
    hc=hc@entry=0x7fffffffcd80, ctx=ctx@entry=0x7fffffffce40) at libavcodec/smacker.c:164
#5  0x0000000000941ab3 in smacker_decode_bigtree (gb=gb@entry=0x7fffffffcec0,
    hc=hc@entry=0x7fffffffcd80, ctx=ctx@entry=0x7fffffffce40) at libavcodec/smacker.c:164
#6  0x0000000000941ab3 in smacker_decode_bigtree (gb=gb@entry=0x7fffffffcec0,
    hc=hc@entry=0x7fffffffcd80, ctx=ctx@entry=0x7fffffffce40) at libavcodec/smacker.c:164
#7  0x0000000000941ab3 in smacker_decode_bigtree (gb=gb@entry=0x7fffffffcec0,
    hc=hc@entry=0x7fffffffcd80, ctx=ctx@entry=0x7fffffffce40) at libavcodec/smacker.c:164
#8  0x00000000004357fd in smacker_decode_header_tree (gb=gb@entry=0x7fffffffcec0,
    recodes=recodes@entry=0x164b090, last=last@entry=0x164b0b0, size=<optimized out>,
    smk=0x164ae20) at libavcodec/smacker.c:265
#9  0x0000000000435a46 in decode_header_trees (smk=0x164ae20) at libavcodec/smacker.c:310
#10 decode_init (avctx=<optimized out>) at libavcodec/smacker.c:543
#11 0x000000000099cb12 in avcodec_open2 (avctx=0x16245a0, codec=<optimized out>,
    codec@entry=0x10251a0 <ff_smacker_decoder>, options=options@entry=0x1623640)
    at libavcodec/utils.c:1309
#12 0x000000000058f1d8 in try_decode_frame (st=st@entry=0x1624240,
    avpkt=avpkt@entry=0x162b4e0, options=0x1623640) at libavformat/utils.c:2422
#13 0x0000000000596c90 in avformat_find_stream_info (ic=0x1623060, options=0x1623640)
    at libavformat/utils.c:2880
#14 0x0000000000462289 in open_input_file (o=o@entry=0x7fffffffd750, filename=<optimized out>)
    at ffmpeg_opt.c:814
#15 0x000000000045cd82 in open_files (inout=<optimized out>, inout@entry=0xc08adf "input",
    open_file=open_file@entry=0x461ee0 <open_input_file>, l=<optimized out>,
    l=<optimized out>) at ffmpeg_opt.c:2483
#16 0x0000000000463619 in ffmpeg_parse_options (argc=argc@entry=5,
    argv=argv@entry=0x7fffffffdde8) at ffmpeg_opt.c:2520
#17 0x000000000045a8c8 in main (argc=5, argv=0x7fffffffdde8) at ffmpeg.c:3368
(gdb) print hc->values
$1 = (int *) 0x0

comment:2 by Carl Eugen Hoyos, 11 years ago

Resolution: fixed
Status: openclosed

Should be fixed, thank you for the report!

Note: See TracTickets for help on using tickets.