[FFmpeg-trac] #4663(avcodec:open): jpeg2000: infinite loop with rpcl and 30 levels

FFmpeg trac at avcodec.org
Wed Jun 24 08:57:31 CEST 2015


#4663: jpeg2000: infinite loop with rpcl and 30 levels
-------------------------------------+-------------------------------------
             Reporter:  ami_stuff    |                    Owner:
                 Type:  defect       |                   Status:  open
             Priority:  important    |                Component:  avcodec
              Version:  git-master   |               Resolution:
             Keywords:  j2k          |               Blocked By:
  deadlock regression                |  Reproduced by developer:  1
             Blocking:               |
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
Changes (by cehoyos):

 * status:  new => open
 * reproduced:  0 => 1
 * component:  undetermined => avcodec
 * priority:  normal => important
 * version:  unspecified => git-master
 * keywords:   => j2k deadlock regression


Comment:

 {{{
 (gdb) r -i levels30.jp2
 Starting program: ffmpeg_g -i levels30.jp2
 [Thread debugging using libthread_db enabled]
 Using host libthread_db library "/lib64/libthread_db.so.1".
 ffmpeg version N-73119-g041aa80 Copyright (c) 2000-2015 the FFmpeg
 developers
   built with gcc 4.7 (SUSE Linux)
   configuration: --enable-gpl
   libavutil      54. 27.100 / 54. 27.100
   libavcodec     56. 44.101 / 56. 44.101
   libavformat    56. 38.101 / 56. 38.101
   libavdevice    56.  4.100 / 56.  4.100
   libavfilter     5. 17.100 /  5. 17.100
   libswscale      3.  1.101 /  3.  1.101
   libswresample   1.  2.100 /  1.  2.100
   libpostproc    53.  3.100 / 53.  3.100
 [jpeg2000 @ 0x1bb12c0] Progression order RPCL
 [jpeg2000 @ 0x1bb12c0] prc -1 0 outside limits 1 1
     Last message repeated 185858 times
 Program received signal SIGINT, Interrupt.
 0x00007ffff524d230 in __write_nocancel () from /lib64/libc.so.6
 (gdb) bt
 #0  0x00007ffff524d230 in __write_nocancel () from /lib64/libc.so.6
 #1  0x00007ffff51e9123 in _IO_new_file_write () from /lib64/libc.so.6
 #2  0x00007ffff51e9002 in new_do_write () from /lib64/libc.so.6
 #3  0x00007ffff51e9c1e in _IO_new_file_xsputn () from /lib64/libc.so.6
 #4  0x00007ffff51bf034 in buffered_vfprintf () from /lib64/libc.so.6
 #5  0x00007ffff51b98ae in vfprintf () from /lib64/libc.so.6
 #6  0x00007ffff51c3ec7 in fprintf () from /lib64/libc.so.6
 #7  0x0000000000f3906e in av_log_default_callback (ptr=<optimized out>,
 level=24, fmt=<optimized out>, vl=<optimized out>) at libavutil/log.c:327
 #8  0x0000000000f39371 in av_vlog (vl=0x7fffffffced8, fmt=0x1084370 "prc
 %d %d outside limits %d %d\n", level=<optimized out>, avcl=<optimized
 out>) at libavutil/log.c:374
 #9  av_log (avcl=<optimized out>, level=<optimized out>, level at entry=24,
 fmt=fmt at entry=0x1084370 "prc %d %d outside limits %d %d\n") at
 libavutil/log.c:366
 #10 0x0000000000944fe6 in jpeg2000_decode_packets (tile=0x1bb2840,
 s=0x1bb1a60) at libavcodec/jpeg2000dec.c:1121
 #11 jpeg2000_read_bitstream_packets (s=0xffffffffffffffc6) at
 libavcodec/jpeg2000dec.c:1800
 #12 jpeg2000_decode_frame (avctx=<optimized out>, data=0x1bb2560,
 got_frame=0x7fffffffd28c, avpkt=<optimized out>) at
 libavcodec/jpeg2000dec.c:1966
 #13 0x0000000000b07938 in avcodec_decode_video2 (avctx=0x1bb12c0,
 picture=0x1bb2560, got_picture_ptr=got_picture_ptr at entry=0x7fffffffd28c,
 avpkt=avpkt at entry=0x7fffffffd2c0) at libavcodec/utils.c:2388
 #14 0x0000000000656fd1 in try_decode_frame (s=s at entry=0x1bb03e0,
 st=st at entry=0x1bb0ec0, avpkt=avpkt at entry=0x1baf640, options=0x1bafa60) at
 libavformat/utils.c:2672
 #15 0x000000000065fc59 in avformat_find_stream_info (ic=0x1bb03e0,
 options=0x1bafa60) at libavformat/utils.c:3315
 #16 0x0000000000480a11 in open_input_file (o=o at entry=0x7fffffffd700,
 filename=<optimized out>) at ffmpeg_opt.c:917
 #17 0x000000000047a924 in open_files (inout=inout at entry=0xfe0dbf "input",
 open_file=open_file at entry=0x480460 <open_input_file>, l=<optimized out>,
 l=<optimized out>) at ffmpeg_opt.c:2816
 #18 0x0000000000482289 in ffmpeg_parse_options (argc=argc at entry=3,
 argv=argv at entry=0x7fffffffdd48) at ffmpeg_opt.c:2853
 #19 0x0000000000473123 in main (argc=3, argv=0x7fffffffdd48) at
 ffmpeg.c:4071
 }}}

--
Ticket URL: <https://trac.ffmpeg.org/ticket/4663#comment:1>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list