OSDN Git Service

Make parse_options() explicitely handle the case where an opt_func2
authorStefano Sabatini <stefano.sabatini-lala@poste.it>
Sun, 7 Feb 2010 15:46:18 +0000 (15:46 +0000)
committerStefano Sabatini <stefano.sabatini-lala@poste.it>
Sun, 7 Feb 2010 15:46:18 +0000 (15:46 +0000)
function returns a negative value, rather than erroneously trigger the
code which manages the case of unknown option.

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

cmdutils.c

index 90dfccf..450ae32 100644 (file)
@@ -170,8 +170,10 @@ unknown_opt:
             } else if (po->flags & OPT_FLOAT) {
                 *po->u.float_arg = parse_number_or_die(opt, arg, OPT_FLOAT, -1.0/0.0, 1.0/0.0);
             } else if (po->flags & OPT_FUNC2) {
-                if(po->u.func2_arg(opt, arg)<0)
-                    goto unknown_opt;
+                if (po->u.func2_arg(opt, arg) < 0) {
+                    fprintf(stderr, "%s: invalid value '%s' for option '%s'\n", argv[0], arg, opt);
+                    exit(1);
+                }
             } else {
                 po->u.func_arg(arg);
             }