Opened 12 years ago

Closed 12 years ago

#1629 closed defect (fixed)

escape124 possible invalid writes

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

Description

there are probably invalid writes, but i'm not 100% sure. please test with valgrid, so I will know for the future if I should report issues like this or not.

http://samples.mplayerhq.hu/V-codecs/MJPEGs/grayscale/xz.mov

C:\>ffmpeg -vcodec escape124 -i xz.mov -f null -
ffmpeg version N-43410-ga0d1502 Copyright (c) 2000-2012 the FFmpeg developers
  built on Aug 10 2012 02:39:29 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      51. 67.100 / 51. 67.100
  libavcodec     54. 51.100 / 54. 51.100
  libavformat    54. 22.104 / 54. 22.104
  libavdevice    54.  2.100 / 54.  2.100
  libavfilter     3.  7.100 /  3.  7.100
  libswscale      2.  1.101 /  2.  1.101
  libswresample   0. 15.100 /  0. 15.100
  libpostproc    52.  0.100 / 52.  0.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'xz.mov':
  Metadata:
    major_brand     : qt
    minor_version   : 537199360
    compatible_brands: qt
  Duration: 00:00:10.00, start: 0.000000, bitrate: 8795 kb/s
    Stream #0:0(eng): Video: escape124 (jpeg / 0x6765706A), rgb555le, 722x481, 8
793 kb/s, 10 fps, 10 tbr, 600 tbn, 600 tbc
    Metadata:
      handler_name    : Apple Alias Data Handler
Output #0, null, to 'pipe:':
  Metadata:
    major_brand     : qt
    minor_version   : 537199360
    compatible_brands: qt
    encoder         : Lavf54.22.104
    Stream #0:0(eng): Video: rawvideo (RGB[15] / 0xF424752), rgb555le, 722x481,
q=2-31, 200 kb/s, 90k tbn, 10 tbc
    Metadata:
      handler_name    : Apple Alias Data Handler
Stream mapping:
  Stream #0:0 -> #0:0 (escape124 -> rawvideo)
Press [q] to stop, [?] for help
Error while decoding stream #0:0: Error number -1 occurred
    Last message repeated 6 times

Change History (4)

comment:1 by Carl Eugen Hoyos, 12 years ago

Keywords: escape124 added
Status: newopen
Version: unspecifiedgit-master

I see no invalid memory access, but ~700MB get allocated which might be bad.

comment:2 by Carl Eugen Hoyos, 12 years ago

Priority: normalimportant

Allocated ~4GB in a new test, I believe this is important.

comment:3 by dbuitenh, 12 years ago

$ valgrind ./ffmpeg_g -i xz.mov -f null -
[...]
==13408== HEAP SUMMARY:
==13408== in use at exit: 0 bytes in 0 blocks
==13408== total heap usage: 3,336 allocs, 3,336 frees, 15,938,009 bytes allocated
==13408==
==13408== All heap blocks were freed -- no leaks are possible

Can you give clearer steps to reproduce, Carl? Perhaps it is windows or i386 specific?

EDIT: Woops, I forgot to force vcodec!

Last edited 12 years ago by dbuitenh (previous) (diff)

comment:4 by Michael Niedermayer, 12 years ago

Component: undeterminedavcodec
Reproduced by developer: set
Resolution: fixed
Status: openclosed
Note: See TracTickets for help on using tickets.