[FFmpeg-trac] #2598(FFmpeg:new): ffmpeg hangs when given any invalid option

FFmpeg trac at avcodec.org
Wed May 22 12:27:03 CEST 2013


#2598: ffmpeg hangs when given any invalid option
------------------------------------+----------------------------------
             Reporter:  191919      |                    Owner:
                 Type:  defect      |                   Status:  new
             Priority:  important   |                Component:  FFmpeg
              Version:  git-master  |               Resolution:
             Keywords:              |               Blocked By:
             Blocking:              |  Reproduced by developer:  0
Analyzed by developer:  0           |
------------------------------------+----------------------------------

Comment (by 191919):

 This is what I got by running OS X's sample utility. It looked like there
 was an infinite loop in the code to match the codec.

 {{{
 Sampling process 990 for 10 seconds with 1 millisecond of run time between
 samples
 Sampling completed, processing symbols...
 Sample analysis of process 990 written to file
 /tmp/ffmpeg_2013-05-22_182323_uh3s.sample.txt

 Analysis of sampling ffmpeg (pid 990) every 1 millisecond
 Process:         ffmpeg [990]
 Path:            /usr/local/bin/ffmpeg
 Load Address:    0x10cb5a000
 Identifier:      ffmpeg
 Version:         ??? (???)
 Code Type:       X86-64 (Native)
 Parent Process:  bash [987]

 Date/Time:       2013-05-22 18:23:23.995 +0800
 OS Version:      Mac OS X 10.8.3 (12D78)
 Report Version:  7

 Call graph:
     9166 Thread_48551   DispatchQueue_1: com.apple.main-thread  (serial)
       9137 start  (in libdyld.dylib) + 1  [0x7fff8900f7e1]
       + 9137 main  (in ffmpeg) + 191  [0x10cb6e91f]
       +   9137 ffmpeg_parse_options  (in ffmpeg) + 121  [0x10cb5dd69]
       +     9137 split_commandline  (in ffmpeg) + 1117  [0x10cb7309d]
       +       9137 opt_default  (in ffmpeg) + 317  [0x10cb7142d]
       +         8407 av_opt_find2  (in libavutil.52.dylib) + 295
 [0x10dc1f1b7]
       +         ! 2665 ???  (in libavformat.55.dylib)  load address
 0x10cc55000 + 0x86922  [0x10ccdb922]
       +         ! : 2665 av_iformat_next  (in libavformat.55.dylib) +
 23,16,...  [0x10cd18a17,0x10cd18a10,...]
       +         ! 2477 ???  (in libavformat.55.dylib)  load address
 0x10cc55000 + 0x8691a  [0x10ccdb91a]
       +         ! 737 ???  (in libavformat.55.dylib)  load address
 0x10cc55000 + 0x86910  [0x10ccdb910]
       +         ! 700 ???  (in libavformat.55.dylib)  load address
 0x10cc55000 + 0x86925  [0x10ccdb925]
       +         ! 627 ???  (in libavformat.55.dylib)  load address
 0x10cc55000 + 0x8693e  [0x10ccdb93e]
       +         ! : 627 av_oformat_next  (in libavformat.55.dylib) +
 23,16,...  [0x10cd18a37,0x10cd18a30,...]
       +         ! 575 ???  (in libavformat.55.dylib)  load address
 0x10cc55000 + 0x86936  [0x10ccdb936]
       +         ! 167 ???  (in libavformat.55.dylib)  load address
 0x10cc55000 + 0x86930  [0x10ccdb930]
       +         ! 91 ???  (in libavformat.55.dylib)  load address
 0x10cc55000 + 0x86991  [0x10ccdb991]
       +         ! : 91 av_oformat_next  (in libavformat.55.dylib) +
 23,0,...  [0x10cd18a37,0x10cd18a20,...]
       +         ! 71 ???  (in libavformat.55.dylib)  load address
 0x10cc55000 + 0x86922  [0x10ccdb922]
       +         ! 51 ???  (in libavformat.55.dylib)  load address
 0x10cc55000 + 0x8692a  [0x10ccdb92a]
       +         ! 47 ???  (in libavformat.55.dylib)  load address
 0x10cc55000 + 0x86970  [0x10ccdb970]
       +         ! 47 ???  (in libavformat.55.dylib)  load address
 0x10cc55000 + 0x86984  [0x10ccdb984]
       +         ! 29 ???  (in libavformat.55.dylib)  load address
 0x10cc55000 + 0x86973  [0x10ccdb973]
       +         ! 17 ???  (in libavformat.55.dylib)  load address
 0x10cc55000 + 0x86939  [0x10ccdb939]
       +         ! 17 ???  (in libavformat.55.dylib)  load address
 0x10cc55000 + 0x8698c  [0x10ccdb98c]
       +         ! 16 ???  (in libavformat.55.dylib)  load address
 0x10cc55000 + 0x8693e  [0x10ccdb93e]
       +         ! 14 ???  (in libavformat.55.dylib)  load address
 0x10cc55000 + 0x86980  [0x10ccdb980]
       +         ! 13 ???  (in libavformat.55.dylib)  load address
 0x10cc55000 + 0x86966  [0x10ccdb966]
       +         ! 8 ???  (in libavformat.55.dylib)  load address
 0x10cc55000 + 0x86987  [0x10ccdb987]
       +         ! 7 ???  (in libavformat.55.dylib)  load address
 0x10cc55000 + 0x86969  [0x10ccdb969]
       +         ! 6 ???  (in libavformat.55.dylib)  load address
 0x10cc55000 + 0x8692c  [0x10ccdb92c]
       +         ! 5 ???  (in libavformat.55.dylib)  load address
 0x10cc55000 + 0x868f0  [0x10ccdb8f0]
       +         ! 5 ???  (in libavformat.55.dylib)  load address
 0x10cc55000 + 0x8691d  [0x10ccdb91d]
       +         ! 4 ???  (in libavformat.55.dylib)  load address
 0x10cc55000 + 0x868f2  [0x10ccdb8f2]
       +         ! 3 ???  (in libavformat.55.dylib)  load address
 0x10cc55000 + 0x868fc  [0x10ccdb8fc]
       +         ! 3 ???  (in libavformat.55.dylib)  load address
 0x10cc55000 + 0x86998  [0x10ccdb998]
       +         ! 2 ???  (in libavformat.55.dylib)  load address
 0x10cc55000 + 0x868f3  [0x10ccdb8f3]
       +         ! 2 ???  (in libavformat.55.dylib)  load address
 0x10cc55000 + 0x868ff  [0x10ccdb8ff]
       +         ! 1 ???  (in libavformat.55.dylib)  load address
 0x10cc55000 + 0x86991  [0x10ccdb991]
       +         690 av_opt_find2  (in libavutil.52.dylib) + 338
 [0x10dc1f1e2]
       +         ! 440 av_opt_find2  (in libavutil.52.dylib) + 146
 [0x10dc1f122]
       +         ! : 440 strcmp  (in libsystem_c.dylib) + 150,156,...
 [0x7fff828e73d6,0x7fff828e73dc,...]
       +         ! 250 av_opt_find2  (in libavutil.52.dylib) + 138,107,...
 [0x10dc1f11a,0x10dc1f0fb,...]
       +         40 av_opt_find2  (in libavutil.52.dylib) + 338,300,...
 [0x10dc1f1e2,0x10dc1f1bc,...]
       10 ???  (in libavformat.55.dylib)  load address 0x10cc55000 +
 0x8699d  [0x10ccdb99d]
       8 ???  (in <unknown binary>)  [0x7fff530a5dac]
       + 8 av_opt_find2  (in libavutil.52.dylib) + 516  [0x10dc1f294]
       4 ???  (in <unknown binary>)  [0xc1e0000000000000]
       + 4 ???  (in libavformat.55.dylib)  load address 0x10cc55000 +
 0x8699c  [0x10ccdb99c]
       3 ff_wmv2_inter_table  (in libavcodec.55.dylib) + 20768
 [0x10d4bd060]
       + 2 ff_matroska_video_stereo_plane  (in libavformat.55.dylib) + 8160
 [0x10cd8afa0]
       + ! 2 av_opt_find2  (in libavutil.52.dylib) + 515  [0x10dc1f293]
       + 1 ff_matroska_video_stereo_plane  (in libavformat.55.dylib) + 8064
 [0x10cd8af40]
       +   1 av_opt_find2  (in libavutil.52.dylib) + 515  [0x10dc1f293]
       2 DYLD-STUB$$strcmp  (in libavutil.52.dylib) + 0  [0x10dc2946c]
       1 ???  (in <unknown binary>)  [0x6e696c3d4d524554]
       + 1 0x0
       +   1 av_opt_find2  (in libavutil.52.dylib) + 524  [0x10dc1f29c]
       1 options  (in ffmpeg) + 5520  [0x10cb7efb0]
         1 av_opt_find2  (in libavutil.52.dylib) + 520  [0x10dc1f298]

 Total number in stack (recursive counted multiple, when >=5):
         7       av_opt_find2  (in libavutil.52.dylib) + 0  [0x10dc1f090]

 Sort by top of stack, same collapsed (when >= 5):
         av_iformat_next  (in libavformat.55.dylib)        2665
         ???  (in libavformat.55.dylib)  load address 0x10cc55000 + 0x8691a
 [0x10ccdb91a] [STACK TOP]        2477
         ???  (in libavformat.55.dylib)  load address 0x10cc55000 + 0x86910
 [0x10ccdb910] [STACK TOP]        737
         av_oformat_next  (in libavformat.55.dylib)        718
         ???  (in libavformat.55.dylib)  load address 0x10cc55000 + 0x86925
 [0x10ccdb925] [STACK TOP]        700
         ???  (in libavformat.55.dylib)  load address 0x10cc55000 + 0x86936
 [0x10ccdb936] [STACK TOP]        575
         strcmp  (in libsystem_c.dylib)        440
         av_opt_find2  (in libavutil.52.dylib)        303
         ???  (in libavformat.55.dylib)  load address 0x10cc55000 + 0x86930
 [0x10ccdb930] [STACK TOP]        167
         ???  (in libavformat.55.dylib)  load address 0x10cc55000 + 0x86922
 [0x10ccdb922] [STACK TOP]        71
         ???  (in libavformat.55.dylib)  load address 0x10cc55000 + 0x8692a
 [0x10ccdb92a] [STACK TOP]        51
         ???  (in libavformat.55.dylib)  load address 0x10cc55000 + 0x86970
 [0x10ccdb970] [STACK TOP]        47
         ???  (in libavformat.55.dylib)  load address 0x10cc55000 + 0x86984
 [0x10ccdb984] [STACK TOP]        47
         ???  (in libavformat.55.dylib)  load address 0x10cc55000 + 0x86973
 [0x10ccdb973] [STACK TOP]        29
         ???  (in libavformat.55.dylib)  load address 0x10cc55000 + 0x86939
 [0x10ccdb939] [STACK TOP]        17
         ???  (in libavformat.55.dylib)  load address 0x10cc55000 + 0x8698c
 [0x10ccdb98c] [STACK TOP]        17
         ???  (in libavformat.55.dylib)  load address 0x10cc55000 + 0x8693e
 [0x10ccdb93e] [STACK TOP]        16
         ???  (in libavformat.55.dylib)  load address 0x10cc55000 + 0x86980
 [0x10ccdb980] [STACK TOP]        14
         ???  (in libavformat.55.dylib)  load address 0x10cc55000 + 0x86966
 [0x10ccdb966] [STACK TOP]        13
         ???  (in libavformat.55.dylib)  load address 0x10cc55000 + 0x8699d
 [0x10ccdb99d] [STACK TOP]        10
         ???  (in libavformat.55.dylib)  load address 0x10cc55000 + 0x86987
 [0x10ccdb987] [STACK TOP]        8
         ???  (in libavformat.55.dylib)  load address 0x10cc55000 + 0x86969
 [0x10ccdb969] [STACK TOP]        7
         ???  (in libavformat.55.dylib)  load address 0x10cc55000 + 0x8692c
 [0x10ccdb92c] [STACK TOP]        6
         ???  (in libavformat.55.dylib)  load address 0x10cc55000 + 0x868f0
 [0x10ccdb8f0] [STACK TOP]        5
         ???  (in libavformat.55.dylib)  load address 0x10cc55000 + 0x8691d
 [0x10ccdb91d] [STACK TOP]        5

 Binary Images:
        0x10cb5a000 -        0x10cb7cff7 +ffmpeg (??? - ???)
 <DBBB05C8-5E58-3ED1-99E7-1C2DA00FB181> /usr/local/bin/ffmpeg
        0x10cb8d000 -        0x10cb8efff +libavdevice.55.dylib (55.1.100 -
 compatibility 55.0.0) <A94B6D0F-BDA4-3F5A-BB6D-71A7187BA9A8>
 /usr/local/lib/libavdevice.55.dylib
        0x10cb93000 -        0x10cc1ffff +libavfilter.3.dylib (3.68.103 -
 compatibility 3.0.0) <6C3231B2-7E93-3201-86A7-BA3CF32030A1>
 /usr/local/lib/libavfilter.3.dylib
        0x10cc55000 -        0x10cd76fef +libavformat.55.dylib (55.7.100 -
 compatibility 55.0.0) <31272A46-57D1-37C6-A354-C40499879C4F>
 /usr/local/lib/libavformat.55.dylib
        0x10cda8000 -        0x10d48efb7 +libavcodec.55.dylib (55.10.101 -
 compatibility 55.0.0) <6B869072-46C5-36F8-9F57-5C2A367AFDDE>
 /usr/local/lib/libavcodec.55.dylib
        0x10db66000 -        0x10db81ff7 +libpostproc.52.dylib (52.3.100 -
 compatibility 52.0.0) <BA31D316-F32A-35FE-BECA-06D2C078E4BF>
 /usr/local/lib/libpostproc.52.dylib
        0x10db84000 -        0x10db96fef +libswresample.0.dylib (0.17.102 -
 compatibility 0.0.0) <74AADEC7-1EF2-30C0-94FD-99A015F4867C>
 /usr/local/lib/libswresample.0.dylib
        0x10dba2000 -        0x10dbfffe7 +libswscale.2.dylib (2.3.100 -
 compatibility 2.0.0) <0E61E12F-A8EA-3D58-9912-10CB6AFBF477>
 /usr/local/lib/libswscale.2.dylib
        0x10dc10000 -        0x10dc34fef +libavutil.52.dylib (52.33.100 -
 compatibility 52.0.0) <B2F0AB11-03D2-348D-95DB-F02ADEDA37CD>
 /usr/local/lib/libavutil.52.dylib
        0x10dc4b000 -        0x10dc8dfe7 +libopus.0.dylib (4.0.0 -
 compatibility 4.0.0) <36134287-8103-3347-B32C-7333AC4CF4E1>
 /usr/local/lib/libopus.0.dylib
        0x10dca1000 -        0x10dcdffef +libmp3lame.0.dylib (??? - ???)
 <42C48FDB-DC63-3BE4-AEEC-069F39DB10D9> /usr/local/lib/libmp3lame.0.dylib
        0x10dd21000 -        0x10dd30fff +libfaac.0.dylib (??? - ???)
 <0EF7CFD3-ABBD-3A52-AB44-5146169089CC> /usr/local/lib/libfaac.0.dylib
        0x10dd3d000 -        0x10dd6aff7 +libaacplus.2.dylib (3.2.0 -
 compatibility 3.0.0) <11E156BE-D427-3052-A248-E428DCF95242>
 /usr/local/lib/libaacplus.2.dylib
     0x7fff6c75a000 -     0x7fff6c78e93f  dyld (210.2 - ???)
 <A40597AA-5529-3337-8C09-D8A014EB1578> /usr/lib/dyld
     0x7fff8191b000 -     0x7fff81930ff7  libdispatch.dylib (228.23.0 -
 compatibility 1.0.0) <D26996BF-FC57-39EB-8829-F63585561E09>
 /usr/lib/system/libdispatch.dylib
     0x7fff81931000 -     0x7fff81943ff7  libz.1.dylib (1.2.5 -
 compatibility 1.0.0) <2A1551E8-A272-3DE5-B692-955974FE1416>
 /usr/lib/libz.1.dylib
     0x7fff81963000 -     0x7fff819afff7  libauto.dylib (??? - ???)
 <73CDC482-16E3-3FC7-9BB4-FBA2DA44DBC2> /usr/lib/libauto.dylib
     0x7fff824de000 -     0x7fff824e3fff  libcache.dylib (57.0.0 -
 compatibility 1.0.0) <65187C6E-3FBF-3EB8-A1AA-389445E2984D>
 /usr/lib/system/libcache.dylib
     0x7fff82860000 -     0x7fff8286eff7  libsystem_network.dylib (??? -
 ???) <0D99F24E-56FE-380F-B81B-4A4C630EE587>
 /usr/lib/system/libsystem_network.dylib
     0x7fff8286f000 -     0x7fff82875fff  libmacho.dylib (829.0.0 -
 compatibility 1.0.0) <BF332AD9-E89F-387E-92A4-6E1AB74BD4D9>
 /usr/lib/system/libmacho.dylib
     0x7fff828e5000 -     0x7fff829b1ff7  libsystem_c.dylib (825.26.0 -
 compatibility 1.0.0) <4C9EB006-FE1F-3F8F-8074-DFD94CF2CE7B>
 /usr/lib/system/libsystem_c.dylib
     0x7fff829ff000 -     0x7fff82af4fff  libiconv.2.dylib (7.0.0 -
 compatibility 7.0.0) <FEE8B996-EB44-37FA-B96E-D379664DEFE1>
 /usr/lib/libiconv.2.dylib
     0x7fff82ea0000 -     0x7fff82f08ff7  libc++.1.dylib (65.1.0 -
 compatibility 1.0.0) <20E31B90-19B9-3C2A-A9EB-474E08F9FE05>
 /usr/lib/libc++.1.dylib
     0x7fff82f60000 -     0x7fff82f68fff  liblaunch.dylib (442.26.2 -
 compatibility 1.0.0) <2F71CAF8-6524-329E-AC56-C506658B4C0C>
 /usr/lib/system/liblaunch.dylib
     0x7fff846fb000 -     0x7fff846fdff7  libunc.dylib (25.0.0 -
 compatibility 1.0.0) <92805328-CD36-34FF-9436-571AB0485072>
 /usr/lib/system/libunc.dylib
     0x7fff84704000 -     0x7fff84705fff  libsystem_blocks.dylib (59.0.0 -
 compatibility 1.0.0) <D92DCBC3-541C-37BD-AADE-ACC75A0C59C8>
 /usr/lib/system/libsystem_blocks.dylib
     0x7fff857ed000 -     0x7fff8581bff7  libsystem_m.dylib (??? - ???)
 <B434BE5C-25AB-3EBD-BAA7-5304B34E3441> /usr/lib/system/libsystem_m.dylib
     0x7fff86862000 -     0x7fff8686dfff  libsystem_notify.dylib (98.5.0 -
 compatibility 1.0.0) <C49275CC-835A-3207-AFBA-8C01374927B6>
 /usr/lib/system/libsystem_notify.dylib
     0x7fff87b78000 -     0x7fff87b79ff7  libSystem.B.dylib (169.3.0 -
 compatibility 1.0.0) <365477AB-D641-389D-B8F4-A1FAE9657EEE>
 /usr/lib/libSystem.B.dylib
     0x7fff88ffd000 -     0x7fff88ffdfff  libkeymgr.dylib (25.0.0 -
 compatibility 1.0.0) <CC9E3394-BE16-397F-926B-E579B60EE429>
 /usr/lib/system/libkeymgr.dylib
     0x7fff88ffe000 -     0x7fff8900cfff  libcommonCrypto.dylib (50000.0.0
 - compatibility 1.0.0) <BAAFE0C9-BB86-3CA7-88C0-E3CBA98DA06F>
 /usr/lib/system/libcommonCrypto.dylib
     0x7fff8900d000 -     0x7fff89010ff7  libdyld.dylib (210.2.3 -
 compatibility 1.0.0) <F59367C9-C110-382B-A695-9035A6DD387E>
 /usr/lib/system/libdyld.dylib
     0x7fff89957000 -     0x7fff8995fff7  libsystem_dnssd.dylib (??? - ???)
 <616FC901-151E-38BF-B2C4-24A351C5FAAD>
 /usr/lib/system/libsystem_dnssd.dylib
     0x7fff89962000 -     0x7fff89963ff7  libsystem_sandbox.dylib (??? -
 ???) <6838A6FD-8626-3356-BB4F-BB4787216207>
 /usr/lib/system/libsystem_sandbox.dylib
     0x7fff8a568000 -     0x7fff8a583ff7  libsystem_kernel.dylib
 (2050.22.13 - compatibility 1.0.0) <5A961E2A-CFB8-362B-BC43-122704AEB047>
 /usr/lib/system/libsystem_kernel.dylib
     0x7fff8a87f000 -     0x7fff8a881fff  libquarantine.dylib (52.0.0 -
 compatibility 1.0.0) <4BE2E642-A14F-340A-B482-5BD2AEFD9C24>
 /usr/lib/system/libquarantine.dylib
     0x7fff8a88c000 -     0x7fff8a892ff7  libunwind.dylib (35.1.0 -
 compatibility 1.0.0) <21703D36-2DAB-3D8B-8442-EAAB23C060D3>
 /usr/lib/system/libunwind.dylib
     0x7fff8ac7e000 -     0x7fff8accdff7  libcorecrypto.dylib (??? - ???)
 <CE0C29A3-C420-339B-ADAA-52F4683233CC> /usr/lib/system/libcorecrypto.dylib
     0x7fff8b775000 -     0x7fff8b77afff  libcompiler_rt.dylib (30.0.0 -
 compatibility 1.0.0) <08F8731D-5961-39F1-AD00-4590321D24A9>
 /usr/lib/system/libcompiler_rt.dylib
     0x7fff8b942000 -     0x7fff8b94ffff  libbz2.1.0.dylib (1.0.5 -
 compatibility 1.0.0) <CE9785E8-B535-3504-B392-82F0064D9AF2>
 /usr/lib/libbz2.1.0.dylib
     0x7fff8bd75000 -     0x7fff8bd9aff7  libc++abi.dylib (26.0.0 -
 compatibility 1.0.0) <D86169F3-9F31-377A-9AF3-DB17142052E4>
 /usr/lib/libc++abi.dylib
     0x7fff8bd9b000 -     0x7fff8bd9cff7  libdnsinfo.dylib (453.19.0 -
 compatibility 1.0.0) <14202FFB-C3CA-3FCC-94B0-14611BF8692D>
 /usr/lib/system/libdnsinfo.dylib
     0x7fff8c195000 -     0x7fff8c196ff7  libremovefile.dylib (23.2.0 -
 compatibility 1.0.0) <6763BC8E-18B8-3AD9-8FFA-B43713A7264F>
 /usr/lib/system/libremovefile.dylib
     0x7fff8c5a1000 -     0x7fff8c5a8fff  libcopyfile.dylib (89.0.0 -
 compatibility 1.0.0) <876573D0-E907-3566-A108-577EAD1B6182>
 /usr/lib/system/libcopyfile.dylib
     0x7fff8c5be000 -     0x7fff8c5e0ff7  libxpc.dylib (140.42.0 -
 compatibility 1.0.0) <BBE558BD-5E55-35E4-89ED-1AA6B056D05A>
 /usr/lib/system/libxpc.dylib
     0x7fff8c619000 -     0x7fff8c73192f  libobjc.A.dylib (228.0.0 -
 compatibility 1.0.0) <90D31928-F48D-3E37-874F-220A51FD9E37>
 /usr/lib/libobjc.A.dylib
     0x7fff8d004000 -     0x7fff8d03afff  libsystem_info.dylib (??? - ???)
 <4FFCA242-7F04-365F-87A6-D4EFB89503C1>
 /usr/lib/system/libsystem_info.dylib
 }}}

-- 
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/2598#comment:4>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list