OSDN Git Service

Add missing check on the existence of avcodec_opts[AVMEDIA_TYPE_X],
authorStefano Sabatini <stefano.sabatini-lala@poste.it>
Mon, 22 Nov 2010 22:03:21 +0000 (22:03 +0000)
committerStefano Sabatini <stefano.sabatini-lala@poste.it>
Mon, 22 Nov 2010 22:03:21 +0000 (22:03 +0000)
fix crash in ffprobe.

Originally committed as revision 25799 to svn://svn.ffmpeg.org/ffmpeg/trunk

cmdutils.c

index 681ed42..b2e6ee0 100644 (file)
@@ -228,11 +228,11 @@ int opt_default(const char *opt, const char *arg){
     if(!o && sws_opts)
         ret = av_set_string3(sws_opts, opt, arg, 1, &o);
     if(!o){
-        if(opt[0] == 'a')
+        if (opt[0] == 'a' && avcodec_opts[AVMEDIA_TYPE_AUDIO])
             ret = av_set_string3(avcodec_opts[AVMEDIA_TYPE_AUDIO], opt+1, arg, 1, &o);
-        else if(opt[0] == 'v')
+        else if(opt[0] == 'v' && avcodec_opts[AVMEDIA_TYPE_VIDEO])
             ret = av_set_string3(avcodec_opts[AVMEDIA_TYPE_VIDEO], opt+1, arg, 1, &o);
-        else if(opt[0] == 's')
+        else if(opt[0] == 's' && avcodec_opts[AVMEDIA_TYPE_SUBTITLE])
             ret = av_set_string3(avcodec_opts[AVMEDIA_TYPE_SUBTITLE], opt+1, arg, 1, &o);
     }
     if (o && ret < 0) {